小编cra*_*ark的帖子

如何调试从 Play 商店安装的 APK(不删除保存的用户数据)

问题

我正在使用一个 Android 应用程序,其中用户数据被保存到由 SQLCipher 加密的数据库中。Android 密钥库用于存储密钥。发生了特定于设备的问题(可能与正在保存的数据有关)。我可能会接触到遇到此问题的设备,但是,据我所知,我可以从该设备中提取的信息非常有限。有什么可能的方法可以以某种方式将调试器附加到加载到设备上的当前 APK 上,或者以某种方式将其替换为可调试版本而不丢失用户数据?

该设备正在运行 android 6.0.1,我正在使用 Android Studio

我在调试发布版 APK 时发现的内容

当我连接装有从 PlayStore 下载的 APK 的 Android 平板电脑时,我能看到的唯一数据是使用 logcat (Android Studio) 的应用程序特定调试日志。当我尝试调试应用程序时,Android Studio 告诉我先卸载现有的 APK,然后才能加载可调试的 APK。但是,这将删除现有数据,这是我不希望发生的。

我试图解决我原来的问题的其他事情

尝试让特定用户向我发送他们有问题的数据库

这将不起作用,因为我无权访问私钥,因此即使我获得了文件,我也无法解密数据。

尝试让特定用户向我发送应用日志

这将不起作用,因为从 Android 4.1 开始,特定于应用程序的日志仅对那些特定应用程序是私有的(除非设备已植根,有问题的设备不是,并且植根它不是真正的选项)。这实际上导致了另一个我有轻微相关的问题。为什么我可以在 logcat 中看到特定于应用程序的日志,即使它们在通过 CatLog 等应用程序查看无根设备上的日志时不可见?

debugging android release apk android-studio

3
推荐指数
1
解决办法
5662
查看次数

标签 统计

android ×1

android-studio ×1

apk ×1

debugging ×1

release ×1