【问题标题】:IMEI in Unity for AndroidUnity for Android 中的 IMEI
【发布时间】:2014-03-10 20:15:20
【问题描述】:

我可以在 Unity 中找到适用于 Android 的 IMEI 吗?

我找到了 Unity 的 Android_ID 示例:

AndroidJavaClass up = new AndroidJavaClass ("com.unity3d.player.UnityPlayer");
AndroidJavaObject currentActivity = up.GetStatic<AndroidJavaObject> ("currentActivity");
AndroidJavaObject contentResolver = currentActivity.Call<AndroidJavaObject> ("getContentResolver");  
AndroidJavaClass secure = new AndroidJavaClass ("android.provider.Settings$Secure");
string android_id = secure.CallStatic<string> ("getString", contentResolver, "android_id");

我可以用这种方法找到IMEI并修改这段代码吗?

我还在 Eclipse 中找到了查找 IMEI 代码的代码。

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String IMEI = tm.getDeviceId();

谁能帮忙? 谢谢!

【问题讨论】:

  • "并修改此代码?" 您的意思是更改设备的 IMEI..?不允许应用这样做。
  • 不,我的意思是修改您“计算”Android_ID 的代码以找到 IMEI :)

标签: android unity3d imei


【解决方案1】:

在 Android 上,您可以获得手机的 IMEI by using

string imei = SystemInfo.deviceUniqueIdentifier;

请注意,这需要将android.permission.READ_PHONE_STATE 设置为true。如果此权限不可用,则标识符将是不同的。

【讨论】:

    【解决方案2】:
    AndroidJavaObject TM = new AndroidJavaObject("android.telephony.TelephonyManager");
    
    string IMEI = TM.Call<string>("getDeviceId");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-20
      • 2019-03-27
      • 1970-01-01
      • 1970-01-01
      • 2018-12-15
      • 2021-11-30
      • 1970-01-01
      相关资源
      最近更新 更多