android - 为什么我的 android 应用程序无法运行,当我将它构建为 android 应用程序包时?

标签 android android-app-bundle

我想开始将我的应用发布为 AAB。我成功构建了我的 build.aab 文件并决定尝试在我的手机上安装应用程序。 我用下一种方式

1) 使用命令从 aab 文件构建 APK 集:

java -jar bundletool.jar  build-apks 
--bundle=*path to aab* 
--output=*path to apks*
--connected-device 
--ks=*android debug keystore path*
--ks-key-alias=androiddebugkey 
--adb=*path to adb*

2) 使用下一个命令安装:

java -jar bundletool.jar install-apks 
--apks=*path to apks*
--adb=*path to adb*

应用程序已成功安装,但是当我启动它时,我只看到白屏。它在所有设备上重现。

当我使用 --universal 而不是 --connected-device 时一切正常。

我还尝试发布我的应用程序的测试版本。它已成功下载并安装,但在启动时崩溃,没有任何错误。在 LogCat 中,我检测到下一个可疑日志:

[12-09 16:56:26.324 754:754 E/ANDR-IOP]
IOP HAL: Received pkg_name = com.sampleApp.android.vsm.dji pid = -1

[12-09 16:56:26.895 8110:8110 I/zygote64]
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.View$OnUnhandledKeyEventListener" on path: 
DexPathList[[zip file "/system/framework/com.android.future.usb.accessory.jar", zip file 
"/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/base.apk", zip file 
"/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/split_config.arm64_v8a.apk", zip file 
"/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/split_config.ru.apk", zip file 
"/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/split_config.xxhdpi.apk", dex file "InMemoryDexFile[cookie=[0, 
491834627968]]", dex file "InMemoryDexFile[cookie=[0, 
491834628128]]"],nativeLibraryDirectories=[/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/lib/arm64, 
/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/base.apk!/lib/arm64-v8a, 
/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/split_config.arm64_v8a.apk!/lib/arm64-v8a, 
/data/app/com.sampleApp.android.vsm.dji-ToIZw7tZAA9jyANJ4k4SQA==/sp

最佳答案

事实证明,我使用的一些库不支持 AAB 构建。

确保您使用的所有依赖项都支持 AAB 构建,以免重复我的错误并节省大量时间。

关于android - 为什么我的 android 应用程序无法运行,当我将它构建为 android 应用程序包时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59211752/

相关文章:

build - 如何在 Flutter 中修复 "Gradle build failed to produce an Android bundle package."

android - 从测试内部下载的相同应用程序版本与从内部应用程序共享下载的相同应用程序版本之间的应用程序大小差异

Android Google 登录在 App Bundle 上失败

android - 当我们可以对静态变量做同样的事情时,为什么要使用 getTag/setTag

Android - 微调器 View 超出 ScrollView 尺寸

android - 如何将 RelativeLayout 的宽度设置为与兄弟 View 相同?

android - 使用 aapt 构建新的 Android App Bundle 失败

android - Proguard收缩导致空指针异常

android - Phonegap - 下拉菜单不可点击(Android 和 iOS)

android - Google 内部应用共享 - 意外错误