1.消息推送算法
客戶端被動接收服務端數據,均可以用上消息推送技術數組
應用場景:廣告,即時通信服務器
第三方SDK:極光推送JPush (另外一個大牌推送SDK:個推)微信
使用步驟動畫
①官網下載SDK,DOS文檔裏的是API文檔,在線有一個幫助文檔更詳細url
②在極光推送控制檯建立應用,在該應用控制檯能夠下載示例DEMOspa
③根據文檔進行開發blog
推送是經過廣播接收者實現的,要實現更多的功能查看幫助文檔中的高級圖片
能夠拿到:文章的標題,內容開發
隱含的字段:url,推送的是一條新聞,拿到這個url 打開網頁便可.
1.2 推送拓展
應用程序的更新(微博團隊研發過,經過推送進行更新)
服務器消息推送,客戶端實現數據更新(好比微信聊天界面每一個人的消息數量)
極光推送,自定義消息,任意定義內容,能夠被客戶端後臺接收到,而不是顯示在通知上.
經過消息推送實現的即時通信
1.3 消息推送的原理
①關鍵詞:
長鏈接:保持服務端和客戶端的長期連接
XMPP協議:專門針對消息推送的協議(相對於http協議而言是一個輕量級協議)XML格式.
Socket:能夠比做電話(建議連接),XMPP協議就至關於語言
心跳包:客戶端每隔一段時間(如今主流的是一分鐘一次)給服務端發送一段極短的數據,證實客戶端鏈接依然活着.可是這樣可能會有消息丟失的狀況.
市面上注重體驗的公司:若是客戶端在一段時間內沒有發送心跳消息,服務端發送消息失敗,會把消息先暫存起來,一旦檢測到客戶端從新發送心跳包,就發送消息
2,語音識別------------科大訊飛語音雲,老牌語音公司
主要使用功能:語音識別,語音合成
使用:
①註冊開放平臺,添加應用
②下載SDK,打開doc文檔,根據須要的功能分析開發文檔
2.1 聊天機器人DEMO
參考界面
①聊天信息的顯示,其實是一個ListView,一個item中包含全部聊天相關的控件,會根據實際狀況來進行顯示和隱藏
②集成語音識別的功能,這裏的聊天機器人反饋爲了簡單起見就用幾個簡單的詞彙判斷.
③語音識別,轉換成文字以後顯示在頁面上
語音識別反饋的是一個GSON,能夠直接解析,也可使用 JSONObject
要注意的是,反饋的回調是根據參數上的boolean類型值判斷這個語句是否一致.
這些簡單詞彙放進一個數組裏,而後匹配就行,圖片是隨機的,放到一個數組裏,隨機.
語音合成,將匹配的詞彙經過語音合成播放出來.
3.友盟統計指數
有不少有用的指數,能夠指引開發方向
3.2,友盟統計SDK的使用
使用方式:註冊帳號,獲取APPKey,查看開發文檔
開發中若是須要統計,強烈推薦友盟統計
4.掃描二維碼,zxing的使用
二維碼,實際上是一種數學算法,與二進制有關,有容錯限制,因此能夠放一張圖片在上面(前提是不蓋上三個大黑塊)
5.新聞頻道的滑動效果
上面是一個自定義GridView,能夠拖動方塊
下面是一個自定義GridView,不過修改了大小
點擊上方的自定義GridView,其實是經過WindowManager在整個window添加了一個全屏的視圖,而後在這個視圖上面進行全屏拖拽的顯示效果
同時,對拖拽的位置進行動態的座標進行獲取,動態分析該位置,而後實現相應的動畫效果(translateAnimation)
值得注意的是,出現全屏視圖的時候,把原來的GridView隱藏了,更能方便的實現動畫效果.