Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了在android(UUID)中生成唯一ID大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
几个月来,我一直在使用一个类来生成一个在reintalls之间稳固的UUID.我的应用程序是关于折扣,所以我依靠这个UUID来限制每台设备的优惠券数量.

protected void getdeviceid(){
    try {
        Context context = cordova.getActivity().getApplicationContext();
        Telephonymanager tm = (Telephonymanager) context.getSystemservice(Context.TELEPHONY_serviCE);

        String uuid;
        String androidID = Secure.getString(context.getContentResolver(),Secure.ANDROID_ID);
        String deviceid = tm.getdeviceid();
        String simID = tm.getSimserialnumber();

        if ("9774d56d682e549c".equals(androidID) || androidID == null) {
            androidID = "";
        }

        if (deviceid == null) {
            deviceid = "";
        }

        if (simID == null) {
            simID = "";
        }

        uuid = androidID + deviceid + simID;
        uuid = String.format("%32s",uuid).replace(' ','0');
        uuid = uuid.subString(0,32);
        uuid = uuid.replaceAll("(\\w{8})(\\w{4})(\\w{4})(\\w{4})(\\w{12})","$1-$2-$3-$4-$5");

        this.callBACkContext.success(uuid);
    }catch(Exception e ) {
        this.callBACkContext.error("Exception occurred: ".concat(e.getmessage()));
    }
}

这是我如何生成我的uuid的核心.事情是这个周末有人使用XT1032和Android 5.1能够在每次安装应用程序后重新生成不同的UUID,获得免费优惠券.我使用的这种方法可以以某种方式欺骗?也许用扎根手机?我在盲人中射击.我需要能够在安装之间创建可靠的UUID.

解决方法

您的UUID取决于三个不同的ID,所有ID都可以轻松更改.没有办法确定这是否是原因,但在这里查看代码

SSN(SIM序列号)
getSimSerialNumber()获得附加的SIM卡的SSN.为同一设备生成不同UUID的简单方法是插入不同的SIM卡.我所知道的是繁琐的,但仍然可行.

IMEI / MEID
getDeviceId()返回IMEI或MEID.另一种方法是更改​​设备的IMEI.如果你只是谷歌“改变手机IMEI没有根”你会得到大量可行的结果.这可能是一种更简单的方法(如果是自动化的).

Android设备ID
ANDROID_ID根据每次手机恢复时的文档更改.因此,@L_674_25@只需通过恢复手机即可更改UUID.

由于您的UUID基于三个独特的ID链,因此欺骗系统就像链中最薄弱的环节一样简单. ANDROID_ID是这个链中最强的链接,我建议你只使用它.作为替代方案,请参阅此link.

大佬总结

以上是大佬教程为你收集整理的在android(UUID)中生成唯一ID全部内容,希望文章能够帮你解决在android(UUID)中生成唯一ID所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。