1.so文件夹的问题
- PushSDK 3.0默认只提供armeabi和x86两种so文件夹,若主工程中的so文件夹与PushSDK下的so文件夹不一致,则可以有两种方式处理(选择一种即可):删除主工程下多余的so文件夹,与PushSDK下的so文件夹保持一致。
- 在官网PushSDK下载处,下载全平台so文件,添加缺少的so文件夹至 PushSDK下,使PushSDK的so文件夹与主工程的so文件夹保持一致。
2.主工程项目配置信息(将主工程的清单文件和依赖工程的清单文件进行合并)
- 把PushSDK目录下的
AndroidManifest.xml
中的${applicationId}
替换成为自己项目的包名。 - 右键单击PushSDK的libs目录下的jar文件,选择add to build path(若使用最新版本的ADT工具,则会自动将libs目录下的jar包添加到build path,无需执行此步骤)。
- 在主工程目录下找到
project.properties
,在里面加入manifestmerger.enabled=true
,同时使主工程的minSdkVersion、targetSdkVersion与PushSDK的minSdkVersion、targetSdkVersion保持一致
3.注册友盟推送的时候注意
请勿在调用register方法时做进程判断处理(主进程和channel进程均需要调用register方法才能保证长连接的正确建立)。
- 若有需要,可以在Application的onCreate方法中创建一个子线程,并把
mPushAgent.register
这一行代码放到该子线程中去执行(请勿将PushAgent.getInstance(this)
放到子线程中)。 - device token是【友盟+】生成的用于标识设备的id,长度为44位,不能定制和修改。同一台设备上不同应用对应的device token不一样。
- 如需手动获取device token,可以调用
mPushAgent.getRegistrationId()
方法(需在注册成功后调用)