2011-09-28 29 views
1

在CookieSyncManager.createInstance()調用中使用應用程序上下文而不是活動上下文是一個好主意嗎?使用CookieSyncManager.createInstance中的應用程序或活動上下文

CookieSyncManager.createInstance(activity.getApplicationContext()); 

在Facebook的SDK,它使用活動情境,我認爲這會導致內存泄漏:

CookieSyncManager.createInstance(activity); 

所以我決定將它更改爲CookieSyncManager.createInstance(activity.getApplicationContext());

在這種情況下使用應用程序上下文有任何問題嗎?

謝謝。

回答

3

老問題,但我只是在尋找同樣的事情。

原來,Context你在createInstance()中提供它並不重要,因爲它在內部只需提供context並調用getApplicationContext()就可以了。所以無論如何它最終都會使用應用程序上下文。這裏是source code

我對此很好奇,因爲我不確定CookieSyncManager類是否會同步/保存整個應用程序中的所有Cookie,或者只是創建它的Activity中的那些(如果您只提供活動上下文而不是應用上下文)。但即使知道它在內部使用應用程序上下文後,我仍然不確定這一點。

我真的希望文檔能夠更清楚地瞭解他們想要/期望的上下文級別。

相關問題