1,去JPush官网注册一个账号,创建你的app的应用,并且拿到你应用的AppKey
2,在JPush官网下载对应的sdk,解压出来,将libs文件下的所有的文件全部复制到你工程的libs文件中
3,在清单文件中添加对应的权限和activity(更改对应的包名和对应的AppKey)
AndroidManifest.xml权限配置:
package="您应用的包名"
android:versionCode="100"
android:versionName="1.0.0"
>
应用包名及appkey替换:
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:name="Your Application">
android:name="cn.jpush.android.service.PushService"
android:enabled="true"
android:exported="false" >
android:name="cn.jpush.android.service.DaemonService"
android:enabled="true"
android:exported="true">
android:name="cn.jpush.android.service.PushReceiver"
android:enabled="true" >
android:name="cn.jpush.android.ui.PushActivity"
android:configChanges="orientation|keyboardHidden"
android:exported="false" >
android:name="cn.jpush.android.service.DownloadService"
android:enabled="true"
android:exported="false" >
android:name="您自己定义的Receiver"
android:enabled="true">
4,在自定义的application中初始化JPush
public class ExampleApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
JPushInterface.setDebugMode(true);
JPushInterface.init(this);
}
}
这样就基本上都ok了,但是想要接受自定义的消息的时候需要写一个广播接受者,并注册就ok
自定义的BroadcastREceiver MyJPushBroadcastReceiver.java
package com.example.jpush;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import cn.jpush.android.api.JPushInterface;
public class MyJPushBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras();
if (JPushInterface.ACTION_REGISTRATION_ID.equals(intent.getAction())) {
}else if (JPushInterface.ACTION_MESSAGE_RECEIVED.equals(intent.getAction())) {
System.out.println("收到了自定义消息。消息内容是:" + bundle.getString(JPushInterface.EXTRA_MESSAGE));
// 自定义消息不会展示在通知栏,完全要开发者写代码去处理
} else if (JPushInterface.ACTION_NOTIFICATION_RECEIVED.equals(intent.getAction())) {
System.out.println("收到了通知");
// 在这里可以做些统计,或者做些其他工作
} else if (JPushInterface.ACTION_NOTIFICATION_OPENED.equals(intent.getAction())) {
System.out.println("用户点击打开了通知");
// 在这里可以自己写代码去定义用户点击后的行为
Intent i = new Intent(context, MainActivity.class); //自定义打开的界面
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
} else {
}
}
}
这样就可以推送我们自己App的消息和通知了