Android之訊息推送聊天實現

來源:互聯網
上載者:User

偶然的一天,發現百度出了一個雲推送包,想想百度的伺服器還是比較穩定的,怎麼著比我們自己搭建的伺服器要穩定得多,於是乎,我就花了幾天時間,寫了一個小小的聊天工具,權當是練手,以後如果有應用僅僅是需要給使用者推送訊息,其實沒必要自己搭建一個伺服器了,就把百度的包加進去,可以省掉很多事情了。好了,廢話不多說,我們先來看看這個小工具的,由於時間比較倉促,bug和錯誤在所難免,希望朋友們耐心一點,可以自己調試調試, 謝謝大家,如果我收到郵件,會及時處理的,再次表示感謝!!!

 
    

         

    

          

 


由於代碼量還算比較大,我這裡就不貼代碼了,簡單的說一下原理,先來看看源碼的結構:

 



com.way.activity:理所當然的是所有Activity了,不多說。


com.way.adapter:這個是所有用到的適配器,比如ListView等等,也不多說。


com.way.app:這裡我放了兩個類,一個是Application,被我當作全域變數儲存的工具類了,另外一個是接替系統異常處理的類,如果報錯了,會把錯誤資訊儲存到檔案,然後提示使用者以郵件的形式發送給我,希望朋友們如果在遇到報錯能不吝把log發送給我,謝謝!


com.way.baidupush.client:這裡是接收百度伺服器推送過來訊息的廣播接收者:PushMessageReceiver,所有訊息都是通過這裡接收的,另外我自己加了一個網路變化的接收,根據網路狀況作出不同的處理。


com.way.baidupush.server:這裡是發送訊息的封裝,我們要推送的訊息是在這裡通過HTTP請求百度伺服器的,主要是一些HTTP請求的封裝,看一下就知道了。


com.way.bean:這是bean包,不多說了,JAVA的基礎知識,java bean。


com.way.common.uti:l這裡是我放一些工具類的包,比如Log封裝,Toast封裝,網路判斷,發送訊息非同步任務,Dialog等等。。。


com.way.db:這是是資料庫操作包,有User、Message、最近通話都是儲存在資料庫的。

com.way.fragment:這裡是放左右滑動菜單的左菜單和右菜單fragment。

接下來所有的包都是開源項目的view,我就不多作解釋了。


 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.