2015-06-30 100 views
0

例如,所有這些都可以保證爲應用程序返回相同的結果嗎?getExternalFilesDir()可以根據上下文返回不同的路徑嗎?

  • getApplicationContext().getExternalFilesDir()
  • this.getExternalFilesDir()thisSomeActivity
  • this.getExternalFilesDir()thisSomeOtherActivity
  • this.getExternalFilesDir()thisSomeService

對於類似的方法也是如此,例如getExternalCacheDir(),getFilesDir(),openFileOutput()等。

我想是的,它是基礎的單例應用程序上下文,它定義了應用程序存儲介質的位置。

+0

getExternalFilesDir()不會將Context對象作爲參數。他們都需要一個字符串作爲參數。 http://developer.android.com/reference/android/content/Context.html#getExternalFilesDir(java.lang.String) – Dekra

回答

0

所有這些保證能夠爲應用程序返回相同的結果嗎?

那麼,後三者將無法編譯。我假設你的意思是「該參數是我在此提及的ActivityService的實例」。

如果我的假設是正確的,那麼您引用的Context對象都不應該改變結果。但是,請記住,實際的路徑可能會根據運行您的應用的用戶而有所不同,適用於設置了2+帳戶的設備。

+0

那麼,所有四個將無法編譯,我匆忙把上下文作爲參數,而不是調用者。 :)我澄清了語法(但你的假設是正確的)。 – Dan

相關問題