一加6手机,未获取root权限
因为应用是在子用户,adb shell pm path 命令也查不到安装包位置。
直接用了adb backup,备份导出只有1KB。
求帮忙,有偿
安卓adb backup备份应用数据失败
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
20条回答 默认 最新
关注 获得0.60元问题酬金 引自免费微信小程序:皆我百晓生
针对您在Android设备(一加6手机)上通过ADB备份特定应用数据时遇到的问题,我将为您提供详细的解决步骤和可能的原因分析。由于您提到该应用位于子用户环境中,导致常规ADB命令无法正确识别其安装包路径,这里我们需采取针对性措施来备份此类应用的数据。以下是具体操作指南:
原因分析:
- 子用户环境中的应用可能未对主用户可见,因此常规
adb shell pm path
命令无法查询到其安装包位置。 - 使用
adb backup
命令直接备份时仅得到1KB大小的文件,可能是由于未正确指定子用户环境下的应用包名,导致备份未能包含实际应用数据。
解决方案:
步骤1:获取子用户环境中的应用包名
由于常规的
pm path
命令无法获取子用户应用信息,我们需要通过其他途径确定应用包名。有以下两种方法可尝试:方法A:查看系统设置中的应用列表
进入一加6手机的系统设置,找到与子用户相关的设置项(通常在“用户”或“安全”等菜单下),切换到子用户账户。然后查看应用列表,找到目标应用,其详情页面通常会显示包名。
方法B:使用第三方应用管理器
在子用户环境中安装一个支持查看应用详细信息(包括包名)的第三方应用管理器(如Package Name Viewer等)。运行该应用,找到目标应用并记录其包名。
步骤2:为子用户环境启用ADB调试
确保子用户的ADB调试已开启。通常在子用户设置中找到“开发者选项”,开启“USB调试”。连接电脑后,允许电脑通过ADB访问此子用户。
步骤3:使用adb shell run-as命令切换到子用户
在电脑端打开命令行工具,执行以下命令切换到子用户环境(将
<package_name>
替换为实际应用包名,<sub_user_id>
替换为子用户的ID,可通过adb shell pm list users
命令查看):adb shell 'run-as <package_name> su -c "id -u <sub_user_id>"'
如果命令执行成功且返回子用户的ID,说明已成功切换到子用户环境。
步骤4:执行adb backup命令备份应用数据
在保持与子用户环境的连接状态下,执行以下命令备份目标应用数据(将
<package_name>
替换为实际应用包名):adb backup -noapk -shared -all -f <backup_file_name>.ab -pkg <package_name>
这将备份指定应用的所有数据(不含APK文件),包括其私有数据及共享数据。备份文件将保存为
<backup_file_name>.ab
。注意:
- 请确保手机已解锁,并允许通过USB进行ADB调试。
- 部分设备或ROM可能对子用户的ADB访问有所限制,如果上述步骤无法解决问题,可能需要寻找针对特定设备或系统的特殊解决方案。
按照以上步骤操作,应当能成功备份位于子用户环境中的Android应用数据。如果您在执行过程中遇到任何问题或疑问,欢迎随时提问。
解决 无用评论 打赏 举报 编辑记录- 子用户环境中的应用可能未对主用户可见,因此常规
悬赏问题
- ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
- ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
- ¥20 软件测试决策法疑问求解答
- ¥15 win11 23H2删除推荐的项目,支持注册表等
- ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
- ¥15 qt6.6.3 基于百度云的语音识别 不会改
- ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
- ¥15 神经网络怎么把隐含层变量融合到损失函数中?
- ¥15 lingo18勾选global solver求解使用的算法
- ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行