關於Android應用開發的一些安全注意事項

來源:互聯網
上載者:User

標籤:result   bug   use   support   stat   cal   views   receive   url   


原文地址: http://www.javacodegeeks.com/2014/05/simple-tips-to-secure-android-app.html

????????????????? http://developer.android.com/training/articles/security-tips.html


Android已經具有內建到作業系統的安全功能。顯著減少應用安全問題的頻次和影響,但作為應用程式開發人員,我們也須要注意在開發應用程式時的安全問題. 安全層級是取決於應用程式的類型和域. 這裡有我們須要注意的一些潛在的安全問題,我已經收集到了這篇文章中.


在這裡我列出來在開發應用中須要保護應用程式最常見的一些事項:

1.不要把私人或敏感性資料儲存在SD卡。

要儲存在內部儲存的檔案,請使用下面的模式(Context.MODE_PRIVATE)openFileOutput&openFileInput方法。假設你真的想將資料存放區在SD卡。然後對它進行加密使用.


2.通過標識exported flag 為false限制ContentProvider的使用,當然並不一定每一個應用中都這樣使用,僅僅是在沒有與其它應用互動的情況下要標識為false.


3.限制的WebView來訪問本機資料。

HTML5和相關技術已經普遍應用在移動Web應用程式或混合型(Hybird)應用程式。對於Hybrid採用的WebView從本機存放區顯示的HTML或從server擷取HTML和的其它內容。對於webview重大安全問題是setAllowFileAccess()和setAllowContentAccess()方法.


4.通過BroadCastReceiver和Intent不傳遞敏感資訊。使用LocalBroadcastManager的進程內/應用程式的廣播資料傳遞。

使用LocalBroadcastManager須要supportv4.jar.


5.不要在LogCat中列印敏感資訊。喜歡的username,password,Web服務的URL。請求或響應資訊等細節.


6.在應用上線前去除沒有必要的log日誌


7.不接收處理一些惡意偽造的Intent.在之前的BroadcastReceiver的方法的OnReceive()方法中收到的Intent。驗證調用者的包名,動作等資訊。



8.給Service加上相應的自己定義許可權.假設僅僅有自己的應用使用時能夠加上 exported = false(同ContentProvider).


9.限制Activity的訪問,.假設僅僅有自己的應用使用時能夠加上 exported = false.


10.應用公布之前確保debug mode 為false.


11.對於跨應用程式的功能,應用程式響應之前驗證調用.


12.server驗證方面能夠使用基於Https的訪問.


13.當你認為某些變數或者方法在Java層easy破解的時候,能夠把相應變數改為用JNI的方式去擷取


14.使用ProGuard 檔案混淆代碼


15.移除from AndroidManifest.xml中不必要的許可權.


16.慎用DexClassLoader 載入應用程式之外的dex檔案.


關於Android應用開發的一些安全注意事項

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.