2013-03-12 56 views
3

我想阻止用戶註冊模擬器,所以如何確定apk是否在模擬器或真實設備上運行?謝謝!如何確定apk是否在模擬器或真實設備上運行?

+0

或許檢查,如果谷歌Play是安裝?在模擬器中安裝Google Play非常困難 – 2013-03-12 02:33:15

+1

還沒有嘗試過任何解決方案,但[從這裏開始](http://stackoverflow.com/questions/2799097/how-can-i-detect-when-an -Android-應用被運行 - 內式仿真器)。請記住,沒有方法是充分的證據。 – 2013-03-12 02:33:26

+1

也許這將有助於: [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

回答

0

您可以檢查硬編碼爲模擬器的設備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" /> 
0

試試這個

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(); 
       } 
相關問題