Как автоматически заполнить текст сообщения электронной почты идентификатором, по которому зарегистрировано устройство - PullRequest
6 голосов
/ 16 марта 2012

Я хочу автоматически заполнить текст EditId emailId с идентификатором gmail, зарегистрированным на устройстве.например, если мой телефон зарегистрирован с идентификатором gmail sd@gmail.com, то он должен быть автоматически заполнен, когда я начну печатать "s"Есть идеи???Спасибо ...

Ответы [ 2 ]

5 голосов
/ 16 марта 2012

Вам необходимо пройти через класс Android AccountManager:

AccountManager manager = (AccountManager) getSystemService(ACCOUNT_SERVICE); 
Account[] list = manager.getAccounts();

, а также добавить необходимые разрешения в файл AndroidManifest:

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

Оттуда вы можете автоматически заполнять информацию.

3 голосов
/ 16 марта 2012

Сначала установите это разрешение в файле AndroidManifest.xml

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

Java-код:

//declaration

String possibleEmail="";

//onCreate

EditText emailEdt=new EditText(this);

 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.
    possibleEmail = account.name;

}
emailEdt.setText(possibleEmail);
...