最近发现 AGC 上局部服务开始反对第三方框架了,其中包含 Flutter,所以就小试牛刀试着在近程配置上试验了一把。
集成步骤
- 装置 flutter 环境
a) 下载 Flutter sdk 包,地址:https://flutter.dev/docs/get-…。
将压缩包解压到任意文件夹,例如 D:\Flutter
b) 将 Flutter 增加到环境变量中,此处我增加的 Path 为 D:\Flutter\flutter_windows_1.22.2-stable\flutter\bin。
c) 在 Android Studio 中点击“File-Settings-Plugins”,下载 Flutter 和 Dart 插件,重启 Android Studio 使插件失效。
- 开明服务 & 创立工程
a) 在 AGC 创立 Android 我的项目并开明近程配置服务。
b) 在近程配置中增加如下配置项。
c) 在 Android Studio 中点击“File-New-New Flutter Project…”,新建 Flutter 工程。
d) 在 AGC“我的项目设置”页面,找到利用菜单下载 agconnect-services.json 文件。
e) 将 agconnect-services.json 文件放入如下图目录中的地位。
f) 在利用级 build.gradle 文件中作如下 maven 仓和近程配置插件配置。
g) 关上 Flutter 我的项目 android/app 文件夹下的 build.gradle 文件,增加编译依赖和 AGC 插件地址。
- 集成 SDK
在 pubspec.yaml 文件中增加近程配置的 pub 依赖
而后点击 Pub get 进行同步
- 基本功能
这里我实现了一个简略的 demo 利用以演示几个最次要的性能。
UI 设计中,有形容为“Mode 1:Fetch And Activate Immediately”、“Mode 2:Fetch And Activate Next Time”、“Clear Data”三个按钮,能够实现如下的次要性能。
a) 获取云端数据,本次失效
点击“Mode 1:Fetch And Activate Immediately”按钮,调用 fetch 后间接调用 applyLastFetched 来获取本次 fetch 到的数据。因为是立刻失效,所以咱们调用 getMergedAll 接口来将所有配置利用到本地,咱们在手机上就能获取到云端的数据,点击成果如下:
b) 获取云端数据,失效上次获取的配置
提早失效的实现接口与立即失效雷同,只不过程序不同:
点击“Mode 2:Fetch And Activate Next Time”按钮,会先 apply 和 getMergedAll 来利用上一次 fetch 的后果,再调用 fetch 来获取最新配置以供下次应用。
c) 革除数据
如果想要革除数据,只有点击“Clear Data”,调用 clearAll 接口就能够了。
d) 设置本地配置项
咱们能够通过在 dart 文件中新建一个 Map 类型的参数,而后调用 applyDefault 接口来利用本地配置:
Map defaults = {
'mLong': 1000,
'mString': 'hello world',
'mDouble': 3.14,
'mBoolean': true
};
AGCRemotConfig.instance.applyDefaults(defaults);
e) 打包
与 Android 雷同,只须要在 Android Studio 中点击运行即可
注意事项
与在 Android 平台设置本地配置项不同的是,Flutter 无奈应用 xml 文件来寄存本地的配置项。
欲了解更多详情,请参见:
Flutter 官网领导文档:
https://flutter.dev/docs/get-started/install/windows
如何在 Android 平台集成近程配置服务:
https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-remoteconfig-introduction
原文链接:
https://developer.huawei.com/consumer/cn/forum/topic/0201399745099710131?fid=0101271690375130218
作者:鼓楼赵又廷