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

Как правильно вставить AlertDialog, если нет интернета? - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Экспорт apk в Android Studio http://www.cyberforum.ru/android-dev/thread1358344.html
Всем привет, ребят кто знает как экспортировать apk файл в Android Studio? Экспортировал как указано http://stackoverflow.com/questions/16622843/how-do-i-export-a-project-in-the-android-studio...
Программирование Android Загрузка/отгрузка файлов с авторизацией Авторизация - простой пост запрос с полями логина и пароля. Как войти перед тем как загружать файлы? И как их загружать? Пока что для загрузки аватарки использовал такую штуку URL url... http://www.cyberforum.ru/android-dev/thread1358263.html
Программирование Android Как обратиться к элементу (button) внутри пункта списка (ListView)
Здравствуйте! Помогите, пожалуйста Есть активити с ListView. В каждом пункте списка есть пару TextView и один Button. Как и где прописать к этой кнопки слушателя? Заранее спасибо!
Сделать видимой сетку у таблицы Программирование Android
Имеется TableLayout внутри которого TableRow с TextView-шками. Однако сетка/разделитель не видна между ячейками. Как-нибудь можно включить ее отображение?
Программирование Android Сервер на PHP или на Java? http://www.cyberforum.ru/android-dev/thread1358095.html
Что посоветуете? Хочу создать сервер на 10000 человек максимум (отправление небольших текстов), что лучше справиться?
Программирование Android Первое android приложение с доступом к серверу Есть сервер на php на котором написано: Привет Мир! Как создать приложение android чтобы он обратился к серверу и вывел это? подробнее

Показать сообщение отдельно
Kroshandowski
2 / 2 / 0
Регистрация: 05.04.2013
Сообщений: 234
22.01.2015, 13:51  [ТС]
CoolMind, спасибо,что поделились свои решением проверки. Просто я сейчас уже не знаю,что является наиболее верным решением моего случая и начитавшись в "Стеке","Хеше","Хабре","СтартАндройде" или здесь на форуме о подобных проблемах и путях решения, теперь у меня такая каша в голове.
А если по теме, то AsyncTask я использовал для парсинга страниц с помощью Jsoup и вроде бы пока не вылетало и все работает.
Если взять за основу стандартный шаблон AsyncTask'a:
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
private class MyTask extends AsyncTask<Void, Void, Void> {
                private ProgressDialog spinner;
 
                @Override
                protected void onPreExecute() {
                        // Вначале мы покажем пользователю ProgressDialog 
                        // чтобы он понимал что началась загрузка
                        // этот метод выполняется в UI потоке
                        spinner = new ProgressDialog(MyActivity.this);
                        spinner.setMessage("Идет загрузка...");
                        spinner.show();
                }
 
                @Override
                protected Void doInBackground(Void... text) {
                        // тут мы делаем основную работу по загрузке данных 
                        // этот метод выполяется в другом потоке
                }
 
                @Override
                protected void onPostExecute(Void result) {
                        // Загрузка закончена. Закроем ProgressDialog.
                        // этот метод выполняется в UI потоке
                    spinner.dismiss();
                }
 
        }
Где должен располагаться ваш пример выше,который должен запустить дальнейшую работу с инетом или вызвать AlertDialog?

Добавлено через 24 минуты
Как-то так наверно

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.second);      
 
        new Title().execute();
 
private class MyTask extends AsyncTask<Void, Void, Void> {
                private ProgressDialog spinner;
 
                @Override
                protected void onPreExecute() {
                        // Вначале мы покажем пользователю ProgressDialog 
                        // чтобы он понимал что началась загрузка
                        // этот метод выполняется в UI потоке
                        spinner = new ProgressDialog(Second.this);
                        spinner.setMessage("Идет загрузка...");
                        spinner.show();
                }
 
                @Override
                protected Void doInBackground(Void... text) {
                       if (isConnected(this)) {
                           webview.loadUrl("file:///android_asset/traffic/index.html");
                               }   else {
                        mProgressDialog.dismiss();
                        AlertDialog alertDialog = new AlertDialog.Builder(this).create();
                        alertDialog.setTitle("Нет доступа в интернет!");
                        alertDialog.setMessage("Включите моб.данные и нажмите кнопку обновить");
                        alertDialog.setButton(AlertDialog.BUTTON_POSITIVE,"OK",new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.cancel();
                            }
                       });
            alertDialog.show();
                    }
               }
 
                @Override
                protected void onPostExecute(Void result) {
                        // Загрузка закончена. Закроем ProgressDialog.
                        // этот метод выполняется в UI потоке
                    spinner.dismiss();
                }
 
        }
 
public boolean isConnected(Context context){
        ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        if (connectivity != null) {
            NetworkInfo[] info = connectivity.getAllNetworkInfo();
            if (info != null)
                for (NetworkInfo networkInfo : info) {
                    if (networkInfo.isAvailable() && networkInfo.isConnected())
                        return true;
                }
        }
        return false;
    }
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru