我正在爲我的Facebook頁面創建一個Android應用程序。應用程序應該從Facebook頁面顯示隨機狀態(不只是最近的)。無論如何,我可以做到這一點?使用Facebook API從頁面讀取隨機狀態
-1
A
回答
1
我從來沒有做過任何這樣的事情,但我認爲你可以從中得到一些邏輯並使之起作用。
第1步:
請對Facebook的API的調用,得到的所有狀態更新,並在for
循環,將其添加到ArrayList<String>
。例如,Facebook以JSON格式返回其數據。我假設你已經知道如何獲取數據。您需要解析Facebook API調用返回的JSON數據中的「message」標記。
例如:
ArrayList<String> arrStatusMessage;
for (int i = 0; i < JAFeeds.length(); i++) {
JSONObject JOFeeds = JAFeeds.getJSONObject(i);
if (JOFeeds.has("message")) {
String strStatusMessage = JOFeeds.getString("message");
arrStatusMessage.add(strStatusMessage);
}
}
第2步:
一旦你有你的整個一套的Facebook狀態消息,你現在需要使用java.util.Random
實例。
例如:(請注意:我沒有測試此代碼,它可能會導致錯誤您可能要玩它有點讓它工作:-(。)
private static final Random randomGenerator = new Random();
int intRandom = randomGenerator.nextInt(arrStatusMessage.size());
String strRandomStatus = arrStatusMessage.get(intRandom);
步驟3:
使用strRandomStatus
到將其放置在TextView
,例如:
TextView txtRanStatus = (TextView) findViewById(R.id.txtRanStatus);
txtRanStatus.setText(strRandomStatus);
您還沒有發佈任何代碼,因此很難提供符合您的計劃的東西。但我認爲這應該讓你開始。你可能需要調整一些東西,並將它們放在你自己的代碼中。
希望這會有所幫助。
編輯:按照通過次OP評論,添加一些代碼位獲取的Facebook狀態消息:
啓動新的AsyncTask:
在onCreate()
方法
new getFacebookFeeds().execute();
我在我的應用程序中使用此方法使Facebook電話獲得所有供稿 Graph API。
private class getFacebookFeeds extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... params) {
String URL = "https://graph.facebook.com/me/home&access_token=ACCESS_TOKEN?limit=10";
try {
HttpClient hc = new DefaultHttpClient();
HttpGet get = new HttpGet(URL);
HttpResponse rp = hc.execute(get);
if (rp.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
String result = EntityUtils.toString(rp.getEntity());
// GET THE INTIAL RESULTS JSON ROOT
JSONObject JORoot = new JSONObject(result);
// GET THE "DATA" TAG FOR FEEDS ROOT
JSONArray JAFeeds = JORoot.getJSONArray("data");
for (int i = 0; i < JAFeeds.length(); i++) {
JSONObject JOFeeds = JAFeeds.getJSONObject(i);
if (JOFeeds.has("message")) {
String strStatusMessage = JOFeeds.getString("message");
arrStatusMessage.add(strStatusMessage);
}
}
}
} catch (Exception e) {
// TODO: handle exception
}
}
}
你可以做其餘的代碼,在那裏你選擇一個隨機的狀態更新,在AsyncTask
的onPostExecute()
如上圖所示:
@Override
protected void onPostExecute(Void result) {
int intRandom = randomGenerator.nextInt(arrStatusMessage.size());
String strRandomStatus = arrStatusMessage.get(intRandom);
txtRanStatus.setText(strRandomStatus);
}
聲明TextView
作爲全局變量然後將其丟在致電AsyncTask
之前,您的onCreate()
。我認爲這應該工作得很好。讓我知道事情的後續。 :-)
相關問題
- 1. 使用API從粉絲頁面獲取Facebook狀態
- 2. Facebook Api無法讀取所有狀態
- 3. Facebook API - 使用Oauth更新頁面狀態的應用程序
- 4. 如何通過圖形API獲取隨機臉書頁面的狀態
- 5. 如何使用REST API更新Facebook粉絲頁面狀態
- 6. 爲什麼我要爲Facebook頁面狀態讀取零值?
- 7. PHP post facebook頁面狀態
- 8. Facebook API獲取狀態
- 9. 從WP7頁獲取Facebook狀態更新
- 10. 使用Facebook C#SDK無法獲取頁面「like」狀態
- 11. 使用Graph API讀取Facebook頁面的牆壁 - 可能嗎?
- 12. 如何使用Graph API讀取Facebook粉絲頁面?
- 13. Facebook API圖 - 在Facebook上發佈狀態更新頁面
- 14. Facebook頁面得到用戶狀態
- 15. Facebook API - 如何使用Facebook API獲取頁面ID?
- 16. 如何從某個粉絲頁面獲取Facebook狀態更新?
- 17. 使用Facebook應用程序訪問令牌獲取Facebook粉絲頁面狀態
- 18. 從Facebook獲取Instagram帳戶頁面API
- 19. 使用Facebook API獲取我的Facebook狀態
- 20. 從facebook頁面獲取公共動態?
- 21. Facebook的狀態API
- 22. 爲Facebook頁面獲取頁面access_token(使用圖形API)
- 23. Python隨機使用狀態和種子?
- 24. 使用Shell從頁面獲取隨機鏈接
- 25. 隨機獲取AJAX狀態0
- 26. sklearn隨機狀態不隨機
- 27. 使用Facebook Graph API從公共頁面獲取「發佈計數」
- 28. 如何使用opengraph api從facebook頁面獲取所有事件
- 29. 使用Facebook Graph API從頁面獲取餐廳菜單
- 30. 使用Facebook API從頁面獲取事件列表(Javascript SDK)
你能告訴我如何獲取所有狀態?除此之外,你的答案總結了我必須做的一切。謝謝! – defiant
@oDx:給我幾分鐘時間爲你輸入。 –
謝謝隊友! :D – defiant