簡體   English   中英

TelephonyManager.getDeviceId()返回一個常量值?

[英]TelephonyManager.getDeviceId() returns a constant value?

我正在生成用於混淆信息的密鑰。

該密鑰必須在設備之間更改,因此對於我使用的這一代來說:

  • Secure.getString(getContentResolver(), Secure.ANDROID_ID)
  • TelephonyManager.getSimSerialNumber()
  • TelephonyManager.getDeviceId()
  • 如果以上所有選項均為null ,則生成一個隨機的持久字符串

但是測試使我意識到,由於TelephonyManager.getSimSerialNumber()隨着設備中的SIM卡而更改(並且在飛行模式下始終返回null),因此密鑰也隨之更改,並且無法恢復混淆的數據。

我的問題是: TelephonyManager.getDeviceId()是否總是返回相同的值(空值或總是相同的結果)?

注意:我已經測試過,即使在“飛行模式”下,它也會為我返回有效值

假設所討論的設備植根(因為它允許用戶更改設備的大多數唯一字符串),TelephonyManager.getDeviceId()應該返回GSM網絡上的IMEI號碼-這鏈接到手機而不是SIM,所以它不會改變。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM