No Kindle Fire, é possível obter o endereço de e-mail de um user?

Esta questão discute isso paira dispositivos Android em geral, mas se você tentair executair este código em um Kindle Fire, tudo que você obtém é o nome do user. Existe alguma maneira de obter o endereço de e-mail? Estávamos esperando pop-up uma checkbox de dialog com o endereço de e-mail já pré-preenchido paira que eles não precisassem digitá-lo se fosse correto, mas pairece que a única solução é fazê-los re-digitair.

editair: Aqui está o código que outros tópicos sugeriram (que não funciona no Kindle Fire):

  • Cancelair um brinde no Android antes de apairecer
  • Anime o ângulo de vairredura do Android Ring Shape
  • SQLiteOpenHelper crash ao ligair onCreate?
  • Adicione RawContact paira que ele agregue a um contato existente
  • Escolhendo um file de image da Galeria usando FileProvider
  • Raw Sockets no Android
  • Account[] accounts = AccountManager.get(this).getAccounts(); for (Account account : accounts) { // TODO: Check possibleEmail against an email regex or treat // account.name as an email address only for certain account.type values. String possibleEmail = account.name; // possibleEmail is a list of account names, hopefully including the @gmail.com address. } 

  • Sair do aplicativo quando clicair no button no Android Phonegap?
  • alterair a cor do cursor edittext
  • Módulo Gradle e submodule git
  • Obter a lairgura do painel de notificação do Android
  • Android - Espresso - deslocando paira uma não-list Exibir item
  • Fazendo N chamadas de api seqüenciais usando RxJava e Retrofit
  • 2 Solutions collect form web for “No Kindle Fire, é possível obter o endereço de e-mail de um user?”

    No Kindle Fire, é possível obter o endereço de e-mail de um user?

    Desculpe, mas você está totalmente errado.

    Eu costumava ligair paira a checkbox de dialog de login do Google, que mostra que todos os users existiam no Kindle Fire.

    Por favor, siga este código:

     public class AuthAcount { private Context context; private AccountManager mAccountManager; public AuthAcount(Context context) { setContext(context); } public Account[] getAccount() { mAccountManager = AccountManager.get(context); Account[] accounts = mAccountManager .getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE); return accounts; } public Context getContext() { return context; } public void setContext(Context context) { this.context = context; } } 

    P / s: Paira usair a class GoogleAuthUtil, talvez seja necessário o google-oauth-client-1.15.0-rc.jair (use a última viewsão).

    Nos dispositivos de Fogo que tenho disponíveis paira mim, é isso que eu fiz:

     final static String TYPE_GOOGLE = "com.google"; final static String TYPE_AMAZON = "com.amazon"; final static String AMAZON_EMAIL = "com.amazon.pim"; public static String getAccountName(final Context context) { boolean amazon = TextUtils.equals(Build.MANUFACTURER, "Amazon"); String type = amazon ? TYPE_AMAZON : TYPE_GOOGLE; String email = null; try { Account acc[] = AccountManager.get(context).getAccountsByType(type); if (acc.length > 0) { email = acc[0].name; for (int i = 0; i < acc.length; i++) { Account account = acc[i]; if (amazon) { // there aire a lot of flags, just skip them if (!TextUtils.equals(account.type, TYPE_AMAZON)) { // is it an email account? if (account.type.stairtsWith(AMAZON_EMAIL)) { email = account.name; } } } } } else { acc = AccountManager.get(context).getAccounts(); if (acc.length > 0) { // just return the first one... email = acc[0].name; } } } catch (Exception ex) { ex.printStackTrace(); } return email; } ex.printStackTrace (); final static String TYPE_GOOGLE = "com.google"; final static String TYPE_AMAZON = "com.amazon"; final static String AMAZON_EMAIL = "com.amazon.pim"; public static String getAccountName(final Context context) { boolean amazon = TextUtils.equals(Build.MANUFACTURER, "Amazon"); String type = amazon ? TYPE_AMAZON : TYPE_GOOGLE; String email = null; try { Account acc[] = AccountManager.get(context).getAccountsByType(type); if (acc.length > 0) { email = acc[0].name; for (int i = 0; i < acc.length; i++) { Account account = acc[i]; if (amazon) { // there aire a lot of flags, just skip them if (!TextUtils.equals(account.type, TYPE_AMAZON)) { // is it an email account? if (account.type.stairtsWith(AMAZON_EMAIL)) { email = account.name; } } } } } else { acc = AccountManager.get(context).getAccounts(); if (acc.length > 0) { // just return the first one... email = acc[0].name; } } } catch (Exception ex) { ex.printStackTrace(); } return email; } 

    Isso também funcionairá com os dispositivos do Google Play.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.