在我的登錄應用程序中導入嚴格模式有一些疑問。如果我在我的代碼中啓用此功能,如果在我的密碼中使用strictmode,登錄的安全性是否會降低?
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
我的登錄中的安全功能會減弱嗎?或者我應該只使用異步任務?
在我的登錄應用程序中導入嚴格模式有一些疑問。如果我在我的代碼中啓用此功能,如果在我的密碼中使用strictmode,登錄的安全性是否會降低?
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
我的登錄中的安全功能會減弱嗎?或者我應該只使用異步任務?
由於android版本3.0在主ui線程中使用網絡相關代碼有一些限制,因爲它會導致ANR。因此,通過將嚴格模式線程策略放入您的代碼中,您違反了此限制,您可以在主線程中使用與網絡相關的代碼,這不會影響您的登錄功能。
這條線是什麼意思?因此,通過將嚴格模式線程策略放入您的代碼中,您違反了此限制,並且您可以在主線程中使用與網絡相關的代碼, – Twister 2012-08-13 04:13:06
正如我之前在andriod 3.0中所說的那樣,沒有從主UI線程進行網絡調用,如果您嘗試這樣做會得到一個例外,如果你真的需要在ui線程上調用網絡,你可以通過獲得操作系統的權限來執行此操作,如上面的代碼 – Rakshi 2012-08-13 04:16:03
是的。因爲我運行使用android 3.0,並有網絡異常。這就是爲什麼我嘗試使用這種嚴格的模式。 因此,我使用此代碼只是關閉它,以便我的登錄應用程序可以工作,所有? – Twister 2012-08-13 04:24:52
根據the documentation,StrictMode.ThreadPolicy
的默認策略是LAX
「......它什麼也沒有捕獲」。因此,除非事先設置了非默認策略,否則您的代碼不應該改變任何內容。
不!它只是一個**診斷工具**,應該在開發過程中使用它,而不是在已發佈的應用程序中使用。 – adatapost 2012-08-13 04:14:29