获取Google Glass名称或电子邮件

时间:2014-12-17 23:17:38

标签: google-glass google-gdk

有没有办法在GDK应用程序中获取当前玻璃用户/电子邮件或当前玻璃用户的某些标识(可能是Mac地址)?

例如,他们已登录gmail。我只是想知道他们的电子邮件......对于注册或帮助创建一个独特的帐户,这可能吗?

1 个答案:

答案 0 :(得分:4)

根据您的目的,您需要他们的电子邮件来创建帐户的唯一ID。 您可以使用 Mac地址

获取 Mac地址的代码:

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

获得以下许可:

ACCESS_WIFI_STATE 

如果Wifi被禁用,Wifi可能会返回null。由于glass具有文本到语音API,因此您可以告诉用户启用Wifi。

您还可以使用序列号。来自 android.os.Build

Build.SERIAL

另一种选择是使用 Android ID (首选方法)

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

使用用户帐户/ Glass注册的电子邮件地址

您想要完成的任务 要求您通过电子邮件发送用户的电子邮件地址。如果您滥用,事情真的会非常糟糕,您必须通知用户访问他们的电子邮件。您可以制作您自己的隐私权政策,以便他们在您访问电子邮件之前阅读并同意这些政策。在您使用任何不属于您的设备上访问电子邮件的同时,我可以帮助您避免麻烦。

获取电子邮件地址

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

不知道Glass是否有可能拥有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);
  }
}

您必须使用下面的权利:

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

了解更多信息。 http://android-developers.blogspot.com/2011/03/identifying-app-installations.htmls