3

我希望我的 android 应用程序只能安装在真实设备上,而 android-emulator 不能。如何限制我的 android 应用程序只能安装在真实设备上?感谢您的任何回复。

4

2 回答 2

0

不幸的是,您无法阻止人们在模拟器中安装,但如果您安装了Google Licensing,它将确保它不会在未经许可的设备上运行。

于 2012-01-10T08:26:03.593 回答
0

有一种方法可以处理它。只需检查设备 ID(IMEI 代码)。对于 emulator 它总是null,因此您可以定义有人尝试在真实设备或模拟器中启动它。

    TelephonyManager tm=(TelephonyManager )activity.getSystemService(Context.TELEPHONY_SERVICE);
    if(tm==null || !this.hasTelephony())
    {
        Log.v(TAG, "Can't get telephony service. Forcing shut down!");
        return false;
    }
    String deviceId=tm.getDeviceId();
    if(deviceId==null || deviceId.length() < 2)
    {
        Log.v(TAG, "Looks like emulator - bail out!");
        Toast.makeText(activity, "This special version not intended to run in this device!", 5000).show();
        return false;
    }
于 2012-01-10T08:42:23.057 回答