公司要求做一個伺服器端的推送功能,用戶端主要是以移動端為主,混合式的app前端,在友盟官網看了下demo,有背景伺服器端,前端主要是原生安卓,IOS還有windos.是以根據自身實際能力,按照demo先弄了個原生安卓的前端和java的背景,調試成功。主要測試2個功能:單點推送用戶端,推送所有用戶端。 本次實踐也遇到了很多坑。大緻步驟就是先在友盟官網申請賬号,然後注冊包名,之後會生成一個appkey,message secret,master secret.這3個參數必須和安卓的mainfast當中注冊的值是一樣的。友盟官網注冊的包名必須和用戶端生成的包名一緻。
image.png
Response Code : 400 {"ret":"FAIL","data":{"error_code":"2027"}} Failed to send the notification! 2027是簽名失敗,我以為需要在安卓app打包的時候需要用 于是我進行簽名打包,但是依然無作用
以上都是些設定,介紹一下消息推送所使用的一些場景 背景開啟一個定時任務,比如每天晚上10點像全體使用者發送推送消息。單點發送可以根據唯一的devicetoken發送消息給使用者,是以可以把這個token和資料庫中使用者名進行綁定,根據使用者名查詢出token給指定使用者發送即可。
其他代碼可以通過下面的友盟推送java服務端代碼以及友盟推送安卓用戶端代碼檢視,這裡主要對其進行了封裝,各位可以看下有什麼更好的方法封裝,可以指出。
YoumengAndroidMain是主調用類
YoumengAndroidPush.java主要通過httpclient将參數封裝傳到友盟進行推送。