Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)1

简介: Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)

原创不易,你们对阿超的赞就是阿超持续更新的动力!)

(以免丢失,建议收藏~~~)

获取设备id

public static String getDeviceId() {
        if (context == null) {
            return "";
        }
        return DeviceIdentifier.getAndroidID(context);
    }

获取ip地址

  public static String getIp() {
        String networkType = getNetworkType();
        if (networkType.equals("WiFi")) {
            WifiManager wifiManager = null;
            try {
                wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
                WifiInfo wifiInfo = wifiManager.getConnectionInfo();
                int i = wifiInfo.getIpAddress();
                return intToIp(i);
            } catch (Exception e) {
                e.printStackTrace();
                return null;
            }
        } else if (networkType.equals("2G") || networkType.equals("3G") || networkType.equals("4G")) {
            try {
                for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) {
                    NetworkInterface intf = en.nextElement();
                    for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
                        InetAddress inetAddress = enumIpAddr.nextElement();
                        if (!inetAddress.isLoopbackAddress()) {
                            return inetAddress.getHostAddress().toString();
                        }
                    }
                }
            } catch (Exception ex) {
                return null;
            }
        } else {
            return null;
        }
        return null;
    }

  /**
     * 将ip的整数形式转换成ip形式
     */
    public static String intToIp(int i) {
        return (i & 0xFF) + "." +
                ((i >> 8) & 0xFF) + "." +
                ((i >> 16) & 0xFF) + "." +
                (i >> 24 & 0xFF);
    }

获取APP应用程序名称

/** /**
     * 获取APP应用程序名称
     */
  public static String getAppName(Context context) {
        try {
            PackageManager packageManager = context.getPackageManager();
            PackageInfo packageInfo = packageManager.getPackageInfo(
                    context.getPackageName(), 0);
            int labelRes = packageInfo.applicationInfo.labelRes;
            return context.getResources().getString(labelRes);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

获取设备名称

public static String getDeviceName() {
        return Build.DEVICE;
    }

获取设备型号

public static String getDeviceModel() {
        return Build.MODEL;
    }

获取设备处理器

public static String getDeviceBoard() {
        return Build.BOARD;
    }

获取设备品牌获取

public static String getDeviceManufacturer() {
        return Build.MANUFACTURER;
    }


获取设备制造商

public static String getDeviceManufacturer() {
        return Build.MANUFACTURER;
    }

获取设备oaid

方案一

// build.gradle需要引入获取oaid库
compileOnly 'com.github.gzu-liyujiang:Android_CN_OAID:4.2.3'
• 1
• 2
public static String getOAID() {
    if (Build.VERSION.SDK_INT < 29) {
            return DeviceIdentifier.getIMEI(context));
        } else {
            return DeviceIdentifier.getOAID(context));
        }
    }

方案二

public static String getOAID() {
        if (context == null) {
            return "";
        }
        if (DeviceID.supportedOAID(context)) {
            return DeviceID.getOAID();
        }
        return "";
    }

Android获取设备各项信息(设备id、ip地址、设备名称、运行商、品牌、型号、分辨率、处理器、国家码、系统语言、网络类型、oaid、android版本、操作系统版本、mac地址、应用程序签名..)2:https://developer.aliyun.com/article/1473469

目录
相关文章
|
9月前
|
存储 机器学习/深度学习 API
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
1403 31
Android API Level 到底是什么?和安卓什么关系?应用发布如何知道自己的版本?优雅草卓伊凡
|
移动开发 安全 Java
Android历史版本与APK文件结构
通过以上内容,您可以全面了解Android的历史版本及其主要特性,同时掌握APK文件的结构和各部分的作用。这些知识对于理解Android应用的开发和发布过程非常重要,也有助于在实际开发中进行高效的应用管理和优化。希望这些内容对您的学习和工作有所帮助。
1561 83
|
安全 架构师 云计算
玄鹿网络 | 中小企业如何借势互联网,打造强势网络品牌?
玄鹿网络在互联网+时代,中小企业面临机遇与挑战,品牌成为企业生存发展的核心灵魂。玄鹿网络通过网络营销助力中小企业塑造品牌形象,其中问答营销可树立良好口碑,B2B网站推广能获取高质量流量,建立企业官网则是展示品牌的窗口。阿里云建站产品如【云·速成美站】和【云·企业官网】,提供快速、稳定、安全的建站服务,助力企业打造独特网络名片,在竞争中脱颖而出。
玄鹿网络 | 中小企业如何借势互联网,打造强势网络品牌?
|
12月前
|
Java API 开发工具
Android cmdline-tools版本与最小JDK的关系
总的来说,Android的命令行工具和JDK之间的关系就像是一场舞会,两者需要彼此配合,才能共同创造出美妙的舞蹈。如果选择了不合适的舞伴(即不兼容的版本),可能会导致舞蹈中的步伐混乱,甚至无法完成舞蹈。而即使选择了合适的舞伴,也需要考虑舞伴的舞蹈技巧(即性能和稳定性),才能确保舞蹈的完美表现。因此,选择合适的Android命令行工具和JDK版本,是每一个Android开发者都需要面对的重要决定。
390 13
|
安全 开发工具 Android开发
【Android Git】Git版本回退方式
在实际操作中,选择合适的版本回退方式,可以有效地管理代码版本,提高开发效率和代码质量。
761 26
|
8月前
|
Ubuntu Unix Linux
操作系统的最强入门科普(Unix/Linux篇)
下期文章,小枣君会重点聊聊Windows和macOS那条线。敬请关注! 如果大家觉得文章不错,还请帮忙多多转发!谢谢!
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
1101 0
Vanilla OS:下一代安全 Linux 发行版
|
8月前
|
Web App开发 缓存 Rust
|
弹性计算 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot是由阿里云推出的操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行等功能,极大提升了Linux系统的使用效率。用户只需通过简单的命令或自然语言描述问题,OS Copilot即可快速提供解决方案并执行相应操作。例如,查询磁盘使用量等常见任务变得轻松快捷。此外,它还支持从文件读取复杂任务定义,进一步简化了操作流程。虽然在某些模式下可能存在小问题,但总体上大大节省了学习和操作时间,提高了工作效率。
493 2
OS Copilot-操作系统智能助手-Linux新手小白的福音
|
运维 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot 是阿里云推出的一款操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行和系统运维调优等功能。通过简单的命令行操作,用户可以快速获取所需信息并执行任务,极大提升了Linux系统的使用效率。安装步骤简单,只需在阿里云服务器上运行几条命令即可完成部署。使用过程中,OS Copilot不仅能帮助查找命令,还能处理文件和复杂场景,显著节省了查找资料的时间。体验中发现,部分输出格式和偶尔出现的英文提示有待优化,但整体非常实用,特别适合Linux初学者。
604 10

热门文章

最新文章

推荐镜像

更多
下一篇
开通oss服务