下载SDK参见这里
注意:勾选【XX】 服务
集成SDK参见这里
注意:
1 SDK中的yw_1222.jpg 安全图片需要放置到App工程的res/drawable 目录中,如果没有drawable 目录可以新建一个,且安全图片的文件名称不可修改。
2 要将AndroidManifest.xml中的内容合并到项目中,可以直接复制,也可以设置project.properties文件的manifestmerger.enabled为true。
<!-- 默认使用BCMessageBroadcastReceiver【如果业务没有透传消息】如果有透传消 @Override BCMessageBroadcastReceiver.onMessage(Context context,String messgeBody,Map<String,String> extMap) --> <receiver android:name=com.alibaba.sdk.android.BCMessageBroadcastReceiver"> <intent-filter> <action android:name=com.alibaba.android.message.intent.action.COMMAND"/> </intent-filter> <intent-filter> <action android:name=com.alibaba.android.message.intent.action.RECEIVER"/> </intent-filter> </receiver>
public class MyApplication extends Application {
private static final String TAG = MyApplication.class.getName();
private PushAgent mPushAgent;
@Override
public void onCreate() {
Log.e(TAG,"MyApplication onCreate......");
mPushAgent = PushAgent.getInstance(this);
mPushAgent.setDebugMode(true);
AlibabaSDK.turnOnDebug();
AlibabaSDK.setEnvironment(Environment.TEST);
AlibabaSDK.asyncInit(this, new InitResultCallback() {
@Override
public void onSuccess() {
BCMessageRegister.binder(mContext,BCMessageRegister.ChannelType.UMENG,"5652f59a67e58eefc9000d3b",s,null);
Log.i(TAG,"asynInic successc!!");
}
@Override
public void onFailure(int code, String msg) {
Log.i(TAG,"asynInic failed.["+code+"]["+msg+"]");
}
});
UmengMessageHandler messageHandler = new UmengMessageHandler(){
/**
* 参考集成文档的1.6.3
* http://dev.umeng.com/push/android/integration#1_6_3
* */
@Override
public void dealWithCustomMessage(final Context context, final UMessage msg) {
new Handler().post(new Runnable() {
@Override
public void run() {
Toast.makeText(context, msg.custom, Toast.LENGTH_LONG).show();
BCMessageRegister.handlerMessage(context,msg.custom);
}
});
}
@Override
public Notification getNotification(Context context,
UMessage msg) {
return null;
}
};
mPushAgent.setMessageHandler(messageHandler);
}
}
实现透传
public class UmengMessageBroadcastReceiver extends BCMessageBroadcastReceiver {
private final static String TAG = UmengMessageBroadcastReceiver.class.getName();
@Override
protected final void onMessage(Context context,String messgeBody,Map<String,String> extMap) {
try {
/***
* 业务自己实现透传后的逻辑
*/
Log.d(TAG,"onMessage-->["+messgeBody+"] -->["+extMap+"] ");
}catch (Throwable t){
Log.w(TAG,"onMessage",t);
}
}
}
确定客户端接入完成,即可在控制台进行推送测试。见文档:
推送服务端集成参见:服务端集成
旺旺群:1363288918