此处先附上官网API:http://docs.developer.qq.com/xg/android_access/api.html
官网API写的挺全的,如果只是单单前端需要获取通知的话,以下内容就足够了。
一、官网注册
1、在信鸽官网注册账号,进行实名认证。
2、找到应用管理 →我的应用→新建应用
image3.、填写配置
image注意: (1) 应用名称可以自己随便写,当最好与自己项目名称一致。
(2) 应用包名必须使用你所要使用推送的项目 app包build.gradle中 applicationId的属性
image
4、下一步完成以后,就在官网注册好了。
image注意:这里的ACCESS ID 和 ACCESS KEY 等会在 android studio中集成的时候会用到。
二、android studio集成
这里只讲通过jcenter远程仓库自动接入,不需要在项目中导入jar包和so文件。
1、确认android studio的 Project 根目录的主 gradle 中配置了jcenter支持。(新建project默认配置就支持)
image2、在 app下build.gradle做androidManifest的替换变量
imageandroid {
......
defaultConfig { applicationId "com.xxx.xxx" //JPush上注册的包名. ...... ndk { //选择要添加的对应cpu类型的.so库 abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a' // 还可以添加 'x86', 'x86_64', 'mips', 'mips64' } manifestPlaceholders = [ XG_ACCESS_ID:"注册应用的accessid", XG_ACCESS_KEY : "注册应用的accesskey", ] ...... }
......
}
这里的XG_ACCESS_ID和XG_ACCESS_KEY就是刚才我们提到的集成会用到的accessId和accessKey。
3、在 app下的build.gradle中添加依赖
image//完整的信鸽依赖三个都必须有,如果发生依赖冲突请根据对应的依赖版本号选择高版本的依赖。(使用jcenter自动接入请确认libs 中没有信鸽的相关jar包)
//是否需要信鸽采集安装列表 自行二选一
//采集安装列表
compile 'com.tencent.xinge:xinge:3.1.2-a-alpha'
//不采集安装列表
compile 'com.tencent.xinge:xinge:3.1.2-b-alpha'
//wup包
compile 'com.tencent.wup:wup:1.0.0.E-alpha'
//mid包
compile 'com.tencent.mid:mid:3.9.0-alpha'
注意*
如果在添加以上 abiFilter 配置之后android Studio出现以下提示:
NDK integration is deprecated in the current plugin. Consider trying the new experimental plugin.
则在 Project 根目录的gradle.properties文件中添加:
android.useDeprecatedNdk=true
4、在我的项目中,我是创建了一个BaseApplication 继承 Application,这样只要在app启动的时候直接就启用了信鸽推送了。在BaseApplication中重写onCreate方法,调用initXGPush();。 这里需要注意的是需要在AndroidManifest中对application进行name属性配置
imagepackage wuzz.myweb;
import android.app.Application;
import android.util.Log;
import com.tencent.android.tpush.XGIOperateCallback;
import com.tencent.android.tpush.XGPushConfig;
import com.tencent.android.tpush.XGPushManager;
public class BaseApplication extends Application {
private String token;
public String getToken() {
return token;
}
public void setToken(String token) {
this.token = token;
}
@Override
public void onCreate() {
super.onCreate();
initXGPush();
}
private void initXGPush(){
XGPushConfig.enableDebug(this,true);
XGPushManager.registerPush(this, new XGIOperateCallback(){
@Override
public void onSuccess(Object data, int flag){
//token在设备卸载重装的时候有可能会变
Log.e("TPush","注册成功,设备token为:"+ data);
setToken(data.toString());
}
@Override
public void onFail(Object data, int errCode,String msg) {
Log.e("TPush","注册失败,错误码:"+ errCode +",错误信息:"+ msg);
}
});
//设置账号
XGPushManager.registerPush(getApplicationContext(),"XINGE");
// 设置标签
XGPushManager.setTag(this,"XINGE");
}
}
如果是详细按照我写的步骤集成的话,腾讯信鸽就算集成好了。接下来,就可以在官网进行消息推送了。
网友评论