huawei-mobile-services - 开发flutter插件时华为获取appId为空,不应该读取配置文件.json文件

标签 huawei-mobile-services

在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/

相关文章:

android - 华为 map 不加载瓷砖

android - onTaskRemoved() 在华为和小米设备中没有被调用

ios - 体系结构 x86_64 : xcode 9 Swift 4 的 undefined symbol

android - 华为、荣耀手机电池优化、前台服务

logcat - 在华为手机上调试时,android Studio Logcat 无法正常工作

android - 华为使用 ML Kit 进行人脸检测在某些设备上无法工作

android - onTaskRemoved() 在华为和小米设备中未被调用

huawei-mobile-services - 如何使用 Firebase/Google Analytics 分析用户行为并记录来自华为手机的特定事件?

java - Android 应用、Android 8(.1)、90% 华为设备中的 ANR 和崩溃

android - 华为 JNI 上的 std::exception SIGSEGV