gpt4 book ai didi

android adb shell script - 如何拉取所有共享首选项

转载 作者:太空宇宙 更新时间:2023-11-03 13:51:18 28 4
gpt4 key购买 nike

我需要在 Debug模式下运行一个脚本,将所有共享首选项拉到一个文件夹中。根据我的研究,我只能从调试版本中提取。我尝试从非 root 手机获取这样的共享首选项:

$adb shell
$adb run-as mypackagename

然后我能够遍历到/data/data/mypackagename/shared_prefs

但我希望能够将其放入脚本中。我只能从 adb shell 外部调用 adb pull。 我怎样才能在调试应用程序上从普通的非 root 设备中提取 shared_prefs 整个文件夹?一定有办法,因为 facebook setho 是怎么做到的

这个问题是关于检索 sharedPreferences 而不是数据库检索。

最佳答案

我创建了以下 shell 脚本

#!/bin/bash

pname=$1

if [ -z "${pname}" ]; then
echo "Please enter a package name"
exit 1
fi

adb shell "run-as $pname chmod 776 shared_prefs"
adb pull /data/data/$pname/shared_prefs ./${pname}_shared_prefs
adb shell "run-as $pname chmod 771 shared_prefs"

将其命名为 pullsharedprefs.sh(或任何你想要的)并从终端运行命令:

chmod +x pullsharedprefs.sh
./pullsharedprefs.sh some.package.name

shared_prefs 将被拉到当前工作目录并命名为 {package-name}_shared_prefs


使用 genymotion (Android 5.1.1) 测试

关于android adb shell script - 如何拉取所有共享首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34621367/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com