我试图使用SecureRandom的解决办法,谷歌发表在我的Android应用程序: http://android-developers.blogspot.com/2013/08/some-securerandom-thoughts.html如何检测SELinux是否在Android应用程序中启用?
此解决涉及写入(和读取)的/ dev/urandom的。但是,它看起来像三星启用SELinux的方式,防止应用程序访问/ dev/urandom。
我没有这些设备之一,所以对我来说测试解决方案有点困难,除了推出Android市场上的解决方法之外的尝试,但似乎这不是一个错误,我可以用try catch块捕获。它也似乎File.canRead和canWrite返回true。您可以在工作区看到我尝试在supportedOnThisDevice方法在下面的类: PRNGFixes.java
我正在寻找一个可靠的方式,如果我是这样的设备来检测,如果是这样,不适用的谷歌SecureRandom的解决方法。
什么返回值这种方法? – dkneller
isSELinuxSupported返回true(如果存在SELinux)或为false – user1546570
SELinux在我的一些设备上强制执行,但'ro.build.selinux'没有值,因此这是不可靠的。 –