Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
OLLEGATOR
Linux-оид
116 / 65 / 3
Регистрация: 15.02.2011
Сообщений: 353
#1

Что вернёт метод простого класса - Программирование Android

02.08.2015, 00:17. Просмотров 309. Ответов 4
Метки нет (Все метки)

доброго времени суток.

Имеем простой класс.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import android.accounts.Account;
import android.accounts.AccountManager;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.util.Patterns;
import java.util.regex.Pattern;
 
public class Android_info extends Activity{
 
    static String mail="lillo";
 
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        Pattern emailPattern = Patterns.EMAIL_ADDRESS;
        Account[] accounts = AccountManager.get(this).getAccounts();
        for (Account account : accounts) {
            if (emailPattern.matcher(account.name).matches()) {
                mail = account.name;
            }
        }
 
    }
 
    public static String return_mail(){
        return mail;                        // должен вернуться gmail аккаунта
    }
 
 
}
Подскажите пожалуйста что вернет метод return_mail ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.08.2015, 00:17     Что вернёт метод простого класса
Посмотрите здесь:
Вызвать метод класса Android
Как запустить метод из другого класса? Android
Написание простого калькулятора Android
Класс: Хочу из класса WorkFiles получить доступ к функционалу класса WorkDB. Android
Android Как изменить Textview из другого класса (класса адаптера RecyclerView)
Пример простого http- запроса Android
Исходники для простого чата Android
Ошибка при запуске простого приложения Android
СМЕТА очень простого андроид приложения Android
Ошибка при создании простого браузера из примера Android
Нужен прокомментированный код простого клиент-серверного приложения Android
TRICKS: Что вернёт метод? Java SE

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Snezhok_Snezhok
4 / 4 / 1
Регистрация: 01.08.2015
Сообщений: 9
02.08.2015, 05:40     Что вернёт метод простого класса #2
Цитата Сообщение от OLLEGATOR Посмотреть сообщение
Подскажите пожалуйста что вернет метод return_mail ?
Так написано же в комментах

Добавлено через 23 минуты
Цикл пройдётся по массиву и присвоить переменной "mail" адрес последнего в массиве (т.к аккаунтов может быть куча, и не только жимыловские) почтового ящика.
Если надо именно gmail.com, то как то так можно:
Java
1
String gmailAcc = (AccountManager.get(this).getAccountsByType("com.google"))[0].name;
OLLEGATOR
Linux-оид
116 / 65 / 3
Регистрация: 15.02.2011
Сообщений: 353
02.08.2015, 21:13  [ТС]     Что вернёт метод простого класса #3
Snezhok_Snezhok, спасибо за оптимизацию в одну строчку,но я пробовал и свой вариант и ваш.
дело в том, что в любом случае у меня mail содержит в себе значение "lillo". хотя должен быть mail.

запускаю на андроиде 5.1.1, произведён вход в аккаунт Google.

собственно вариант , который пробовал

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Android_info extends Activity{
 
    static String mail="lillo";
 
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
 
        mail = (AccountManager.get(this).getAccountsByType("com.google"))[0].name;
 
    }
 
    public static String return_mail(){
        return mail;
    }
 
 
}
Snezhok_Snezhok
4 / 4 / 1
Регистрация: 01.08.2015
Сообщений: 9
03.08.2015, 08:09     Что вернёт метод простого класса #4
Я забыл вчера сказать, в файле манифеста нужно прописать просьбу о разрешении на работу с контактами:
XML
1
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
OLLEGATOR
Linux-оид
116 / 65 / 3
Регистрация: 15.02.2011
Сообщений: 353
03.08.2015, 17:03  [ТС]     Что вернёт метод простого класса #5
на данный момент добавлено в манифест:

XML
1
2
3
4
5
6
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
    <uses-permission android:name="android.permission.USE_CREDENTIALS"/>
    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"/>
    <uses-permission android:name="android.permission.INTERNET"/>
то же самое... возвращает lillo

а можно все как-то вынести из метода onCreate в метод return_mail?

я так догадываюсь, что JNI технология не вызывает метод onCreate, поскольку явно вызывается только метод return_mail.
Yandex
Объявления
03.08.2015, 17:03     Что вернёт метод простого класса
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru