Android - 设备的DeviceId

Android设备的DeviceId是设备的唯一标识, 作为设备激活的重要依据.

有些设备无法获取DeviceId, 如红米note. 为了保证标识唯一, 使用UUID替代.



代码

        // deviceId可能为空, 如红米note
        String deviceId = telephonyManager.getDeviceId();
        if (deviceId.equals("")) {
            String uuid = PreferenceUtils.getFrom(PedometerApp.getInstance(), PREF,
                    UUID_PREF, "");
            if (uuid.equals("")) {
                deviceId = UUID.randomUUID().toString();
                PreferenceUtils.setTo(PedometerApp.getInstance(), PREF,
                        UUID_PREF, deviceId);
            } else {
                deviceId = uuid;
            }
        }


版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-13 20:16:33

Android - 设备的DeviceId的相关文章

获取Android设备唯一标识码

概述 有时需要对用户设备进行标识,所以希望能够得到一个稳定可靠并且唯一的识别码.虽然Android系统中提供了这样设备识别码,但是由于Android系统版本.厂商定制系统中的Bug等限制,稳定性和唯一性并不理想.而通过其他硬件信息标识也因为系统版本.手机硬件等限制存在不同程度的问题. 下面收集了一些“有能力”或“有一定能力”作为设备标识的串码. DEVICE_ID 这是Android系统为开发者提供的用于标识手机设备的串号,也是各种方法中普适性较高的,可以说几乎所有的设备都可以返回这个串号,并且

关于如何惟一的标识一台Android设备的总结性讨论

想必大家在开发Android项目的时候,多多少少会遇到“如何惟一地标识一台Android设备”等类似的问题.不只是以前,即使是现在乃至可以预见的将来,这个问题都将一直存在. 如果大家使用搜索工具搜索的话,大家也能够找到很多的解决方案,但每种方式都多多少少有些缺陷. 我在这里呢,将向大家解释一下诸多常见方案的不足之处,以及推荐一种相对而言比较靠谱的方法. 首先先要说明一下Android设备的情况.我们大家都知道,在起初的时候,Android设备仅仅意味着是“手机”.如果情况一直是这样就好了.可是事

可显示Android设备选择列表,并进入指定Android设备Console的Shell脚本

如果PC上连接多部Android设备(包括Android模拟器),在进入Console时还需要使用adb -s deviceid shell.比较麻烦,本文为此编写了一个Shell脚本文件(需要在Linux或OS X下才能使用,windows下需要用bat或cmd从新编写).      基本思路时先用adb devices命令扫描有多少Android设备连接到PC上,然后从返回值中截取设备名称,并显示一个菜单.最后用户可以选择菜单项前面的序号进入指定的Android设备.无需再输入devicei

一起学android之如何获取Android设备的唯一识别码笔记(21)

因为需要在项目中需要获得一个稳定.可靠的设备唯一识别码,因此搜了一些网上的资料.今天我们将介绍几种方式. 1. DEVICE_ID 假设我们确实需要用到真实设备的标识,可能就需要用到DEVICE_ID.在以前,我们的Android设备是手机,这个 DEVICE_ID可以同通过TelephonyManager.getDeviceId()获取,它根据不同的手机设备返回IMEI,MEID或者ESN 码,但它在使用的过程中会遇到很多问题: 非手机设备: 如果只带有Wifi的设备或者音乐播放器没有通话的硬

Android设备标识-没有完美的解决方案-只有取舍

本文链接    http://blog.csdn.net/xiaodongrush/article/details/28864845 1.  几种常用的设备标识码 IMEI,Sim卡序列号,Wifi模块Mac地址,Android_ID TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE); String imei = telephonyMana

Android判断当前的android设备是否处于联网状态

首先,要想获得当前android设备是否处于联网状态,那么android本身给我们提供了一个服务 private ConnectivityManager connectivityManager;//用于判断是否有网络 connectivityManager = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);//获取当前网络的连接服务 NetworkInfo info = con

Android设备连接Unity Profiler性能分析器

Unity提供两种方式让Developer的Android设备连接Profiler进行性能分析: 1.通过wifi,Android设备和计算机处于同一个Wlan中. 2.通过USB ADB 一般情况我们的计算机都是网线,所以我们采用ADB的方式.相比与wifi,ADB也更及时的反应设备性能. 官方的英文文档如下: http://docs.unity3d.com/Manual/Profiler.html For ADB profiling, follow these steps: Attach y

基于IOS和Android设备MDM技术方案服务价格

导读:前段时间 www.mbaike.net 博客被恶意攻击,导致程序崩溃,目前已经替换了以前的Wordpress程序,现提供IOS和Android版本MDM的代码和相关文档咨询服务. 一.IOS版MDM服务内容及价格: 套餐一:IOS端MDM Server代码(提供MDM Server端的代码和部署文档,不含后期技术支持) 3000元套餐二:IOS端MDM开发技术顾问(提供MDM开发的顾问服务,协助理解MDM原理流程及搭建MDM Server工作的咨询) 1500元套餐三:IOS端MDM全部服

管理Android设备的唤醒状态

当一个Android设备闲置时,首先它的屏幕将会变暗,然后关闭屏幕,最后关闭CPU. 这样可以防止设备的电量被迅速消耗殆尽.但是,有时候也会存在一些特例: Apps such as games or movie apps may need to keep the screen turned on. 例如:用户在玩游戏时,需要保持屏幕常亮 Other applications may not need the screen to remain on, but they may require th