如何让项目支持延迟加载组件
下面的引导将介绍如何设置 Android 应用程序以支持延迟加载。
译者:注意国内无法使用 Google Play 做产物下发,需实现
DeferredComponentManager
自定义下载模块。
步骤 1:依赖项和初始项目设置
- 将 Play Core 添加到 Android 应用程序的 build.gradle 依赖项中。 在 `android/app/build.gradle` 中添加以下内容:
…
dependencies {
…
implementation “com.google.android.play:core:1.8.0”
…
}
- 如果使用 Google Play 商店作为动态功能的分发模型, 应用程序必须支持 `SplitCompat` 并手动提供 `PlayStoreDeferredComponentManager` 的实例。 这两个任务都可以通过设置 `android/app/src/main/AndroidManifest.xml` 中的 `android:name` 为 `io.flatter.app.flatterPlayStoreSplitApplication` 应用属性来完成:
<manifest …
<application
android:name=“io.flutter.app.FlutterPlayStoreSplitApplication”
…
io.flutter.app.FlutterPlayStoreSplitApplication
已经为你完成了这两项任务。 如果你使用了 FlutterPlayStoreSplitApplication
,可以跳过步骤 1.3。
如果你的 Android 应用程序很大或很复杂, 你可能需要单独支持 SplitCompat
并提供 PlayStoreDynamicFeatureManager
。
要支持 SplitCompat
,有三种方法(详见 Android docs),其中任何一种都是有效的:
- 让你的 application 类继承 `SplitCompatApplication`:
public class MyApplication extends SplitCompatApplication {
…
}
- 在 `attachBaseContext()` 中调用 `SplitCompat.install(this);`:
@Override
protected void attachB