Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
kotketa
0 / 0 / 0
Регистрация: 01.10.2014
Сообщений: 9

Зависает программа при нажатии кнопки

27.11.2015, 23:56. Просмотров 397. Ответов 2
Метки (Все метки)

Суть программы была такова, что при нажатии на кнопку должен запускаться цикл, который будет включать мобильный интернет и через некоторое время выключать и заново.
Совсем незнаком с синтаксисом явы, двухдневное курение мануалов привело к коду ниже:
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.example.steamtradesupporter;
 
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.concurrent.TimeUnit;
 
import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.view.View.OnClickListener;
 
public class MainActivity extends Activity {
    
    Method dataConnSwitchmethod_ON;
    Method dataConnSwitchmethod_OFF;
    Class telephonyManagerClass;
    Object ITelephonyStub;
    Class ITelephonyClass;
    Button butt;
    TextView tView;
    
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
 
butt = (Button) findViewById(R.id.but);
tView = (TextView)findViewById(R.id.tv);
 
butt.setOnClickListener(new OnClickListener() {
    public void onClick(View v) {
        tView.setText("Программа запущена");
        StartTrade();
    }
});
}
 
private void StartTrade() {
    int n = 1;
    while (n == 1) {
        mobiledataenable(true);
        try {
            TimeUnit.SECONDS.sleep(120);
        } catch (InterruptedException e1) {
            e1.printStackTrace();
        }
        mobiledataenable(false);
        try {
              TimeUnit.SECONDS.sleep(10);
            } catch (InterruptedException e) {
              e.printStackTrace();
            }
    }
}
 
private void mobiledataenable(boolean enabled) {
 
try { 
        final ConnectivityManager conman = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
        final Class<?> conmanClass = Class.forName(conman.getClass().getName());
        final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService");
        iConnectivityManagerField.setAccessible(true);
        final Object iConnectivityManager = iConnectivityManagerField.get(conman);
        final Class<?> iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName());
        final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE);
        setMobileDataEnabledMethod.setAccessible(true);
        setMobileDataEnabledMethod.invoke(iConnectivityManager, enabled);
    }
    catch (Exception e)
    {
        e.printStackTrace();
    }     
}
 
 
}
Все дело в том, что при нажатии на кнопку, программа зависает и уже ничего нельзя сделать + позже, после одного цикла, программа вообще перестает работать и зависает. Как это пофиксить? Уже не знаю, как с этим бороться.

Вернуться к обсуждению:
Зависает программа при нажатии кнопки
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2015, 23:56
Готовые ответы и решения:

Вылет при нажатии кнопки
Доброго времени суток. Опять непонятная ошибка, при нажатии кнопки приложение...

Убить приложение при нажатии кнопки
Здравствуйте. Нужно сделать кнопку выхода из приложения, но так, чтобы оно...

Дизайн кнопки при наведении, нажатии
Создал в папке drawable папку mybutton, создал там XML файл use.xml: &lt;?xml...

Ошибка при нажатии кнопки button
Добрый день, прошу прощения за такой глупый вопрос. Только начал разбираться, и...

Считывание чисел при нажатии на кнопки
Здравствуйте . Пишу калькулятор под Android на Java . На экране есть кнопки...

2
Другие темы раздела
Программирование Android Не получается считать информацию с sdcard http://www.cyberforum.ru/android-dev/thread1594864.html
Если задаю что-то из корня, например: String path_to_file = "/etc/ad_calib.cfg"; то приложение не падает. Если ввожу что-нибудь из sdcard, например: String path_to_file =...
Программирование Android Траблы с ListView Всем привет, подскажите в чем может быть дело. Инициализирую ListView. Приложение при запуске падает и все. Вот MainActivity package com.example.listview; import android.app.ListActivity;... http://www.cyberforum.ru/android-dev/thread1594800.html
Программирование Android Программа для Android, работа с юникодом
Здравствуйте! Вопрос такой: Нужно создать алгоритм, который будет разбивать текст на символы, переводить символы в код юникода, прибавлять заданное число к коду, переводить полученное число...
Программирование Android Почему Handler не отображает сообщение на экране
Есть Handler, который выполняет Runnable, во входящий поток отправляется сообщение, по сути он должен отобразить его на экране, но нет, если не работает, то явно что-то я не так делаю, подскажите и...
Программирование Android Ускорение времени срабатывания кнопок с несколькими кодами (Key android:codes="97,98,99") http://www.cyberforum.ru/android-dev/thread1594460.html
Есть олд стайл клавиатура (см. файл) и очень быстрый набиратель текста по-старинке :) Мне надо напечатать, например, "abac", что потребует достаточного много времени ожидания: 1-но нажатие для "а",...
Программирование Android Безопасность амазоновского identity pool в app Как можно защитить identity pool? Если его даже зашифровать и оставить в ресурсах, все равно при декомпиляции он станет доступен взломщику ч/з функцию дешифровки. Есть ли идеи на сей счет? Спасибо. подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru