问题标签 [dynamic-feature-module]

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.

0 投票
1 回答
491 浏览

android - 默认情况下未安装按需功能模块

我们有一个名为replay. 我们开始将此作为安装时模块:

当我们在本地安装应用程序时:

$ ./gradlew app:installDebug --info

我们看到安装了基本应用程序和动态模块:

但是,当我们更改为按需时:

安装不再安装动态 apk:

$ ./gradlew app:installDebug --info

在开发过程中,我们应该如何在本地执行此操作?我们必须使用bundletool来生成通用apk吗?我认为 Android 插件足够聪明,可以为我们完成所有这些工作。

0 投票
1 回答
129 浏览

android - 将动态功能模块限制为某些 BuiltTypes

我有一个有两种风格和 6 个 buildTypes 的应用程序。我正在开发一个动态功能模块,但我不希望它包含在发布包中。有没有办法使用 buildTypes 做到这一点?我已经尝试dynamicFeatures = ["mymodule"]在所需的 buildTypes 中添加它,但它仍然被添加到发布包中。我知道我可以on-demand在模块的清单中指定它,以防止它被添加到用户安装的 apk 中,但我更愿意将它放在一起发布包中。有没有办法做到这一点?

0 投票
0 回答
42 浏览

android - 在没有 Play Services 的设备上使用通用 apk 中的按需动态功能模块

我们的应用程序中有一个动态功能模块。我们将开始提供这个模块on-demand。所以我正在研究文档。我看到我必须SplitInstallManager在 Play 核心库中使用。

但是,我还需要为我们支持的非 Play-Services 手机构建一个通用 apk(自动捆绑动态功能模块)。那么当我SplitInstallManager在这种情况下打电话时会发生什么?由于手机没有播放服务,电话会SplitInstallManager正常工作吗?是否会SplitInstallManager知道这是一个通用 apk 并且已经包含动态模块?我可以假设StateUpdatedListener.onStateUpdate()将自动通过SplitInstallSessionStatus.INSTALLED更新吗?

0 投票
1 回答
510 浏览

android - 使用内部应用程序共享来测试按需动态功能模块不起作用

我正在尝试使用内部应用程序共享来测试我是否可以正确请求和下载按需动态功能模块。

当我尝试这个时,我可以看到它首先开始正确下载新功能,但它永远不会安装。我看到了这些com.example is installed but certificate mismatch日志。这会导致问题吗?我知道内部应用程序共享上传是“使用内部应用程序共享密钥自动重新签名的,该密钥是由 Google 为您的应用程序自动创建的”。来源。内部应用共享是否可能未正确签署按需 apk?

下载有问题的代码:

你可以在这里查看我的完整日志。

0 投票
0 回答
86 浏览

android-studio - 将 Unity 游戏导入为动态功能

有什么方法可以让你的统一项目在 android studio 中导入为动态功能模块?因此用户将能够在运行时安装统一游戏。

0 投票
1 回答
1180 浏览

android - 具有 DataBinding 和 R8 的 Android 动态功能

我在动态功能模块中使用 DataBinding 时遇到问题。

我无法生成与我的片段相关的绑定对象isMinifyEnabled = true

通常,我尝试使用此代码来执行此操作: val viewDataBinding: FragmentFeature1Binding = DataBindingUtil.inflate(inflater, layoutId, container, false) 但返回的inflate()值始终为 null 而没有任何附加消息。我尝试FragmentFeature1Binding直接使用膨胀布局,但我得到了相同的结果。

当我将片段移动到app模块中时,一切正常。

我的应用程序build.gradle.kts

我的特点1 build.gradle.kts

我的proguard-rules.pro

如果没有 R8,一切都会正常工作,所以我认为缺少一些规则,但我尝试了一些配置,遗憾的是谷歌没有官方配置。

0 投票
1 回答
222 浏览

android - 无法将位于 Android 动态“按需”功能模块中的原始资源引用为 URI

我在将动态模块中的资源作为 URI 引用时遇到问题。

像这样的东西:

android.resource://com.redback.dynamic_module/raw/cool_video

似乎无效。

我能够加载动态功能模块并从基本模块实例化一个类而无需戏剧,甚至可以使用AssetFileDescriptor然后将其提供给MediaPlayer这样的动态模块中的其他原始资源:

所以模块和资源似乎加载正常。

但是,我还需要将一些原始资源提供给VideoView. 为此,我需要生成一个 URI:

我尝试对 URI 的几个变体进行硬编码:

但无济于事...

VideoView在将资源移动到动态点播功能模块之前,这没有问题,如果我使用基本模块中的视频,它仍然可以正常工作。这向我表明,也许 URI 需要以不同的方式构造?

目前的解决方法是将资源写入文件并将文件提供给VideoView.. 这当然不太理想,但表明资源已加载且可访问。

动态模块称为“dynamic_module”,包 ID(在 AndroidManifest 中)与基本模块相同:“com.redback”

0 投票
4 回答
1789 浏览

android - 带有 Flutter 的动态功能模块

我是一名原生 Android 开发人员,我正在从这里学习动态功能模块 但我也使用颤振。那么,这个功能在 Flutter 中可用吗?

0 投票
1 回答
374 浏览

android - App Bundle:应用程序类可以在动态功能模块中吗?应用程序包崩溃

在为 App Bundle 重构代码时,自定义 Application 类是否可以保留在com.android.dynamic-feature模块中,还是应该只在com.android.application基本模块中?

我看到基础的合并清单具有自定义应用程序类,但是当我启动应用程序时,我在无限循环中看到下面的错误消息。模拟器最终崩溃。

LaunchActivityintent.action.MAIN and LAUNCHER也应该在com.android.application模块中,还是可以在com.android.dynamic-feature模块中?

0 投票
1 回答
206 浏览

angular - 特性模块中的延迟加载 - Angular

该应用程序留在这里:https ://angular-dqpbqa.stackblitz.io 。我在做什么错?它最初也会加载英雄列表,但路径是''。

功能模块的延迟加载不起作用。我在每个功能模块中创建了单独的路由。使用 loadchildren 属性动态加载模块

stackblitz 可编辑:https ://stackblitz.com/edit/angular-dqpbqa