以相聲之名說百度雲推送

(以上純屬巧合)php

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

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

上面一小段,咱們說了嗎說了嗎,說了雲推送的大致框架,當裏個當,當裏個當.接下一小段,咱們要幹嗎要幹嗎,來講說開發的具體事情呀。app

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

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

這句代碼呀,真的要加上,不然真的會崩潰。ide

當裏個當,這個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函數必須加上這麼一句呀!代碼這麼咋:google

FrontiaApplication.initFrontiaApplication(Context context)

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

<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文件不再見他..net

當裏個當,一個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任何機會,李彥宏生日快樂。

相關文章
相關標籤/搜索