获取Android设备的用户自定义自定义名称的最佳方法是什么?
有些手机会将设备名称和蓝牙名称视为相同。在这些情况下,我可以获得蓝牙名称。在某些手机中,Owner Info
下有一个名为Security->Settings
的设置。我怎么能从中读出这个名字?或者你还有什么建议我的方案?了解我并非要求People应用程序或手机的型号/制造商提供配置文件名称。
答案 0 :(得分:4)
我之前发布了this answer:
使用
String ownerInfo = Settings.Secure.getString(getContentResolver(),
"lock_screen_owner_info");
从Android 4.4.2开始,所有者信息值将移至锁定屏幕数据库/data/system/locksettings.db
,第三方应用程序没有读取/写入权限。也就是说,没有可靠的方法来读取以后Android版本的所有者信息。
答案 1 :(得分:0)
我正在运行4.4.2以及以下工作:
Settings.System.getString(getContentResolver(), "device_name")
答案 2 :(得分:0)
//这可能有效,但有时为空
Settings.Secure.getString(getContentResolver(), "device_name")
//蓝牙名称,没有额外的权限
Settings.Secure.getString(getContentResolver(), "bluetooth_name")
// p2p启用的设备可以在此处
Settings.Secure.getString(getContentResolver(), "wifi_p2p_device_name")
您始终可以使用以下命令进行检查:
adb shell settings list global
答案 3 :(得分:0)
String userDeviceName = Settings.Global.getString(getContentResolver(), Settings.Global.DEVICE_NAME);
if(userDeviceName == null)
userDeviceName = Settings.Secure.getString(getContentResolver(), "bluetooth_name");