object DeviceUtil {
/**
* 退出 APP
*/
fun exitApp() {
Timer().schedule(500) {
//获取PID,目前获取自己的也只有该API,否则从/proc中自己的枚举其他进程吧,不过要说明的是,结束其他进程不一定有权限,不然就乱套了。// 建议使用
Process.killProcess(Process.myPid())
}
}
/**
* 获取设备唯一 ID
* @param context 上下文
* @return 设备唯一 ID
*/
fun getUniqueId(context: Context): String {
// 不选用需要权限的获取 ID 方式
val data = getAndroidId(context) + getSerialNumber() + getUniquePsuedoId() + getUuid(context)
return EncryptUtil.md5(data).toUpperCase(Locale.CHINA)
}
/**
* 获取 UUID
* @param context 上下文
*/
private fun getUuid(context: Context): String {
// UUID 键
val key = "key_uuid"
// 获取 SharedPreferenc