如何在android中以编程方式获取设备的IMEI/ESN?

2023-12-01

为了唯一地标识每个设备,我想使用 IMEI(或 CDMA 设备的 ESN 号)。如何以编程方式访问它?


你想打电话android.telephony.TelephonyManager.getDeviceId().

这将返回唯一标识设备的任何字符串(GSM 上为 IMEI,CDMA 上为 MEID)。

您需要以下权限AndroidManifest.xml:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

为此。

话虽如此,这样做时要小心。用户不仅会想知道为什么您的应用程序要访问他们的电话堆栈,而且如果用户获得新设备,可能很难迁移数据。

Update:正如下面的评论中提到的,这不是一种安全的用户身份验证方式,并且会引发隐私问题。不推荐。相反,看看Google+ 登录 API如果您想实现无摩擦的登录系统。

The 安卓备份API如果您只是想要一种轻量级的方法来在用户重置手机(或购买新设备)时保留一组字符串,那么也可以使用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在android中以编程方式获取设备的IMEI/ESN? 的相关文章

  • 如何使用 kotlin Android 从 Url 读取 JSON?

    我正在使用 kotlin 来开发应用程序 现在我想从服务器获取 JSON 数据 在java中 我实现了Asyntask以及Rxjava来从Url读取JSON 我也在谷歌搜索 但我无法获得满足我的要求的正确详细信息 如何使用 kotlin 从
  • 模仿 youtube/gmail 应用程序的导航抽屉

    背景 近几个月来 谷歌发布了Youtube 应用程序 http www androidpolice com 2013 08 19 breaking massive youtube for android v5 0 update brings
  • Android 从 C++ 端播放原始音频

    我需要能够在 Android 系统的 C 端以自定义文件格式传输音频 我正在致力于移植自定义媒体播放器 并且需要能够打开自定义文件并从中传输音频 这很重要 因为我认为从性能角度来看将整个播放器移植到 JAVA 是不可行的 并且通过 JNI
  • 如何在 M1 Mac 上运行的模拟器上运行旧版 Android 版本(例如 API 级别 21)?

    虽然现在有一个适用于 M1 mac 的 Android Studio 和支持arm架构的Android模拟器镜像 https stackoverflow com questions 64907154 android studio emula
  • 使用 setText 更改文本后如何更新屏幕?

    现在我正在使用以下代码来更新TextView txtMain setText new text 该代码执行后 屏幕不会更新新文本 有没有办法可以强制文本立即更新 该代码执行后 屏幕不会更新新文本 一旦您将控制权归还给 Android 就应该
  • 通过意图使用多个电话号码添加新联系人

    我想使用添加新联系人ContactsContract Intents Insert 但问题是我不知道可以有多少个电话号码 据我了解 我只能使用三个电话号码PHONE SECONDARY PHONE TERTIARY PHONE常数 有什么办
  • 将 android 蓝牙客户端套接字连接到 ubuntu 服务器套接字时出现问题

    我正在编写一个 Android 应用程序 它应该通过蓝牙与服务器交换数据 服务器端位于运行 Ubuntu 的 PC 上 使用 bluez 库 用 C 或 C 编写 当我尝试连接到 PC 上的服务器套接字时 我的 Android 应用程序失败
  • 如何将设备屏幕位置转换为发送事件位置?

    我知道关于input tap x yshell 命令 但是 我想了解如何 使用执行单击sendevent命令 我能够通过以下命令实现它 sendevent dev input event5 3 53 X sendevent dev inpu
  • 将非 Android 项目添加到 Android 项目

    我在 Eclipse 中有三个项目 Base Server 和 AndroidClient Base和Server是Java 1 7项目 而AndroidClient显然是一个android项目 基础项目具有在服务器和 Android 客户
  • Android NDK 支持区域设置吗?

    我真正想做的就是使用格式化日期strftime x 以正确的顺序 在大多数平台上调用setlocale 足够 在 Android 上 我不断收到 美国日期 那么 Android 不支持语言环境吗 No setlocale and strft
  • 如何使用 Retrofit 解析嵌套 json....?

    我不知道该怎么办使用 Retrofit 解析 json 熟悉使用 Retrofit 解析简单的 json 但不熟悉解析嵌套Json using Retrofit 这是我的 Json 数据 current observation image
  • Android 无法解析日期异常

    当尝试解析发送到我的 Android 客户端的日期字符串时 我得到一个无法解析的日期 这是例外 java text ParseException 无法解析的日期 2018 09 18T00 00 00Z 位于 偏移量 19 在 java t
  • 如何仅从 Firestore 获取最新更新的数据?

    在 Firestore 上发现任何更改时始终获取整个文档 如何只获取最近更新的数据 这是我的数据 我需要在第一次加载时在聊天中按对象顺序 例如 2018 09 17 30 40 msg和sendby 并且如果数据更新则仅获取新的msg和se
  • 将人类日期(当地时间 GMT)转​​换为日期

    我正在服务器上工作 服务器正在向我发送 GMT 本地日期的日期 例如Fri Jun 22 09 29 29 NPT 2018在字符串格式上 我将其转换为日期 如下所示 SimpleDateFormat simpleDateFormat ne
  • 在 Xamarin 中隐藏软键盘

    如何隐藏软键盘以便在聚焦时显示Entry在 Xamarin forms 便携式表单项目中 我假设我们必须为此编写特定于平台的渲染器 但以下内容不起作用 我创建自己的条目子类 public class MyExtendedEntry Entr
  • 蓝牙发送和接收文本数据

    我是 Android 开发新手 我想制作一个使用蓝牙发送和接收文本的应用程序 我得到了有关发送文本的所有内容逻辑工作 但是当我尝试在手机中测试它时 我看不到界面 这是Main Activity Code import android sup
  • Android Studio代理设置构建错误

    每当我尝试在 Android Studio 中构建应用程序时 都会收到以下错误 Error 169 254 16 169 254 16 Will ignore proxy settings for these hosts 我收到错误 5 次
  • 以编程方式向 LinearLayout 添加边框

    我该如何添加以编程方式LinearLayout 的边框 假设我们创建了这个布局 LinearLayout TitleLayout new LinearLayout getApplicationContext TitleLayout setO
  • android系统用户和linux root用户有什么区别

    当我将手机连接到电脑并使用adb shell与我的手机通信并输入的命令ps命令输出当前在我的手机上运行的进程信息 我发现有两个特殊用户 一个是root 另一个是system 据我所知 Android是基于linux的 所以root用户是最大
  • 如何在android中安装和使用couch db

    我应该如何在 android 中安装和使用 couch Db 我的意思是本地沙发数据库 我可以在平板电脑和模拟器中使用它 为此我必须遵循哪些步骤 我目前正在开发一个使用它的项目 有两种选择 1 couchbase android 是的 co

随机推荐

  • OSM数据解析以获取具有子节点的节点

    我下载了一个小区域的开放街道地图数据 我想过滤数据以获取具有特殊类别的节点 这是 OSM 数据的示例
  • 针对位于系统其他位置的存储库运行“git status”

    我知道我可以这样做 git git dir Z www proj web test sample repo cloned git status 但是 问题是该命令是从运行的proj文件夹 这意味着之前位于的所有文件sample repo c
  • Android 中的嵌套 Firestore 异步侦听器

    因此 我在几天的集合中有活动文档 我需要将所有活动合并到一个列表中 我认为我应该循环集合 然后循环活动 最后得到下面的代码 我不知道这是否是组合多个集合的最佳方法 更糟糕的是 我不知道我的列表何时准备好用于所有异步调用 有什么建议吗 谢谢
  • 在 for 中声明结构?

    Apple LLVM 9 1 0 与 clang 902 0 39 2 使用 std c11 接受 typedef struct int i float f S for S s 0 0 s i lt 25 s i s f i 10 f 但拒
  • 日期时间插入然后选择:序列不包含元素

    我在sql server中的表结构是 TableId int Pk identity Data string DateNTime DateTime 我的方法是 public int insertData string data Date D
  • 列出模型剃须刀视图

    我有一个应用程序 asp net mvc 在控制器中我有这个 public ActionResult Index Upload Models ClientModels model1 new Models ClientModels Array
  • 如何在隐藏“IdentityUser”的同时向业务层公开“UserManager”?

    我不想引用 EntityFramework 因此Identity EntityFramework以其IdentityUser在我的域中 但我想用UserManager of Identity Core它使用IUserStore
  • 为什么个人访问令牌不适用于 Bitbucket REST API?

    TL DR 为什么 在 Bitbucket Web UI 中创建的名称 PAT 组合不适用于 Bitbucket REST API 或存储库克隆 我一直在读various 文档在比特桶上REST API and 个人访问令牌 目的是在调用前
  • 我可以使用 Spring 注入同一个类吗?

    我有一个类 UserService 实现了 Service 并用 Service StereoType 进行了注释 我正在使用 Spring AOP 并且想要为此做临时解决方法 我知道这可以用更好的方式来完成 Service public
  • 一个接一个地打开链接

    我正在制作一个网站 每 30 秒打开一个新窗口 我让它正确打开新窗口 但我希望它在打开新窗口之前关闭最后打开的窗口 因此一次只打开一个窗口 我该怎么做 到目前为止 这是我的代码
  • 在 Matlab 中使用 interp2 并输入 NaN

    我有一些相对完整的观测数据 但在矩阵中包含一些 NaN 值matlab我想使用将它们插值到更均匀间隔的网格interp2 因此 为了简单起见 假设我有一个完整的 无 NaN 值 矩阵 以及一个看起来像这样的矩阵 A 1 2 3 4 2 3
  • Jquery 粘性菜单不被页脚捕获

    谁能帮我找出我的脚本的问题吗 function var top sidebar offset top parseFloat sidebar css marginTop replace auto 0 var footTop footer of
  • 获取当前目录下的文件列表

    我正在尝试获取一个脚本来读取脚本文件所在目录的内容 然后根据部分名称识别几个特定文件并压缩它们 但我无法得到object Files财产来工作 有人能告诉我这里出了什么问题吗 Set FSO CreateObject Scripting F
  • 迭代视图网格 SwiftUI

    我想获取一个可变长度的数组并返回一个包含 3 列和可变行长度的视图网格 视图应该根据数组值更新其内容 以下代码将为每张卡片呈现一个 CardPicView 在滚动视图中标题为 A I struct ContentView View let
  • 在 IE8 中赋予子窗口焦点

    我正在尝试从 Javascript 函数启动一个弹出窗口 并使用以下调用确保它具有焦点 window open popupUrl popupName focus 它适用于所有其他浏览器 但 IE8 将新窗口保留在后台 并带有闪烁的橙色任务栏
  • 使用 AutoFac 和 AutoMock 模拟 CloudBlobClient

    我正在尝试为我的 AzureBlobRepository 编写单元测试 存储库在构造函数中接收 CloubBlobClient 我想嘲笑客户端 但这给出了一个例外 using var mock AutoMock GetLoose var m
  • 带有异步的 jQuery Ajax 调用返回 null responseXML

    我有简单的 JavaScript 代码 它使用 Ajax API 从服务器获取 XML function loadXML path node var response obj Fire Ajax request and get the XM
  • WCF、Silverlight:找不到 clientaccesspolicy.xml

    我正在尝试将我的 Silverlight 应用程序连接到我自己托管的 WCF 服务 我创建了一个 clientaccesspolicy xml 文件 并将其放置在服务宿主项目的根目录中 但是当我尝试访问该服务时 我的http 嗅探器说找不到
  • HTML 单独注释每一行,而不是块注释

    菜鸟问题 但我希望能够使用 VS Code 中的键盘快捷键快速注释 HTML 代码 问题是我得到这个 而不是这个 有人知道 VS Code 中有一个很好的扩展吗 谢谢 Julien 请参阅我写的这
  • 如何在android中以编程方式获取设备的IMEI/ESN?

    为了唯一地标识每个设备 我想使用 IMEI 或 CDMA 设备的 ESN 号 如何以编程方式访问它 你想打电话android telephony TelephonyManager getDeviceId 这将返回唯一标识设备的任何字符串 G