3

我正在开发一个 Android 应用程序,但我想限制我的应用程序只能由未运行根/自定义 ROM 的硬件访问。我知道 Android 的前向锁定内容保护,但想在我的应用程序中仔细检查这种保护。有没有办法使用android API获取设备的签名以及ROM的可信签名,以便我将我的应用程序锁定在自定义ROM之外?

4

3 回答 3

7

抱歉,我想不出万无一失的方法。ROM 或 root 的要点是您可以更改任何您想要的内容。因此,没有任何 Android API 调用是安全的,例如没有任何调用可以 100% 让您知道您在合法设备上运行。

更新:查看Google Safety Net,它可以让您确保设备未被修改。根据我的阅读,安全网应该让您检查设备是否与谷歌所说的正确的“android”API“兼容”

于 2010-10-02T00:30:15.833 回答
2

这个问题有一些关于确定设备是否正在运行自定义 ROM 的信息:

如何找出ROM提供者是谁?

于 2012-02-07T20:02:24.830 回答
0
System.getProperty("os.version"); // OS version
android.os.Build.VERSION.SDK      // API Level
android.os.Build.DEVICE           // Device
android.os.Build.MODEL            // Model 
android.os.Build.PRODUCT          // Product

使用它,然后将其与谷歌股票图片进行比较

于 2013-07-02T13:16:13.213 回答