通过 adb 解压并重新安装后 Android 应用程序崩溃

问题描述 投票:0回答:1

我试图找到这种类型的问题,但没有解决。 我想为客户做一些应用程序研究。

所以我解释一下这个问题:

所以我想提取应用程序(使用 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 installation crash apk adb
1个回答
0
投票

生成的文件清楚地表明该应用程序最初是作为 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 
© www.soinside.com 2019 - 2024. All rights reserved.