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

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

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

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

02.08.2015, 00:17. Просмотров 313. Ответов 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
получил ссылку на класс по его имени Class <?> cls = null; try { cls = Class.forName(classname); } catch...

Как запустить метод из другого класса? - Программирование Android
есть класс: public class Class1 extends DialogFragment implements OnClickListener { TextView textViewMessage; String name;...

TRICKS: Что вернёт метод? - Java SE
начинаем серию постов TRICKS по фишкам JVM и компилятора, вопросы для самообразования, не более :) просьба не компилировать, а...

Пример, когда метод Thread.isAlive() вернёт false - Java SE
Приведите, пожалуйста, два примера. Такие, что бы в первом main thread при вызове на ней метода isAlive(); вернула false, а во втором...

Как описать метод класса? Как двумя способами описать инлайнируемый метод класса? Что такое this? - C++
Раздел 1. Строки: нужен фрагмент кода. Обязательно используйте функции для работы со строками. Как найти адрес последнего символа строки?...

Не сходится теория и практика метод Шелла и метод простого выбора - C++
Здравствуйте! Помогите пожулуйста найти ошибке в коде, Я уже не знаю где ее искать. У меня метод простого выбора работает по показателям...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
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.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2015, 17:03
Привет! Вот еще темы с ответами:

Как передать в метод класса Menu указатель на метод дочернего класса? - C++
Как передать в метод базового класса указатель на метод дочернего: class Menu() { protected: setCallback(*********); //...

Создание простого класса - C#
Приветствую Вас, программисты! Решите мне, пожалуйста, одну задачку на простые классы. Сейчас работаю на Visual Studio 2012 с линейными...

Метод простого обмена [C++] - C++
Помогите решить задачу В прямоугольной матрице в строках, упорядоченных по возрастанию, поменять местами минимальный и максимальный...

Метод простого выбора - Pascal ABC
Дан одномерный массив целых чисел. Отсортировать его в порядке возрастания сумм цифр методом простого выбора.


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
03.08.2015, 17:03
Ответ Создать тему
Опции темы

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