Qt for Android获取手机序列号
16lz
2021-01-23
在 Qt 项目中通过 jni 接口调用 Android 原生接口来获取相应的值。
java文件
package com.qt.useJava;import android.os.Build;import java.lang.reflect.Method;public class MainActivity extends org.qtproject.qt5.android.bindings.QtActivity{ // 获取手机序列号 private static String getSerialNumber(){ String serial = ""; try { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {//9.0+ serial = Build.getSerial(); } else if (Build.VERSION.SDK_INT > Build.VERSION_CODES.N) {//8.0+ serial = Build.SERIAL; } else {//8.0- Class<?> c = Class.forName("android.os.SystemProperties"); Method get = c.getMethod("get", String.class); serial = (String) get.invoke(c, "ro.serialno"); } } catch (Exception e) { e.printStackTrace(); Log.e("e", "读取设备序列号异常:" + e.toString()); } return serial; }}
Qt调用手机序列号接口
// 获取手机序列号QString CJniInteractive::get_Serival_Number(){ QAndroidJniObject string = QAndroidJniObject::callStaticObjectMethod("com/qt/useJava/MainActivity", "getSerialNumber", "()Ljava/lang/String;"); return string.toString();}
权限
在AndroidManifest.xml文件中添加权限android.permission.READ.PHONE.STATE
更多相关文章
- Ubuntu 14.04烧Nexus 5手机
- Android 获取手机信息
- Android之获取手机信息
- android 判断手机是否插入SIM卡
- 解决魅族手机在下拉刷新的时候出现hold
- Android 之父的手机公司,关了
- Qt for Android 调用android原生接口分享图片或文字
- Android中的数据传递之Parcelable接口