在?兼容Android 6.0虫碉,您需要做的幾件事兒!文章里面我總結(jié)了android M 及其以上會(huì)遇到的問題柠横。這一篇就補(bǔ)充記錄一個(gè)遺漏的問題紊扬,既安卓提供的加解密方式在7.0上的兼容問題。
在N系統(tǒng)上,當(dāng)敲下這句話
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG","Crypto");
且運(yùn)行時(shí)宴抚,
系統(tǒng)會(huì)拋出這樣一個(gè)異常:java.security.NoSuchProviderException: no such provider: Crypto
事實(shí)上弟胀,CryptoProvider已經(jīng)在N上不能用來生成一個(gè)隨機(jī)Key.
解決方法就是 我們自己實(shí)現(xiàn)一個(gè)CryptoProvider,這是第一步~
更加詳細(xì)完整的可以點(diǎn)擊這個(gè)鏈接?CryptoProvider.java
第二步运悲,修改之前的代碼寫法
至此违崇,這個(gè)問題得到解決~
注:寫作此篇時(shí)候,參考了以下文章:
2.my.oschina.net/yaly/blog/856362
后記:? 接下來一篇應(yīng)該會(huì)寫下 M系統(tǒng)上另外一個(gè)比較重要且常見的問題巩步,既 FileUriExposedException。 關(guān)于安裝M以及后續(xù)出來的O系統(tǒng)鲸湃,我會(huì)持續(xù)更新和補(bǔ)充,謝謝各位讀者同行~