Android 10中获取IMEI号的方法如下:
import android.content.Context;
import android.telephony.TelephonyManager;
public class MainActivity extends AppCompatActivity {
private TelephonyManager telephonyManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取TelephonyManager实例
telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
// 检查是否授权获取读取电话状态权限(运行时权限)
if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
// 如果没有授权,则请求权限
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 1);
} else {
// 已经有权限,直接获取IMEI号
String imei = telephonyManager.getDeviceId();
Log.d("IMEI", imei);
}
}
}
请注意,为了使用上述代码,你需要在AndroidManifest.xml文件中添加以下权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
import android.content.Context;
import android.provider.Settings;
import android.util.Log;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 获取设备唯一标识符
String androidId = Settings.Secure.getString(getContentResolver(), Settings.Secure.ANDROID_ID);
Log.d("Device ID", androidId);
}
}
这种方式获取的是设备的Android ID,它是一个64位的十六进制字符串。请注意,如果设备进行出厂设置恢复,该值可能会被重置。
推荐的腾讯云产品链接: 腾讯云移动分析(MTA):https://cloud.tencent.com/product/mta 腾讯移动推送(XG Push):https://cloud.tencent.com/product/tpns
领取专属 10元无门槛券
手把手带您无忧上云