假設Application中的getApplicationContext和AbstractThreadedSyncAdapter中的getContext返回相同的對象是否安全?如果其他情況下,我們從活動,服務......獲得的環境都屬於同一個應用程序。謝謝。Android Activity/Application/Service的上下文是否屬於同一個應用程序?
4
A
回答
3
不,他們不是。這裏是jist:
應用程序 - 是在您的應用程序 進程中運行的單例實例。可以通過諸如來自 活動或服務的getApplication()和來自從上下文繼承的任何其他對象 的getApplicationContext()來訪問它。無論在哪裏或如何訪問 ,您都將始終從 進程中收到相同的實例。
活動/服務 - 從ContextWrapper繼承,它實現了 相同的API,但將其所有方法調用代理到隱藏的內部 上下文實例,也稱爲其基本上下文。每當 框架創建一個新的活動或服務的實例,它也創造 新ContextImpl實例來完成所有的繁重,要麼 組件將包裹的。每個活動或服務及其對應的基本上下文都是唯一的每個實例。
這篇文章確實有助於明確一下:https://possiblemobile.com/2013/06/context/
相關問題
- 1. Android:應用程序是否只有一個上下文對象
- 2. 單一上下文是否適用於Appcelerator應用程序?
- 3. 無論類是否應用程序上下文總是相同?
- 4. 如何編寫一個模板標籤,顯示用戶是否屬於應用程序,而該應用程序不屬於上下文的一部分?
- 5. Android應用程序上下文是否被破壞?
- 6. 將NSManagedObjectID從一個上下文用於另一個上下文是否安全?
- 7. 如何訪問另一個Web應用程序中的一個Web應用程序上下文上下文
- 8. Android應用程序上下文參數
- 9. Android Webview應用程序上下文
- 10. 什麼是下載一個文件在Android應用程序
- 11. 查詢文件是否存在於不同的應用程序
- 12. 保持對Android應用程序上下文的引用是否安全?
- 13. android:檢測應用程序是否從市場上下載
- 14. 一個應用程序的多個上下文根目錄
- 15. 如果上下文不是活動上下文但是應用程序上下文如何啓動一個Intent
- 16. android確定活動上下文或應用程序上下文
- 17. 停止屬於Android上的另一個應用程序的服務
- 18. Android上下文菜單(類似於音樂應用程序)
- 19. 檢查一個特定的應用程序是否可用於Android設備
- 20. 一個用於實時數據上傳的android應用程序
- 21. Android java應用程序在一個版本上工作,但不是下一個
- 22. 如何檢查兩個Web應用程序的用戶是否屬於同一個網絡/ LAN /域
- 23. 是否有可能一個android應用程序發送點擊到另一個打開的android應用程序?
- 24. 同一個應用程序的兩個進程是否在同一個VM上運行?
- 25. 應用程序上下文和spring上下文是一樣的嗎?
- 26. 是否可以從其他應用程序卸載一個Android應用程序?
- 27. 多個應用程序文件在一個Android應用程序
- 28. db.session.commit是否在Flask-SQLAlchemy中更改應用程序上下文?
- 29. EAR應用程序名稱和上下文根目錄是否相同?
- 30. 向AppStore提交Watchkit應用程序 - 我是否創建一個新應用程序,或者它是否屬於我的iPhone應用程序
謝謝你,這是非常豐富。你知道AbstractThreadedSyncAdapter中的上下文嗎?根本沒有默認實現的文檔http://developer.android.com/reference/android/content/AbstractThreadedSyncAdapter.html#getContext%28%29 – hixhix
你必須傳遞一個上下文給它,所以它取決於哪個你通過的上下文 – Sree
哇@Sree,非常非常文章。我想我必須去解決我的應用程序中的一些陷阱:) – Snake