出于安全考虑,我想阻止模拟器使用我的应用程序。 我不希望我的应用程序安装在genymotion,bluestack,droidx等任何模拟器上......
我有一个应用程序,我们有提供墙,其中不包含Android应用程序,使用可以安装和赚取积分。一旦他们获得了一些积分,他们就可以使用paypal账户退出。
现在问题是一些用户正在通过代理或模拟器安装它。他们通过使用代理或模拟器赚取任何收入......
请帮忙..我遇到了大麻烦..
答案 0 :(得分:1)
我认为这会奏效。当您的应用开始时,请检查此方法。如果它返回true
,请退出您的应用。否则继续。它不会阻止安装,但肯定会阻止运行。
public static boolean isRunningOnEmulator()
{
boolean result=
Build.FINGERPRINT.startsWith("generic")
||Build.FINGERPRINT.startsWith("unknown")
||Build.MODEL.contains("google_sdk")
||Build.MODEL.contains("Emulator")
||Build.MODEL.contains("Android SDK built for x86")
||Build.MANUFACTURER.contains("Genymotion");
if(result)
return true;
result|=Build.BRAND.startsWith("generic") && Build.DEVICE.startsWith("generic");
if(result)
return true;
result|="google_sdk".equals(Build.PRODUCT);
return result;
}
更多信息是here