是否可以在没有agconnect-services.json
的情况下初始化HMS并在运行时提供密钥?
使用类似的服务(Fcm(,我们可以初始化一个应用程序:
val builder = FirebaseOptions.Builder()
.setApiKey(apiKey)
.setGcmSenderId(senderId)
.setProjectId(project)
.setApplicationId(appId)
FirebaseApp.initializeApp(context, builder.build())
因此,您可以在不需要解析json
文件的情况下使用它。
使用HMS
和AppGallery
是否有类似的解决方案?
BTW,我正在尝试实现PushKit
更新:
- 推送套件
您可以在清单文件中添加以下代码:
<meta-data
android:name="com.huawei.hms.client.appid"
<!-- Replace value xxx with the actual appid.-->
android:value="appid=xxx">
</meta-data>
目前,HMS没有为基于代码的初始化提供统一的解决方案。但是,有些工具包支持基于代码的初始化。
- 地图套件:
MapsInitializer.setApiKey("Your API Key");
- 站点工具包:
SearchService searchService = SearchServiceFactory.create(this, "API key");
- ML套件:
MLApplication.getInstance().setApiKey("your ApiKey");
如果只使用这些工具包,则不需要集成JSON文件。相反,您可以通过API键完成基于代码的初始化。
我们将分析和讨论您对统一的基于代码的初始化解决方案的需求,并尽快回复您。
如果您试图通过DevEco实现HiAI,您可以在没有agconnect-services.json文件的情况下运行应用程序。要了解更多信息,请使用链接。
通过另一种方式,您可以尝试编码助手,它将为某些套件进行自动环境配置。目前它将支持Push Kit,无需手动下载agconnect-services.json。要了解更多信息,请使用链接