2015-07-06 4 views
2

Я использую API и SDK Google Analytics. После входа пользователя в систему я хотел бы отобразить его имя. Вместо этого, когда я звоню в учетные записи пользователей, API возвращает только электронное письмо без отображаемого имени. Я использую область https://www.googleapis.com/auth/analytics.edit.Как получить имя пользователя из API Google Analytics?

Вот что я получаю:

object(Google_Service_Analytics_Accounts)[86] 
    protected 'collection_key' => string 'items' (length=5) 
    protected 'internal_gapi_mappings' => ... 
    protected 'itemsType' => string 'Google_Service_Analytics_Account' (length=32) 
    protected 'itemsDataType' => string 'array' (length=5) 
    public 'itemsPerPage' => int 1000 
    public 'kind' => string 'analytics#accounts' (length=18) 
    public 'nextLink' => null 
    public 'previousLink' => null 
    public 'startIndex' => int 1 
    public 'totalResults' => int 2 
    public 'username' => string '[email protected]' (length=12) 
    protected 'modelData' => ... 
    protected 'processed' => ... 

Как я могу получить имя пользователя? Нужно ли использовать какой-либо другой API Google?

+0

думаю, что самое лучшее, что вы могли бы сделать, это добавить к вашим запросам область пользовательского профайла, а затем запросить информацию из Google+ api. Аналитика Google api не имеет доступа к имени пользователя в любом месте. – DaImTo

+0

Да, я так и думал. Проблема в том, что для приложения потребуется API Google Plus. Если это единственный способ, я сделаю это. Я буду ждать больше ответов. Пожалуйста, добавьте свой комментарий в качестве ответа, поэтому, возможно, мы сможем сделать его лучшим ответом позже :) –

ответ

3

К сожалению, API Google Analytics не имеет доступа к информации о пользователе, находящемся за пределами электронной почты.

Даже если вы проверяете Account users list он не возвращает имя пользователя:

"userRef": { 
    "kind": "analytics#userRef", 
    "id": "117200475532672775346", 
    "email": "[email protected]" 
    }, 

Опцион бы добавить profile сферу, которая является частью API Google+. Затем вы сможете использовать people.get. Просто добавьте me как идентификатор пользователя, и он возвращает информацию о профиле для человека, который в настоящее время проверки подлинности в:

"objectType": "person", 
"id": "117200475532672775346", 
"displayName": "Linda Lawton", 
"name": { 
    "familyName": "Lawton", 
    "givenName": "Linda" 
}, 

Или я думаю, вы могли бы взять на себя идентификатор из аккаунта Google Analytics запроса. Они кажутся одинаковыми.

Смежные вопросы