我想調用內部MainActivity的方法時由的onMessage()內部GCMIntentService.java,所述的onMessage(接收到新的消息)呼叫被叫blinkLED(方法)內的MainActivity.java所以blinkLED()方法可以使用接收到的數據onMessage(),我該怎麼實現呢?示例代碼將會很有幫助。從GCM的onMessage()
2
A
回答
6
使用BroadcastReceiver。 tutorial向您展示瞭如何從類發送廣播意圖,並讓其他類處理它。
短的例子,在你的GCMIntentService ::的onMessage(),你可能有這樣的:
Intent intent = new Intent();
intent.setAction("com.my.app.blinkled");
sendBroadcast(intent);
在MainActivity
然後,您實現一個BroadcastReceiver:
private class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
blinkLED();
}
}
,併爲它註冊MainActivity的onResume():
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("com.my.app.blinkled");
receiver = new MyBroadcastReceiver();
registerReceiver(receiver, intentFilter);
+0
謝謝。你的答案適合我 –
相關問題
- 1. Android GCM onMessage
- 2. Android GCM:從onMessage調用Web服務()
- 3. gcm onMessage()被調用但數據爲空...?
- 4. 在GCM onMessage中顯示對話框()
- 5. 我無法打開Android中的GCM onMessage對話框
- 6. GCM:來自GCMIntentService的onMessage()被多次調用?
- 7. GCM - 永遠不要通過Android 4.0設備輸入onMessage()設備
- 8. Android Gcm onMessage()..在某些設備上收到「null」爲什麼?
- 9. 從GCM
- 10. 的onMessage事件從未被稱爲
- 11. UDP的OnMessage()功能
- 12. 檢查GCM onMessage事件期間應用程序是否已打開?
- 13. javascript websocket onmessage event.data
- 14. Chrome擴展OnMessage
- 15. Websocket onMessage Lock
- 16. 如何從GCM
- 17. 從onMessage讀取完整數據流
- 18. 如何從onmessage回調創建observable?
- 19. 的WebSocket的onMessage不點火
- 20. 監聽器onMessage JAVA
- 21. 獲取OnMessage()的值websocket
- 22. 從C2DM到GCM的移植
- 23. GCM:獲取已註冊的ID從GCM服務器
- 24. GAE頻道api解析onmessage
- 25. WebSocket頻繁onmessage zero-copy
- 26. onmessage Google App Engine(Java)Channel API
- 27. OnMessage事件到STA線程
- 28. 從GCM消息獲取ID
- 29. 如何從GCM獲得regid?
- 30. 從Java或JS POST到GCM
爲什麼要在GCMIntentService中調用blinkLED()方法?最好的方法是使用SharedPreferences爲sotring值並調用blinkLED()或從Activity上的SharedPreferences獲取值onResume以顯示活動開始時的最新值 –