我有一个PowerShell脚本,用于在测试时从我的Android手机中取出数据库。
$appName = 'mobi.futurestate.timetracker'
$dbName = 'database.sqlite3'
adb shell "run-as $appName chmod 644 /data/data/$appName/files/$dbName"
adb pull "/data/data/$appName/files/$dbName" "./$dbName"
Invoke-Item ".\$dbName"
但是当我运行它时,我收到了错误
remote object' /data/data/mobi.futurestate.timetracker/files/database.sqlite3'不存在
然而,当我使用Shell并导航到该位置时,我可以清楚地看到它。
我错过了什么吗?我需要做些什么才能把它拉下来?
答案 0 :(得分:0)
如果您使用的设备带有加密硬盘(我的是带有强制加密的Nexus 6),则adb pull命令将失败。
答案 1 :(得分:0)
通过run-as获取文件似乎存在权限问题。请尝试使用此方法复制文件。
adb shell "run-as $appName cat files/$dbName" > "./$dbName"