【Android】Parse Push快速入門手冊

來源:互聯網
上載者:User

前言

很早就知道Parse服務,專為開發人員提供服務端支撐,這又推出了Push服務,正好想用,實踐發現速度快、簡單、好用,這裡順便記錄了一下使用心得。

 

聲明

歡迎轉載,但請保留文章原始出處:)
部落格園:http://www.cnblogs.com
農民伯伯: http://over140.cnblogs.com 

 

本文

一、準備

關於Parse的介紹,參考本文文末的連結(每月100萬條免費Push)。首先你需要建立一個Parse賬戶,然後建立一個應用,最後下載SDK,解壓並將jar拷貝到libs目錄即可。

官網:Parse Push 

你可以嘗試下這個下載連結:Parse-1.2.0.zip 

 

二、 在你Application類的onCreate方法中調用Parse.initialize,如下:

 import android.app.Application;
 import com.parse.Parse;
 
 public class MyApplication extends Application {
 
   public void onCreate() {
     Parse.initialize(this, "your application id", "your client key");
   }
 
 }

 登入並建立好應用後,點擊網頁頂部的Quickstart就能進入本文的英文版本,並且已經給你填充好了applicationid和key,直接複製到程式裡面即可。

 

三、AndroidMainfest.xml設定

這裡設定許可權、廣播、Service等。 

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />

 

 <service android:name="com.parse.PushService" />
 <receiver android:name="com.parse.ParseBroadcastReceiver">
   <intent-filter>
     <action android:name="android.intent.action.BOOT_COMPLETED" />
     <action android:name="android.intent.action.USER_PRESENT" />
   </intent-filter>
 </receiver>

 注意別加錯地方。

 

四、訂閱Push通知

PushService.subscribe(this, "", YourActivity.class);
PushService.setDefaultPushCallback(this, YourActivity.class);

 注意:

a)、最後一個參數YourActivity.class,是指點擊工作列推送訊息時接收處理的Activity,可以從getIntent中取到推送資料,例如 :

com.parse.Channel:null 

com.parse.Data:{"alert":"test","push_hash":"098f6bcd4621d373cade4e832627b4f6"}

b)、這段代碼也可以放到Application裡面,放在Parse.initialize後面。

c)、以廣播的形式接收JSON資料:

    public class MyCustomReceiver extends BroadcastReceiver {
    private static final String TAG = "MyCustomReceiver";
     
      @Override
      public void onReceive(Context context, Intent intent) {
        try {
          String action = intent.getAction();
          String channel = intent.getExtras().getString("com.parse.Channel");
          JSONObject json = new JSONObject(intent.getExtras().getString("com.parse.Data"));
     
          Log.d(TAG, "got action " + action + " on channel " + channel + " with:");
          Iterator itr = json.keys();
          while (itr.hasNext()) {
            String key = (String) itr.next();
            Log.d(TAG, "..." + key + " => " + json.getString(key));
          }
        } catch (JSONException e) {
          Log.d(TAG, "JSONException: " + e.getMessage());
        }
      }
    }
    

 

五、其他

a).測試過程中發現,按照快速開發文檔,最後點Send Temp Push沒用,還以為失敗了,直接進入應用背景Push Notifications,點擊Send a push,然後就可以發送訊息了。發送成功一次後,後面都很快了。

b).注意要在後台Settings的Push notifications中啟用Client push,設定為ON即可。 

c).Parse Push支援IOS和Android的通知服務。 

d).1.3後好像要加以下代碼:(2013-06-12更新)

ParseInstallation.getCurrentInstallation().saveInBackground(); 

 

 

六、相關文章

Android推送實現方案探討 

Parse 是一個比較完善的專為您的IOS和Android應用而設計的後端平台

談談行動裝置 App開發的輔助服務 

 

結束

 原計劃試用一下極光推送,這裡先試一下Parse的吧。現在搞APP的很多創業很多,其實專門做這種開發人員服務也很好,更加容易實現盈利,同樣最終服務於客戶。創業到底是為了啥了?

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.