3
我想阻止用戶註冊模擬器,所以如何確定apk是否在模擬器或真實設備上運行?謝謝!如何確定apk是否在模擬器或真實設備上運行?
我想阻止用戶註冊模擬器,所以如何確定apk是否在模擬器或真實設備上運行?謝謝!如何確定apk是否在模擬器或真實設備上運行?
您可以檢查硬編碼爲模擬器的設備ID。 對於檢查:
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
Log.e("id", telephonyManager.getDeviceId());
而且結果應該是這樣的:
03-12 09:50:08.043: E/id(447): 000000000000000
隨着許可
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
試試這個
if (Build.BRAND.equalsIgnoreCase("generic")) {
Toast.makeText(getBaseContext(), "YES, I am an emulator", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(getBaseContext(), "NO, I am NOT an emulator", Toast.LENGTH_LONG).show();
}
或許檢查,如果谷歌Play是安裝?在模擬器中安裝Google Play非常困難 – 2013-03-12 02:33:15
還沒有嘗試過任何解決方案,但[從這裏開始](http://stackoverflow.com/questions/2799097/how-can-i-detect-when-an -Android-應用被運行 - 內式仿真器)。請記住,沒有方法是充分的證據。 – 2013-03-12 02:33:26
也許這將有助於: [http://stackoverflow.com/questions/2799097/how-can-i-detect-when-an-android-application-is-running-in-the-emulator] [ 1] [1]:http://stackoverflow.com/questions/2799097/how-can-i-detect-when-an-android-application-is-running-in-the-emulator – jackgris 2013-03-12 02:34:45