2014-12-17 3 views
0

GDK 응용 프로그램에서 현재 유리 사용자 이름의 현재 유리 사용자 이름/전자 메일 또는 일부 신원 (아마 Mac 주소)을 가져 오는 방법이 있습니까?Google Glass 이름 또는 이메일 받기

예를 들어 Gmail에 로그인되어 있습니다. 나는 그들의 이메일을 알고 싶다 ... 등록을 위해서나 독특한 계정을 만드는 것을 돕기 위해서 가능한가?

답변

4

당신이하려고하는 것에 따라 은 계정에 고유 한 ID를 생성하기 위해 이메일이 필요하지 않습니다. Mac 주소을 사용할 수 있습니다.

코드는 주소 얻을 : 아래의 권한

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

: 와이파이가 달 수 경우

ACCESS_WIFI_STATE 

와이파이가 null 반환 할 수 있습니다. 글래스에는 텍스트 음성 변환 API가 있기 때문에 Wi-Fi를 사용하도록 사용자에게 알릴 수 있습니다.

도 사용할 수 있습니다. android.os.Build

Build.SERIAL 

에서 또 다른 옵션은/유리 이메일 주소 등록 사용자 계정으로 안드로이드 ID (선호하는 방법)

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

을 사용하는 것입니다?

달성하고자하는 것 이 아니므로 사용자의 이메일 주소로 이메일에 액세스해야합니다. 오용의 경우이라면 실제로는 이 좋지 않으며 일 경우 사용자에게을 알려야합니다. 에 이메일을 보내십시오. 고객님의 개인 정보 보호 정책을 작성하면 이메일에 액세스하기 전에 읽고 동의하게됩니다. 미래의 문제를 피하기 위해 자신의 머리가 아니며 사용자가 아닌 다른 기기에서 이메일에 액세스하는 것이 좋습니다. 이 유리는 1 개 이상의 계정을 가지고 할 수있는 경우

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

알고하지 마십시오

이메일 주소를 얻으려면. 그렇다면 glassAccount를 반복하여 모든 이메일 주소를 가져올 수 있습니다. 자세한 내용은

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

:

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을 사용해야합니다. http://android-developers.blogspot.com/2011/03/identifying-app-installations.htmls :

+0

누군가가 내게 이메일 주소 나 더 읽기 쉬운 것을 알려주지 만, 그렇지 않으면 나는 대답으로 당신의 것을 강조 할 것입니다. – msj121

+0

Glass 사용자의 이메일 주소를 얻는 방법을 보여주는 답안을 수정했습니다. 코드 이전에 작성한 성명서를 읽으십시오. – Programmer

+0

그 의미를 이해합니다. 이메일에 액세스하거나 사용자를 스팸하는 것은 없지만 확실히 오용하면 유리에서 아주 빨리 금지 될 것입니다. – msj121