NDK JNIEnv *env; jobject context; /* then call (with error-checking) */ jclass cls = (*env)->FindClass(env, "android/context/Context"); jmethodId mid = (*env)->GetMethodID(env, context_cls, "getSystemService", "(Ljava/lang/String;)Ljava/lang/Object;"); jfieldID fid = (*env)->GetStaticFieldID(env, cls, "TELEPHONY_SERVICE", "Ljava/lang/String;"); jstring str = (*env)->GetStaticObjectField(env, cls, fid); jobject telephony = (*env)->CallObjectMethod(env, context, mid, str); cls = (*env)->FindClass(env, "android/telephony/TelephonyManager"); mid =(*env)->GetMethodID(env, cls, "getDeviceId", "()Ljava/lang/String;"); str = (*env)->CallObjectMethod(env, telephony, mid); jsize len = (*env)->GetStringUTFLength(env, str); char* deviceId = calloc(len + 1, 1); (*env)->GetStringUTFRegion(env, str, 0, len, deviceId); (*env)->DeleteLocalRef(env, str); /* to get a string in deviceId */ java code:
TelephonyManager manager = (TelephonyManager) context .getSystemService(Context.TELEPHONY_SERVICE); if (manager != null) { str_uniqueID = manager.getDeviceId(); }
Android — get MEID
最新推荐文章于 2023-06-28 16:33:03 发布