我试图找到这种类型的问题,但没有解决。 我想为客户做一些应用程序研究。
所以我解释一下这个问题:
所以我想提取应用程序(使用 adb 似乎是更好的方法),使用 apktool 在 AndroidManifest 中添加一些行,然后重新打包(并签名)它。这样做之后,我看到应用程序在对其进行一些操作后崩溃了。 因此,作为一个控制点,为了确保我的操作没有破坏它,我尝试使用 adb 提取 apk,然后重新安装它(从设备和使用 adb)而不做任何修改,我看到问题是一样,所以我的修改不是问题。
我是通过找到它并提取它来做到的:
adb shell pm list packages
找到APK路径
adb shell pm path com.my.app
结果:
package:/data/app/~~GdvAunQQGjig1h76mYro8w==/com.my.app-4jvBJLX-LuaGmXzifBYbgg==/base.apk
package:/data/app/~~GdvAunQQGjig1h76mYro8w==/com.my.app-4jvBJLX-LuaGmXzifBYbgg==/split_config.arm64_v8a.apk
package:/data/app/~~GdvAunQQGjig1h76mYro8w==/com.my.app-4jvBJLX-LuaGmXzifBYbgg==/split_config.fr.apk
package:/data/app/~~GdvAunQQGjig1h76mYro8w==/com.my.app-4jvBJLX-LuaGmXzifBYbgg==/split_config.xxhdpi.apk
adb pull /data/app/~~GdvAunQQGjig1h76mYro8w==/com.my.app-4jvBJLX-LuaGmXzifBYbgg==/base.apk C:\mypathout\base.apk
使用此命令重新安装:
adb install C:\mypathout\base.apk
这个结果是成功
这种方法知道做这种问题吗。
我找到了这个链接:Android 应用程序在通过 adb 安装后崩溃 关于类似的问题,但他提供的细节较少。
谢谢你的帮助:)
编辑:崩溃日志已被检索并在此处https://pastebin.com/peJTGb9N
生成的文件清楚地表明该应用程序最初是作为 android 应用程序包安装的,并且安装分为几个文件。 来自 logcat 的错误: 引起:java.lang.NoClassDefFoundError:com.my.app.utilsjni.NativeUtils 意味着应用程序找不到它用 C++ 编写并编译为 .so 的本机部分。它可能在这里:split_config.arm64_v8a.apk 我建议寻找一些允许合并这些 .apk 文件或将它们全部安装在一起的工具。
base.apk - main code part
split_config.arm64_v8a.apk main native code part, specific for arm64v8 cpus
split_config.fr.apk texts for french translation
split_config.xxhdpi.apk graphic resources for hi res screens