2015-06-03 39 views
1

我在我的应用中使用GCM,并且正在将一些数据从服务器发送到客户端。数据是这样的:解析绑定数据

{ registration_id: '', 
    time_to_live: 60, 
    'data.type': 'newProcess', 
    'data.sessionId': 'fd1eceb1-e065-4d9e-9bda-50aecaf89b68', 
    'data.questions': 
    [ { question: 'q', answers: ['a', 'b', 'c'], correctAnswer: 1 }, 
    { question: 'k', answers: ['a', 'b', 'c'], correctAnswer: 1 } ], 
    'data.users': [] 
} 

我得到我的GcmListener这样的数据:

@Override 
public void onMessageReceived(String from, Bundle data) { 
    //parse the data that come from server 
} 

我怎么能这个数据解析到一个对象?我无法找到这么多的信息,我正在寻找这个小时。

谢谢。


已解决。这篇文章帮助我在服务器中使用了JSON.stringfiy。

http://www.javacodegeeks.com/2011/01/android-json-parsing-gson-tutorial.html

回答

4

这是使用JSONObject一个基本的例子:

@Override 
public void onMessageReceived(String from, Bundle data) { 

    String myJSONString = data.getString("myJSON"); 

    JSONObject myJson = new JSONObject(myJSONString); 

    int registration_id = myJson.optInt("registration_id "); 
    String time_to_live = myJson.optString("time_to_live"); 
} 
+1

我检查它。 – Lazy