2014-12-17 4 views
0

Есть ли способ получить текущее имя пользователя/адрес электронной почты или некоторую идентификацию (возможно, адрес Mac) текущего пользователя стекла в приложении GDK?Получите Google Glass Name или Email

Например, они подписаны на gmail. Я просто хочу знать их электронную почту ... Для регистрации или для создания уникальной учетной записи, возможно ли это?

ответ

4

Основываясь на том, что вы пытаетесь сделать, вам не нужно, чтобы создать уникальный идентификатор учетной записи. Вы можете использовать Mac Адрес.

код, чтобы получить Mac Адрес:

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
WifiInfo wifiInfo = wifiManager.getConnectionInfo(); 
String myMac= wifiInfo.getMacAddress(); 

с ниже разрешения:

ACCESS_WIFI_STATE 

Wifi может возвращать нуль, если Wi-Fi будет diabled. Поскольку у стекла есть API для преобразования текста в речь, вы можете заставить его сообщить пользователю о включении Wi-Fi.

Вы также можете использовать Серийный номер. от android.os.Build

Build.SERIAL 

Другой вариант заключается в использовании Android ID (метод предпочитаемые)

import android.provider.Settings.Secure; 
private String androidID = Secure.getString(getContext().getContentResolver(),Secure.ANDROID_ID); 

С учетной записи пользователя/Стекло зарегистрированный адрес электронной почты?

Что вы хотите достичь не требует, чтобы вы получили адрес электронной почты с адресом электронной почты пользователя. Если вы злоупотребления это, все будут идти действительно очень плохой и вы должны уведомить пользователя перед доступом своей электронной почты. Вы можете сделать свой собственный Политика конфиденциальности что они будут читать и соглашаться, прежде чем вы получите доступ к их электронной почте. Это мои головы, чтобы избежать неприятностей в будущем при доступе к электронной почте на любом устройстве, которое не принадлежит вам.

Чтобы получить Адрес электронной почты:

Account[] glassAccount = AccountManager.get(this).getAccountsByType("com.google"); 
if(glassAccount.length > 0) { 
    Log.i("Glass Email: ", glassAccount[0].name); 
} 

Не знаю, если это возможно для стекла, чтобы иметь более 1 учетной записи. Если это так, вы можете пройти через glassAccount, чтобы получить все адреса электронной почты.

Account[] glassAccount = AccountManager.get(this).getAccountsByType("com.google"); 
if(glassAccount.length > 0) { 
for(int i= 0; i<glassAccount.length; i++){ 
    Log.i("Glass Email: ", glassAccount[i].name); 
    } 
} 

Вы должны использовать ниже permision:

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

Для получения более подробной информации. http://android-developers.blogspot.com/2011/03/identifying-app-installations.htmls

+0

Надеюсь, кто-то покажет мне, как получить адрес электронной почты или что-то более читаемое, но в остальном я выделил ваш ответ. – msj121

+0

Изменен мой ответ, чтобы показать, как вы можете получить адрес электронной почты пользователя Glass. Пожалуйста, прочитайте заявление, которое я сделал перед кодом. – Programmer

+0

Я понимаю последствия. Не будет доступа к электронной почте или рассылки спама пользователю, но, конечно, неправильное использование может заставить вас быстро закрыть из стекла. – msj121

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

  • Нет связанных вопросов^_^