我的應用程序具有在服務器上發送一些內容並(需要)在Facebook上發佈內容的功能。它使用服務進行發送(對於存儲數據,我使用sqlite)。是否有可能從服務處理facebook會話e.t.c?我需要它,因爲時間內容將被存儲在數據庫中,並且發送時間可能不同(可能連接將在很長時間內丟失並且在連接可用後開始發送,但是隻有發送服務的應用程序在此處處於活動狀態時間)。我找不到這種情況下的任何解決方案(好的解決方案會很棒)。請幫忙。使用來自服務的Facebook android sdk
5
A
回答
4
用戶必須明確授予應用程序權限,並且Android服務不支持Activity.startActivityForResult(),因此無法通過服務重新授權來打開會話或添加新權限。
但是,如果您在應用程序的其中一個活動中打開/重新授權會話,則默認情況下會話的狀態將保存到SharedPreferences。如果一個服務在發生這種情況後創建一個Session,它將在SessionState.CREATED_TOKEN_LOADED中結束。如果Session.getState()爲CREATED_TOKEN_LOADED,則會話保證能夠在沒有UI的情況下使用openForRead(),並且傳遞空Activity是合法的。會話將擁有由您的活動保存的所有授予的權限。
爲了簡化這一切,你的服務可以叫:
Session session = Session.openActiveSession(this);
該調用返回null,如果沒有有效的標記是SharedPreferences。
如果您的應用UI有一個設置區域,首先獲取令牌的簡單方法是將LoginFragment作爲其中一個設置面板。這可以讓你的用戶登錄/註銷,並且應該保存會話狀態,以便你的服務可以在同一個應用中使用它。
相關問題
- 1. 使用來自打字稿的Facebook SDK
- 2. 使用來自webservice的訪問令牌的Android facebook SDK 3.0後
- 3. 使用Facebook-android-sdk
- 4. facebook sdk for android-認證服務示例
- 5. 如何使用Facebook SDK 4.0發佈來自Android應用的Facebook更新?
- 6. 如何在JavasScript SDK中設置Facebook訪問(來自服務器)
- 7. 使用Android Facebook SDK的keytool
- 8. 使用來自Android SDK的ic_menu *圖標
- 9. Facebook C#SDK與WCF服務
- 10. 來自Android服務的URL調用
- 11. 來自BroadcastReceiver的Android調用服務
- 12. 來自Facebook SDK的跟蹤安裝來自Facebook
- 13. Android的Facebook專輯使用Facebook的Android顯示Android Android的SDK
- 14. Facebook Android SDK自動登錄
- 15. Android:使用Facebook的SDK與Android 2.2
- 16. android-自動登錄facebook facebook sdk
- 17. 來自iOS的Facebook SDK錯誤2
- 18. 使用來自Android應用程序的WCF服務
- 19. 如何使用android sdk只顯示來自Facebook的羣組列表?
- 20. 錯誤使用Android的Facebook的SDK
- 21. Android SDK上的Facebook SDK
- 22. 與android應用程序和web服務器一起使用facebook sdk
- 23. 如何在Android中使用Facebook SDK的Open Graph來喜歡Url
- 24. 使用python sdk過濾來自facebook ads api的統計數據
- 25. 使用來自服務的JSON數據
- 26. java.exe的使用Facebook的SDK
- 27. 來自服務的持續android通知
- 28. Android WebSocket,來自服務器的數據
- 29. 來自Android的REST服務:400例外
- 30. 來自android服務的多重發送