问题标签 [android-app-bundle]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用 Android App Bundle 时是否应该将 extractNativeLibs 设置为 false?
我通过 Android Studio 在新的 Android Q Beta 1 上安装我的应用程序时遇到问题。它看起来就像这个问题。
答案建议android:extractNativeLibs
在清单中进行设置,它确实解决了安装问题。有趣的是,如果它设置为true
or false
(无论是哪种情况)都没有关系,但我必须设置它。
由于领域是我的应用程序中包含的唯一本机代码,我想问我是否应该设置这个标志。
到目前为止,我并不需要它,但是this和this告诉我,将它设置为false
. 它甚至说:
在构建 AAB 时,它的 extractNativeLibs 标志默认设置为“false”。
有了这个集合,使用 APK 或 AAB应该没问题,但本机代码必须是 zipaligned。所以还有一个问题:
领域二进制文件是否正确压缩对齐?
或者一般来说:使用领域时有什么建议吗?
当这个标志一切正常时(我以前的 AAB 工作正常),这里唯一的问题似乎是 Android Q 在安装(调试)APK 时需要这个标志,对吧?
android - 尝试构建 Android 应用程序包时出现“使用保留文件或目录名称‘lib’”错误
我正在尝试构建应用程序包,但出现以下错误:
对于我从类似问题中看到的情况,这个问题通常是通过在项目结构中处理依赖项或文件来解决的,但在这种情况下,如果我没记错的话,它似乎指向应用程序架构中涉及的本机库。任何想法如何解决这个问题?
android - 如何从 Android App Bundle 生成的 Google Play 控制台安装 APK?
我目前使用发布格式 .aab 在 Google Play 控制台上上传我的应用更新。我的问题是我找不到如何下载和安装从 .aab 生成的正确 APK 的方法。
当我像许多人建议的那样从“管理版本”下载时,它会下载一个 .aab。当我下载特定于设备的 APK 时,它会给我三个 APK。(在我的下载案例中,base.apk、config.en.apk 和 config.xxhdpi.apk)。
基础 APK 可以安装但无法启动。其他 2 个 APK 甚至无法解析。我怀疑,这三个应该作为一个捆绑包安装,但我不知道该怎么做。
如何安装这三个 APK 或下载我可以轻松安装的单个 APK?
android - Android 在哪里存储动态模块 APK?
我正在开发一个带有动态模块的 android 应用程序。假设有一个基本模块(base
)和一个动态模块(feature
)。我使用 Android Studio (或bundle tool)安装了应用程序,base
并且feature
安装了 apks 并位于
我通过运行找到了这些地址
然后我将应用程序包上传到 Play Console 并从 Google Play 安装到我的手机上。接下来,我feature
在使用该应用程序时下载了该模块。但是,在我运行后adb shell pm path example.dynapp
它只显示base
apk 并且没有feature
apk 的迹象。顺便说一句,似乎feature
模块已安装,因为feature
模块的功能正常工作。
我的问题是 Google Play 将这些动态加载的模块(或 APK)保存在哪里。有没有办法使用adb
(例如adb pull
)访问它们。
android - Android App Bundles:解析包时出现问题(仅限动态功能模块)
我正在尝试实现 Android App Bundles,我需要它在 Play 商店之外工作。
- 我创建了一个包含按钮的活动的新项目
- 我通过File > New > New Module > Dynamic Feature Module 创建了一个新的 Dynamic Feature Module
现在我的Android项目结构如下:(省略无意义的文件)
我的build.gradle (app)
文件包含
我的build.gradle (dynamic_feature)
文件包含
出于测试目的,我要求我dynamic_feature
的
在一个OnClickListener
附加到我的按钮上MainActivity
。
使用Build > Build Bundle(s)/APK(s) > Build Bundle(s)一切都很好,我得到我app.aab
的文件并out.apks
使用bundletool
以下命令生成文件
之后,我提取base-master.apk
并dynamic_feature-master.apk
简单地将它们拖出out.apks
在 WinRar 中打开。
我安装base-master.apk
并且工作正常,除了当我单击按钮时,因为它显然会java.lang.ClassNotFoundException
因为找不到ModuleActivity
.
当我尝试安装时,dynamic_feature-master.apk
我收到一条消息There was a problem while parsing the package
,当此消息出现时,我在 logcat 中没有看到任何明显的错误。我不知道如何前进。
android - 从 google play-store - Android 安装后应用程序立即关闭
我们的应用程序在从 Play-store 安装后立即关闭,尽管相同的 Apk 在直接使用 Apk 文件安装时运行良好。
信息日志如下,
因此,为了调试,我们在更改包名称后在 play-store 上创建了一个应用程序,安装后它运行良好。
两个 Play-store 应用程序帐户之间的唯一区别是前者启用了应用程序签名,而后者工作正常但没有启用应用程序签名。
那么确切的问题是什么,我们没有在播放控制台上正确使用应用程序签名,还是我们配置不正确的任何其他设置或我们的代码有问题?请帮助..
android-app-bundle - 卸载后如何删除动态功能模块?
我的应用程序有 2 个功能:“基础”和“扩展”。
清单扩展功能:
使用 SplitInstallManager 下载功能-> startInstall
使用SplitInstallManager 卸载 -> deferredUninstall
使用SplitInstallManager -> getInstalledModules检查已安装的模块
扩展功能正在从 Play 商店成功加载并按预期工作。当此功能变得不必要时 - 将其卸载。
更多,SplitInstallManager 有回调:SuccessListener、FailureListener、CompleteListener。安装和卸载完全成功(没有错误)。
但是,在卸载扩展功能后(并在重新启动应用程序后)它会保持安装状态。
如何从应用程序中删除已卸载的功能(不需要删除未使用的代码和资源)?
android - 在基本模块中找不到动态功能模块中的 Android 提供程序
我在我的动态功能模块中使用了一些库。这些库正在向清单中添加一些提供程序。
例如在我的动态模块中的 build.gradle 文件中:
该库将以下标记添加到清单中:
问题是当我构建我的基本模块时,应用程序崩溃了,因为它找不到提供程序。我该如何解决这个问题?
正如这里所说:
您的应用程序基本模块的清单类似于任何其他应用程序模块的清单。请记住,当 Google Play 生成您应用的基础 APK 时,它会将所有模块的清单合并到基础 APK 的清单中。
但为什么只有供应商受到影响?活动是否被忽略?
这是我得到的堆栈跟踪: