百度推送 android studio 的配置


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

之前項目已經集成了百度推送,但是用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


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com