1

is there a way to get data from "gcm notification". Here is a part of my json string which I send with gcm: "data":{"state":"deliver"}}. Here i am sending data using php curl request. Thanks in advance.

4

3 に答える 3

9

GCM JSON 形式でデータを送信します。送信するデータを取得するには、JSON オブジェクトを解析する必要があります。次のコードは私のために働きます:

 public void onMessage(Context context, Intent intent)
  {
    String action = intent.getAction();
    if ("com.google.android.c2dm.intent.RECEIVE".equals(action)) {          
        message = intent.getStringExtra("data"); 
        String s=message.toString();
        parse_json_add(s);
    }
  }

次に、JSON を解析します。

private void parse_json_add(String text) {
    if (text!= null) 
    { 
         JSONObject temp=new JSONObject(text);
         value=temp.get("state").toString();    
    }
}
于 2012-07-24T07:27:39.783 に答える
4

メッセージが到着するたびに OnMessage() メソッドを呼び出します

このメソッドをオーバーライドする必要があります

@Override
    protected void onMessage(Context arg0, Intent arg1) {
        // TODO Auto-generated method stub
        Log.d("onMessage",arg1.getExtras().getString("state"));
          } 
于 2012-07-24T07:10:09.940 に答える
1

次のコードを使用してデータを取得できます。詳細については、受信データの処理を確認してください。

String state = intent.getStringExtra("state");
于 2012-07-24T07:03:55.853 に答える