在flutter插件的开发中,
获取不到appId。我将配置文件.json放在java module和example app目录下,无法获取appId。怎么解决呢?
我将sdk封装到插件中,报错:appId为空
getToken 失败,com.huawei.hms.common.ApiException: 907135000: 参数无效
最佳答案
请尝试以下步骤 1、将json文件放到Android层的assets目录下。如果没有,请创建一个新的,并在 AndroidManifest.xml 和 Application 中添加以下代码:
<application
android:name=".MyApplication"
…
>
…
公共(public)类 MyApplication 扩展了应用程序{
@覆盖
公共(public)无效onCreate(){
super.onCreate();
}
//TODO:添加以下代码:
@覆盖
protected void AttachBaseContext(上下文上下文){
super.attachBaseContext(context);
AGConnectServicesConfig config = AGConnectServicesConfig.fromContext(context);
config.overlayWith(new LazyInputStream(context) {
public InputStream get(Context context) {
try {
return context.getAssets().open("agconnect-services.json");
} catch (IOException e) {
return null;
}
}
});
}
//TODO:结束
}
2.您可以通过以下代码获取App ID
String appId = AGConnectServicesConfig.fromContext(this).getString("client/app_id");
如果仍然失败,请在AndroidManifest.xml文件下添加标签
<meta-data
android:name="com.huawei.hms.client.appid"
android:value="appid=xxxxx">
</meta-data>
关于huawei-mobile-services - 开发flutter插件时华为获取appId为空,不应该读取配置文件.json文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62273654/