百度推送 android studio 的配置

本文详细介绍了在Android项目中集成百度推送的步骤,包括在AndroidManifest.xml中配置权限、导入百度推送的jar包和so库,以及如何在AndroidManifest.xml中增加百度的Service和Receiver。同时提醒开发者注意常见问题,如so库导入失败、manifest.xml配置缺失等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

昨天整了下百度推送升级。

之前项目已经集成了百度推送,但是用eclipse开发的。所以需要做一些配置上的修改。


其实百度推送的文档[1]已经写的很清楚了。可是我还是遇到这种因为粗心产生的问题。所以一再提醒一下自己,一定得小心小心再小心。


首先,我们要在AndroidManifest.xml配置百度权限:

    <!-- Push service 运行需要的权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER" />
    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />

其次,要导入百度推送的jar包:

pushservice-最新版本号.jar

和so库。这里,我推荐把带arm的文件夹都拷贝到libs目录下。

百度建议在src/main下新建jniLibs目录,把这些文件夹拷过去,也可以,但在build.gradle里要配置下:

sourceSets {
        main { 
            jniLibs.srcDirs = ['src/main/jniLibs']
        }
}


如果,你要拷贝到libs目录下:

需要在build.gradle里这样配置:

//    task copyNativeLibs(type: Copy) {
//        from fileTree(dir: 'libs', include: '*/*.so') into 'build/lib'
//    }
//    tasks.withType(JavaCompile) {
//        compileTask -> compileTask.dependsOn copyNativeLibs
//    }
//    clean.dependsOn 'cleanCopyNativeLibs'
//    tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
//        pkgTask.jniFolders = [new File(buildDir, 'lib')]
//    }

这里我注释了。


ok,接下来,就是在AndroidManiefest.xml增加各种百度的Service,Recevier了。

然后,百度推送过来的消息,你可以自己定义一个BroadCastRecever接收的。这个在百度推送文档和demo里也有介绍。这里就不赘述了。

这个,我特别建议您直接拷贝百度文档里的配置。

我会跳进的坑就是:

    so库总是导入不成功。

    manifest.xml的配置缺失。


希望可以帮助到你。

[1]http://push.baidu.com/doc/android/api

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值