我正在製作社交媒體Android應用程序。第一次打開應用程序時,用戶需要註冊或登錄。現在,顯然,我想存儲該登錄信息,以便用戶每次啓動應用程序時都不必登錄。我可以簡單地將登錄詳細信息存儲在SharedPreferences中,但我聽說過SyncAdapter,這是SyncAdapter的主要用途(也用於後臺同步)。我不需要後臺同步。 SyncAdapter如何工作?因爲我使用的是Java服務器來保存在線數據庫的數據,所以我怎麼配置Java服務器來爲任何需要的oAuth。我不要想訪問其他網絡(Facebook,Twitter等)的數據。我希望用戶使用電子郵件,用戶名和密碼進行註冊。沒有其他要求。 SharedPreferences是更好的選擇嗎?我是否需要爲我的應用使用SyncAdapter?
回答
你不需要在SharedPreferences
中保存用戶的登錄細節你可以做的是讓用戶登錄到你的服務器,當登錄成功時返回一個token
到android應用程序。將該令牌保存到SharedPreferences
,然後您必須檢查sharedPreferences
是否有有效令牌。如果有有效令牌,那麼讓用戶使用應用程序,如果token
無效或null
重定向用戶登錄屏幕。 我希望這會對你有所幫助。
更新 您可以使用JWT令牌。這是一個有用的資源,爲https://auth0.com/blog/refresh-tokens-what-are-they-and-when-to-use-them/。您需要使用JWT Auth流程來探索REST API。
在這裏有很多問題很安靜。
1st:保存登錄狀態,以便您不要求用戶再次登錄。
是的,你可以在SharedPreferences
第二個做到這一點:如何將同步適配器的工作?
開發商網站對此非常清楚。你可以看看here。
第3:如何配置您的應用程序以調用java服務器?
您可以簡單地使用AsyncTask
並調用API。或者爲更好的性能和無錯誤的電話,你可以使用Retrofit
我希望我的答案有幫助。
如何在SharedPreferences中存儲登錄信息是我的問題。保存用戶名和密碼顯然不安全。我知道如何使用AsyncTask進行HTTP連接,我的問題是如何發送令牌或在我的服務器上使用oAuth。 –
- 1. 我是否需要爲我的應用程序創建線程?
- 2. 我是否需要使用MultipleIterator的foreach?
- 3. 我是否需要使用ReaderWriterLockSlim的MemoryBarrier?
- 4. 我是否需要爲響應菜單使用JQuery插件?
- 5. 我是否需要Oauth2用於我的Web應用程序API
- 6. 我是否需要使用MultipleActiveResultSets feautre?
- 7. 我是否需要使用「document.getElementById」
- 8. 我是否需要使用合成
- 9. AngularJS - 我是否需要$作用域$使用$ http時應用
- 10. 如果我使用CAKEphp,我是否也需要使用smartytemplates?
- 11. 我是否需要調用Form.Close(),還是爲我處理?
- 12. 我是否需要調用EasyTracker.getInstance(this);每次我需要easyTracker?
- 13. 我是否需要調用MessageBox調用?
- 14. 我是否需要在我的web應用程序上使用ssl?
- 15. 我是否需要在我的sinatra應用程序中使用activerecord?
- 16. 我是否需要將我的「應用程序」公開才能使用FB SDK
- 17. 我是否真的需要爲Django使用服務器應用程序?
- 18. 我是否應該問網站是否需要將他們的rss提要用作我應用的數據?
- 19. 我是否需要爲此應用排序算法?
- 20. 我是否需要爲WinRT應用程序創建縮略圖
- 21. 我是否需要爲iphone應用程序購買服務器?
- 22. 我們是否需要應用層單頁應用程序
- 23. 我是否需要爲簡單的網站使用Web框架?
- 24. 我是否需要爲C++中的每個新建使用delete?
- 25. 如果我使用JQuery,是否需要使用BluePrint的ie.css?
- 26. 如果我的應用程序只需要一次購買項目,我是否需要使用「購買」功能?
- 27. 我是否仍然需要爲algorithm :: join使用boost?
- 28. 我是否需要將端口註冊爲與ICANN「使用中」?
- 29. 我是否需要爲此作業使用臨時值?
- 30. 我是否需要爲OpenGL 3.3核心使用着色器?
它有點幫助我。我如何檢查令牌的有效性?有沒有一個標準的方法來做到這一點? –
@SakshamChawla我已經更新了我的回答 –