【问题标题】:How to fetch Device Name (NOT Build.MODEL) from Android programatically?如何以编程方式从 Android 获取设备名称(不是 Build.MODEL)?
【发布时间】:2019-05-07 22:27:31
【问题描述】:

我一直在寻找可以获取用户为自己的设备定义的设备名称的代码。 经历了各种 stackoverflow 问题,但似乎没有一个对我有用?

如下图所示:需要来自 android 代码的Thanks Thanks (SM-T211)

【问题讨论】:

  • 哪一个??你能举例说明吗??
  • 用户在哪里定义设备名称?
  • AFAIK 我在设置中看不到任何用户可编辑控件 > 关于。可以提供截图吗?
  • AFAIK 那是设备/制造商特定的。我的设备中没有该功能(华硕 Zenfone 2)

标签: android device application-settings


【解决方案1】:

试试这个:

String ownerInfo = Settings.Secure.getString(getContentResolver(),
    "lock_screen_owner_info");

从 Android 4.4.2 开始,所有者信息值已移至锁定屏幕 database,/data/system/locksettings.db,第 3 方应用程序没有 read/write access。也就是说,除了 root 设备之外,没有可靠的方式来读取更高版本的 Android 的所有者信息。

【讨论】:

【解决方案2】:

您需要获取系统的 build.prop 文件,如果您的设备已获得 root 权限或您具有系统权限... 这是您获取和编辑 build.prop 的代码 在 Play 商店中查看此应用程序。 build.prop 编辑器。由于它是开源的,而且代码非常简单,所以可以作为一个说明点:https://github.com/nathanpc/Build.prop-Editor

【讨论】:

    【解决方案3】:

    试试这个:

    BluetoothAdapter myDevice = BluetoothAdapter.getDefaultAdapter();
    String deviceName = myDevice.getName();
    

    确保添加到清单中:

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

    【讨论】:

    • 这个我知道……这个只给出型号名称
    • 我需要知道关于设备中的用户定义名称
    • 所以,从下面的答案中,我假设要获得答案,我必须 root 设备,否则我将无法从我自己的设备中检索设备名称。
    猜你喜欢
    • 2014-01-17
    • 2011-01-01
    • 2012-06-25
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    • 1970-01-01
    • 2018-10-07
    • 1970-01-01
    相关资源
    最近更新 更多