1. 使用 RESTful API 将数据从 App 传递到服务器。
如果您想将数据从客户端应用程序发送到服务器应用程序,您可以直接使用传统的 Web 应用程序技术将其 POST 到您的服务器。
然后,您的服务器可以将消息发布到您的客户端应用程序订阅的 PubNub 频道。
2. 使用 PubNub 数据网络从服务器检索数据到应用程序。
您可以使用利用许多 PubNub 功能的 pubnub-android-Lolli-chat 应用程序。
git repo
https://github.com/GleasonK/pubnub-android-lolli-chat
http://kevingleason.me/pubnub-android-lolli-chat/
使用流动代码从 PubNub 检索数据:
pubnub.history(this.channel,100,false,new Callback() {
@Override
public void successCallback(String channel, final Object message) {
try {
JSONArray json = (JSONArray) message;
Log.d("History", json.toString());
final JSONArray messages = json.getJSONArray(0);
final List<ChatMessage> chatMsgs = new ArrayList<ChatMessage>();
for (int i = 0; i < messages.length(); i++) {
try {
if (!messages.getJSONObject(i).has("data")) continue;
JSONObject jsonMsg = messages.getJSONObject(i).getJSONObject("data");
String name = jsonMsg.getString(Constants.JSON_USER);
String msg = jsonMsg.getString(Constants.JSON_MSG);
long time = jsonMsg.getLong(Constants.JSON_TIME);
ChatMessage chatMsg = new ChatMessage(name, msg, time);
chatMsgs.add(chatMsg);
} catch (JSONException e) { // Handle errors silently
e.printStackTrace();
}
}
MainActivityPubnub.this.runOnUiThread(new Runnable() {
@Override
public void run() {
// Toast.makeText(MainActivityPubnub.this,"RUNNIN",Toast.LENGTH_SHORT).show();
mChatAdapter.setMessages(chatMsgs);
}
});
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void errorCallback(String channel, PubnubError error) {
Log.d("History", error.toString());
}
});