在 兼容Android 6.0,您需要做的几件事儿!文章里面我总结了android M 及其以上会遇到的问题。这一篇就补充记录一个遗漏的问题,既安卓提供的加解密方式在7.0上的兼容问题。
在N系统上,当敲下这句话
SecureRandom sr = SecureRandom.getInstance("SHA1PRNG","Crypto");
且运行时,
系统会抛出这样一个异常:java.security.NoSuchProviderException: no such provider: Crypto
事实上,CryptoProvider已经在N上不能用来生成一个随机Key.
解决方法就是 我们自己实现一个CryptoProvider,这是第一步~
更加详细完整的可以点击这个链接 CryptoProvider.java
第二步,修改之前的代码写法
至此,这个问题得到解决~
注:写作此篇时候,参考了以下文章:
2.my.oschina.net/yaly/blog/856362
后记: 接下来一篇应该会写下 M系统上另外一个比较重要且常见的问题,既 FileUriExposedException。 关于安装M以及后续出来的O系统,我会持续更新和补充,谢谢各位读者同行~
网友评论