Android 学习之如何集成友盟推送
来源:互联网 发布:蛤蟆吃创建不了网络 编辑:程序博客网 时间:2024/05/22 05:33
我是利用Android studio 新建一个空的Android项目。
步骤一 导入第三方库
1.切换Android项目状态为Project状态
2.在main文件下新建 jniLibs文件夹(用来导入PushSDK项目下lib文件中的so文件)
3.在libs文件夹下添加友盟PuskSDK中的 jar 文件,然后全选jar文件 右击选择as librarise就行了
步骤二 在官网新建应用
1.在http://push.umeng.com/ 网页新建应用
2.对应填写你的包名和应用名称
3.创建应用后得到对应的key和serect
步骤三 填写配置文件
1.填写配置文件权限
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.BROADCAST_PACKAGE_ADDED" /> <uses-permission android:name="android.permission.BROADCAST_PACKAGE_CHANGED" /> <uses-permission android:name="android.permission.BROADCAST_PACKAGE_INSTALL" /> <uses-permission android:name="android.permission.BROADCAST_PACKAGE_REPLACED" /> <uses-permission android:name="android.permission.RESTART_PACKAGES" /> <uses-permission android:name="android.permission.GET_TASKS" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
2.填写相关的meta (key和serect从网页中创建的应用上来 注意包名一定要一样)
<meta-data android:name="UMENG_APPKEY" android:value="You UMENG_APPKEY"> </meta-data> <meta-data android:name="UMENG_MESSAGE_SECRET" android:value="You UMENG_MESSAGE_SECRET"> </meta-data> <meta-data android:name="UMENG_CHANNEL" android:value="Channel Id" > </meta-data>
3.填写相关activity,service,reciver,provider的信息(就是配置应用第三方库中的东西)
<service android:name="com.taobao.accs.ChannelService" android:exported="true" android:process=":channel"> <intent-filter> <action android:name="com.taobao.accs.intent.action.SERVICE" /> </intent-filter> <intent-filter> <action android:name="com.taobao.accs.intent.action.ELECTION" /> </intent-filter> </service> <service android:name="com.taobao.accs.data.MsgDistributeService" android:exported="true"> <intent-filter> <action android:name="com.taobao.accs.intent.action.RECEIVE" /> </intent-filter> </service> <receiver android:name="com.taobao.accs.EventReceiver" android:process=":channel"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> <intent-filter> <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.PACKAGE_REMOVED" /> <data android:scheme="package" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.USER_PRESENT" /> </intent-filter> </receiver> <receiver android:name="com.taobao.accs.ServiceReceiver" android:process=":channel"> <intent-filter> <action android:name="com.taobao.accs.intent.action.COMMAND" /> </intent-filter> <intent-filter> <action android:name="com.taobao.accs.intent.action.START_FROM_AGOO" /> </intent-filter> </receiver> <service android:name="com.taobao.accs.ChannelService$KernelService" android:process=":channel"> </service> <service android:name="org.android.agoo.accs.AgooService" android:exported="true"> <intent-filter> <action android:name="com.taobao.accs.intent.action.RECEIVE" /> </intent-filter> </service> <service android:name="com.umeng.message.UmengIntentService" android:exported="true"> <intent-filter> <action android:name="org.agoo.android.intent.action.RECEIVE" /> </intent-filter> </service> <receiver android:name="com.taobao.agoo.AgooCommondReceiver" android:exported="true"> <intent-filter> <action android:name="${applicationId}.intent.action.COMMAND" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.PACKAGE_REMOVED" /> <data android:scheme="package" /> </intent-filter> </receiver> <receiver android:name="com.umeng.message.NotificationProxyBroadcastReceiver" android:exported="false" /> <service android:name="com.umeng.message.UmengMessageCallbackHandlerService" android:exported="false"> <intent-filter> <action android:name="com.umeng.messge.registercallback.action" /> </intent-filter> <intent-filter> <action android:name="com.umeng.message.enablecallback.action" /> </intent-filter> <intent-filter> <action android:name="com.umeng.message.disablecallback.action" /> </intent-filter> <intent-filter> <action android:name="com.umeng.message.message.handler.action" /> </intent-filter> </service> <service android:name="com.umeng.message.UmengDownloadResourceService" android:exported="false" /> <service android:name="com.umeng.message.UmengMessageIntentReceiverService" android:exported="true" android:process=":channel" > <intent-filter> <action android:name="org.android.agoo.client.MessageReceiverService" /> </intent-filter> </service> <provider android:name="com.umeng.message.provider.MessageProvider" android:authorities="${applicationId}.umeng.message" android:exported="false"> <grant-uri-permission android:pathPattern=".*" /> </provider>
步骤四 调用相关方法
1.新建base文件夹并在其下新建类BaseActicity 注册调用
2.注意调用方法放到子线程中
public class BaseActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); final PushAgent mPushAgent = PushAgent.getInstance(getBaseContext()); mPushAgent.setDebugMode(true); mPushAgent.onAppStart(); new Thread(new Runnable() { @Override public void run() { //注册推送服务,每次调用register方法都会回调该接口 mPushAgent.register(new IUmengRegisterCallback() { @Override public void onSuccess(String deviceToken) { //注册成功会返回device token } @Override public void onFailure(String s, String s1) { } }); } }).start(); }}
步骤五 调试
在调试平台,根据自己的需求来发送自己的推送信息。
0 0
- Android 学习之如何集成友盟推送
- Android之集成友盟推送功能
- Android学习之集成极光推送功能
- 集成友盟推送android
- Android集成友盟推送
- Android集成友盟推送功能
- Android集成友盟推送服务
- 消息推送之百度云推送Android集成与使用方法
- Android之百度云推送(二)如何集成java服务端
- cocos2d-x集成友盟消息推送SDK(Android版)
- android studio集成友盟v2.3消息推送
- android集成友盟推送遇到的问题
- Android集成友盟推送最详细介绍
- android studio关于友盟集成推送问题记录
- 友盟推送集成小结
- Android 极光推送集成
- android极光推送集成
- Android集成极光推送
- Maven入门(含实例教程)
- 欢迎使用CSDN-markdown编辑器
- 接口与抽象类的区别与使用
- 文本文件排序
- docker镜像详解 docker命令详解
- Android 学习之如何集成友盟推送
- 本地代码连远程测试服务器的跨域问题
- hadoop安装
- 去重算法(转)
- Android开发艺术探索笔记(14)- MeasureSpec
- iOS 10访问相机Crash,plist权限设置
- 初探erlang的mysql数据库使用
- 用C语言写的爬虫项目
- 关于Linux文件的那些事情之二