以相聲之名說百度雲推送


(以上純屬巧合)

以相聲風格說一說百度雲推送會是什么效果了。

百度雲推送,就他媽三個字呀,當里個當,當里個當.快呀呀准呀省,快呀呀是個啥,如箭一樣推過去。准字嗎是個嗎,億萬數據中最精確給他。省字什么啊,有了雲推送,流量沒有漲,沒有雲推送,流量刷嘩嘩。當里個當,當里個當。你是開發者,怎么來用它,你去看文檔,文檔哪兒有,網址再這呀。http://developer.baidu.com/wiki/index.php?title=docs/cplat/push/sdk/clientsdk。

上面一小段,我們說了嗎說了嗎,說了雲推送的大體框架,當里個當,當里個當.接下一小段,我們要干嘛要干嘛,來說說開發的具體事情呀。

 打開這文檔,文檔這么長,一共有那32個頁。我撇機撇機大嘴巴,這讓我怎么看。我找啊找啊找,當里個當,當里個當.找的我老眼又昏花。以我多年編程的屁經驗,首先應該把那入口吧,就像一切函數有那main函數。項目中有個函數叫做oncreate函數。源代碼是這樣的:

public class DemoApplication extends FrontiaApplication { 
 
@Override 
 
public void onCreate() {  
 
 
 
//必須加上這一句,否則會崩潰 
 
 
super.onCreate(); 
 
} 
}

這句代碼呀,真的要加上,否則真的會崩潰。

當里個當,這個application體現整個app的生命周期,倘若你沒初始化,manifest中的初始化不可少。你要加上android:name的標簽。代碼便如下:

<application android:name="com.baidu.push.example.DemoApplication" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name">

當里個當,這個application中的oncreate函數必須加上這么一句呀!代碼這么咋:

FrontiaApplication.initFrontiaApplication(Context context)

當里個當,權限是個啥玩意,有了才能玩,一定要加上,manifest這個文件中,一定要加上,代碼便爬下:

<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.DISABLE_KEY GUARD" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

以上是代碼,有了這些的代碼,security的異常快快滾回家,從此logcat文件再也不見他.

當里個當,一個Reciver代碼要注冊,多了接收者,推送這個鬼,請到碗里來。代碼怎么樣,抬頭自己瞅。

<!-- push service client --> 
<receiver android:name="your.package.MyPushMessageReceiver"> 
<intent-filter> 
<!-- 接收 push消息 --> 
<action android:name="com.baidu.android.pushservice.action.MESSAGE" /> 
<!-- 接收 bind、setTags等 method的返回結果 --> 
<action android:name="com.baidu.android.pushservice.action.RECEIVE" /> 
<!-- 可選。接受通知點擊事件,和通知自定義內容 --> 
<action android:name=" com.baidu.android.pushservice.action.notification.CLICK”/> 
</intent-filter> 
</receiver>

當里個當,一個Service勞模對象不可少,我該字母哦做,繼續查資料,manifest清單又派上大用場,這就是源碼:

<!-- push service start --> 
<!-- 用於接收系統消息以保證 PushService正常運行 --> 
<receiver android:name="com.baidu.android.pushservice.MyPushServiceReceiver" 
android:process=": bdservice_v1"> 
<intent-filter> 
<action android:name="android.intent.action.BOOT_COMPLETED" /> 
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
<action android:name="com.baidu.android.pushservice.action.notification.SHOW" /> 
<action android:name="com.baidu.android.pushservice.action.media.CLICK" /> 
</intent-filter> 
</receiver> 
<!-- Push服務接收客戶端發送的各種請求--> 
<!-- 注意:RegistrationReceiver 在 2.1.1及之前版本有拼寫失誤,為 RegistratonReceiver ,用新
版本 SDK 時請更改為如下代碼--> 
<receiver android:name="com.baidu.android.pushservice.RegistrationReceiver" 
android:process=": bdservice_v1"> 
<intent-filter> 
<action android:name="com.baidu.android.pushservice.action.METHOD " /> 
<action android:name="com.baidu.android.pushservice.action.BIND_SYNC " /> 
</intent-filter> 
<intent-filter> 
<action android:name="android.intent.action.PACKAGE_REMOVED"/> 
    <data android:scheme="package" /> 
</intent-filter>                    
</receiver> 
<!-- Push 服務 --> 
<service android:name="com.baidu.android.pushservice.PushService" 
android:exported="true"  android:process=" bdservice_v1"/>

當里個當,這就是代碼,一個推送服務已介紹,如果要進步了解,懇請大家自己找。

當里個當,以上的篇幅,只是王婆來賣瓜,賣瓜又自誇。

當里個當,百度雲推送,方便又好用。特推,jpush簡直要弱爆,騰訊的產品,阿里的技術靈魂護體,代表了中國牛逼互聯網的光榮傳統和歷史,不要給google,amzon任何機會,李彥宏生日快樂。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM