如何获得手机用户的名字(或全名)?

yco*_*omp 9 android

有没有办法获得用户的名字或全名?我的意思是电话的用户

它需要特殊的清单权限吗?

Jef*_*key 17

是的,从ICS开始,您可以读取设备所有者的配置文件(需要READ_PROFILE权限):

http://developer.android.com/reference/android/provider/ContactsContract.Profile.html

具体来说,DISPLAY_NAME列应该有自己的名字.或者,您可以查找StructuredName数据项以获取其GIVEN_NAME:

http://developer.android.com/reference/android/provider/ContactsContract.CommonDataKinds.StructuredName.html


gob*_*dor 7

你到底什么意思?您可以通过某些方式访问该名称:

  1. 您可以尝试访问存储在Google帐户中的信息,但需要获得GET_ACCOUNTS许可
  2. 正如Vinayak.B建议的那样,你可以尝试从联系人那里收集信息,需要READ_CONTACTSREAD_PHONE_STATE许可,尽管我认为这是一个命中或未命中的选项.
  3. 还有一个READ_PROFILE许可,我觉得这是一个有趣的方式,但我没有任何经验,所以我不能告诉你它是否是一个富有成效的冒险.

我会首先尝试该GET_ACCOUNTS选项,因为他们必须拥有Google帐户才能下载您的应用.它对我来说似乎也有点不那么具有侵略性

我真的希望这能回答你的问题,但如果没有,你真的需要提供更多的信息.

  • 嗯..` account.name`是gmail地址.帐户对象中没有(人工)名称字段.GET_ACCOUNTS方法不可行 (4认同)
  • 当所有其他方法都失败时,请在市场上对您的应用说明中的权限进行说明并让他们做出决定.就我个人而言,我很欣赏一个诚实的开发者并说:"看,伙计们,我有一个有争议的许可,但这就是我用它来做的事情". (2认同)