我在市场上有一个 android 应用程序,我的一个用户报告了一个其他人没有遇到过的问题(至少据我所知)。他们告诉我他们做了什么,他们使用了什么设置以及他们正在使用的 android 版本,所以我试图尽可能多地复制它。
我在更新之前安装了原始应用程序(当一切正常时),并以与用户所说的相同的方式进行设置。然后我进入 shell 并/data/data/com.mycompany.myapp/
检查databases
andshared_prefs
文件夹以检查所有权,两个文件都设置为,用户和组都设置为app_36
. 然后,我将所有内容拉到我的开发 PC 上,这样我就有了数据库和 prefs 文件。
然后我卸载了原始版本并使用adb install
com.mycompany.myapp I then upload the databases and prefs file using
adb push`` 安装了新版本的应用程序,然后使用 adb shell 查看了文件的权限,可以看到它们现在归 root 所有,所以应用程序无法访问那些文件。然后我尝试从 adb shell 执行以下操作:
adb shell
cd com.mycompany.myapp/shared_prefs
chown app_36:app_36 prefs.xml
这将在普通 linux 中工作,将用户和组更改为 app_36,但它说没有用户 app_36:app_36。但是,如果我执行 chown app_36 prefs.xml 它会更改所有者,但我无法更改组。
要更改我使用 chgrp app_36 prefs.xml 的组,但它会说 chgrp not found。
如何更改用户和组,以便我可以复制文件并复制我的用户遇到的问题。
感谢您的任何帮助,您可以提供。