作者:手机用户2502884755 | 来源:互联网 | 2023-08-26 16:53
官网:https:docs.aiqua.appier.com说明:我不太了解AIQUA是做什么的,因为某些原因接触到它,所以我这里就只讲如何集成、初始化以及我躺过的坑,具体怎么使用
官网:https://docs.aiqua.appier.com
说明:我不太了解AIQUA是做什么的,因为某些原因接触到它,所以我这里就只讲如何集成、初始化以及我躺过的坑,具体怎么使用就不说了,我这里是新建一个项目进行的,所以没有出现什么包冲突之类的问题。
为什么要写这篇呢?主要是因为,在我前面开始根据官方文档来操作时,遇到问题、最后发现需要翻墙。(可能是我的迷之操作导致这些问题的出现)整篇文章中,有哪里描述不对的地方,请指正出来,不能被我带偏了。
写的步骤:先根据文档来,遇到的问题也贴一下,最后再讲以arr集成。
还未解决的疑惑:如何注册、登录进去??知道的小伙伴麻烦告诉我一下。
步骤:
一.在app的gradle下加入相关依赖(还有冲突版本的添加依赖方式,看官网文档即可):
注:AIQUA SDK版本的5.10.0,那么appcompat-v7最低版本的26.1.0
implementation 'com.android.support:appcompat-v7:26.1.0'// add other necessary dependency//***Firebase and Google Play Services***implementation 'com.google.firebase:firebase-core:16.0.7'implementation 'com.google.firebase:firebase-messaging:17.3.4'implementation 'com.google.android.gms:play-services-analytics:16.0.7'// AIQUA SDKimplementation 'com.quantumgraph.sdk:QG:5.10.0'
二.在AndroidManifest.xml下添加权限(根据你的需要):
注:Android6.0及以上需要动态获取权限
三.初始化两种方法选一,官网在activity的onCreate方法里(我写在MyApplication的onCreate方法(继承Application的类)):
注:写在MyApplication,记得在AndroidManifest.xml里面加 android:name=".MyApplication"。
初始化方法前面的备注,是以arr接入方式,总结日志知道的(arr接入方式,在后面),不对的地方请指出。
虽然日志显示:Not Initialized,但后面是初始化了的,具体是为什么呢?看日志
/*** 默认的初始化,senderId: 912856755471* 卸载重装后userId会改变,且显示用户已经存在,期间论appId换成什么,userId不变* Not Initialized*/QG.initializeSdk(MyApplication.this, getPackageName());/*** 初始化AIQUA,使用自己的appId,senderId , 需要到平台上面设置才有senderId* 卸载重装后userId会改变,且显示用户已经存在,期间论appId换成什么,userId不变* Not Initialized*/QG.initializeSdk(MyApplication.this, getPackageName(), "senderId");
四.运行就闪退,依次遇到的问题及解决方法:
问题1:java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.example.aiqua. Make sure to call FirebaseApp.initializeApp(Context) first.
解决:
在第三步之前,加入:
注:必须判断FirebaseApp初始化成功才能进行第三步,会发现问题2
FirebaseApp.initializeApp(this);
问题2:FirebaseApp.initializeApp(Context)一直初始化不成功
解决:
1.在app.gradle的最后最后最后,记得是最后加入:
apply plugin: 'com.google.gms.google-services'
2.在项目的gralde下面加入如下:
buildscript {dependencies {classpath 'com.google.gms:google-services:3.0.0'}
}allprojects {repositories {jcenter()maven {url "https://maven.google.com" }}
}
Sync Now一下,会发现问题3
问题3:File google-services.json is missing. The Google Services Plugin cannot function without it.
解决:这个需要翻墙下载 google-services.json,具体步骤有其他优秀博文写好了,自行查阅。
以arr实现的步骤:
(一)下载QG-5.10.0.aar及加入到项目中(看图剪头指引):
注:我用的是QG-5.10.0.arr,刚刚再去官网找下载arr地址时,更新到QG-6.0.0.aar了
(二)(三)跟前面的二三步骤一样的,不重复
(四)获取QG实例:
QG qg = QG.getInstance(getApplicationContext());
不对的地方,请指出,我会认真改进的,谢谢!