Android 高版本手机无法直接读取外置 sdcard 的文件,而且还需要动态申请读写权限,在做 demo 测试时不方便。将测试文件放入 /data/data/packagename 下则不需要申请存储权限,而且可以直接读写,方便测试、调试。
一种方式是通过 Android Studio 的 Device File Explorer 上传电脑上的文件,但需要打开工程找到测试 demo 对应的安装目录,再上上传,比较繁琐。所以期望使用 adb 命令直接传进去。
但直接 adb push 是没有权限将文件直接 push 到包名下的目录的,但可以通过 tmp 目录和 run-as 命令实现。
使用说明:
./adb_push.sh <输入文件路径> <拷贝后的文件名>文章来源:https://www.toymoban.com/news/detail-600899.html
./adb_push.sh ~/Desktop/test.json data.json
脚本如下,将脚本中的包名(com.alanwang4523.videodemo)改成你自己的就行。文章来源地址https://www.toymoban.com/news/detail-600899.html
#!/bin/sh
# 使用方法,拷贝后的文件名为可选参数,如果不带该参数则与源文件同名
# ./adb_push.sh <输入文件路径> <拷贝后的文件名>
path=$1
file=${path##*/}
dstFile=$file
# 拷贝并重命名
if [ $# -gt 1 ]; then
dstFile=$2
fi
adb push $path /data/local/tmp
adb shell run-as com.alanwang4523.videodemo cp /data/local/tmp/$file files/$dstFile
到了这里,关于adb 命令拷贝文件到安装包内置目录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!