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

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

Войти
Регистрация
Восстановить пароль
 
 
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
#1

Как отследить удерживание кнопки при старте программы? - Программирование Android

30.08.2016, 07:38. Просмотров 579. Ответов 24
Метки нет (Все метки)

Например хочу чтобы при нажатой Volume UP и запуске моего приложения чтото происходило.

Все перерыл, но везде одно и то же про onKeyDown

но мне нужно лишь считать состояние кнопки при запсуке программы


как это возможно сделать?

Добавлено через 23 часа 59 минут
понятно, наверно никак
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2016, 07:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как отследить удерживание кнопки при старте программы? (Программирование Android):

Оформление кнопки: отследить, вмещается ли текст в размеры кнопки - Программирование Android
Добрый день, задача стоит следующая динамически создаю кучу кнопок, каждой присваиваю setText из массива. for (int...

TextInputLayout "открытие поля при старте программы" - Программирование Android
Ребят, всем привет! Вот решил немного изучить дизайн, и не могу понять в чем дело, когда использую TextInputLayout в своем view и стартую -...

Как загрузить видео при старте Activity? - Программирование Android
Всем привет. Возможно этот вопрос покажется для кого-то простым и не уместным, но так как я только начинаю заниматься Андройдом я никак...

Как при старте приложения запустить другой Activity ? - Программирование Android
Всем привет, ребят подскажите, как при запуске поменять первую запускаемую форму ? То есть чтобы сперва запускалась не main.xml(та что...

Smack крашится при старте - Программирование Android
Всем привет. Третий день не могу решить поставленную задачу, хотя казалось бы сложного не чего нет. Использую библиотеку smack для...

Открытие приложения при старте устройства - Программирование Android
Всем привет! Нужно реализовать такую ​​вещь, необходимо чтобы при включении планшета на базе ос андроид, загружалось автоматически...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
vxg
Модератор
3156 / 1958 / 218
Регистрация: 13.01.2012
Сообщений: 7,487
30.08.2016, 09:10 #2
Autochapa, чем onKeyDown не устроил?
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
30.08.2016, 09:13  [ТС] #3
он срабатывает, если я удерживая кнопку запущу приложение?
vxg
Модератор
3156 / 1958 / 218
Регистрация: 13.01.2012
Сообщений: 7,487
30.08.2016, 10:16 #4
Autochapa, осознал, проникся. да, надо искать именно статус кнопки если это возможно вообще, а не факт ее нажатия так как это событие произошло до запуска.
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
30.08.2016, 11:40  [ТС] #5
ага, хоть аппаратно отслеживай
но вот только чтото не нашел нигде...
kozak95
34 / 34 / 10
Регистрация: 01.11.2013
Сообщений: 319
30.08.2016, 13:51 #6
Autochapa, А нужно ли такая возможность вообще? Можете пример привести зачем нужно запускать приложение и держать еще какую-то кнопку?
androbro
325 / 285 / 60
Регистрация: 17.10.2014
Сообщений: 841
30.08.2016, 15:16 #7
Цитата Сообщение от kozak95 Посмотреть сообщение
Можете пример привести зачем нужно запускать приложение и держать еще какую-то кнопку?
имхо какой нить Admin-mode
Pablito
2471 / 1916 / 595
Регистрация: 12.05.2014
Сообщений: 6,741
Завершенные тесты: 1
30.08.2016, 15:43 #8
привяжись к показаниям акселерометра, например если в момент запуска программы телефон перевернут "вниз головой" то делай магию
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
30.08.2016, 16:30 #9
Присоединяюсь к вопросу! Можно ли ГЛОБАЛЬНО перехватить VolumeUP?
кажется очень давно встречал прогу, которая уменьшала звук своим диалогом на нажатие кнопки. Но это было ОЧЕНЬ давно - даже название не вспомню... (не уверен что диалог не вызывался на "реактор" изменения громкости)
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 190
30.08.2016, 18:20 #10
Tester64, A-Volume виджет
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
30.08.2016, 18:39  [ТС] #11
Цитата Сообщение от androbro Посмотреть сообщение
имхо какой нить Admin-mode
да вот именно,

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

а вот логику отработки чтобы можно было менять при запуске с удержанной кнопкой vlup
Tester64
395 / 356 / 43
Регистрация: 22.05.2013
Сообщений: 2,518
30.08.2016, 20:16 #12
Цитата Сообщение от den_droid Посмотреть сообщение
A-Volume виджет
Нет! Другая! Эта у меня стояла... Она виджет дает и диалогом можно управлять. А та на нажатие на кнопку изменения громкости выдавала окошко с громкостями и возможно даже с эквалайзерами. Сочное такое окошко... в ярких тонах...
Скорее такая (лень устанавливать): https://play.google.com/store/apps/d...odlanica&hl=en
fraley
105 / 105 / 38
Регистрация: 24.05.2015
Сообщений: 316
31.08.2016, 08:26 #13
Возможно я не понял что подразумевает ТС, но при сценарии нажата кнопка Volume UP или Volume Down и запуск приложение нажатием на лаунчер-иконку этот код работает.

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
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
 
    @Override
    public boolean onKeyUp(int keyCode, KeyEvent event) {
        super.onKeyUp(keyCode, event);
        if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
            Toast.makeText(MainActivity.this,"KEYCODE_VOLUME_UP",Toast.LENGTH_SHORT).show();
            return true;
        }
        return false;
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        super.onKeyDown(keyCode, event);
        if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
            Toast.makeText(MainActivity.this,"KEYCODE_VOLUME_DOWN",Toast.LENGTH_SHORT).show();
            return true;
        }
        return false;
    }
}
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
31.08.2016, 12:57  [ТС] #14
можь я че не так делаю?

у меня этот код срабатывает только при отпускании кнопки и при работающем приложении

а если приложение запускается, заносит данные в буфер обмена и завершается не ожидая ничего?

вот тогда этот вариант не прокатывает, либо надо давть время на ожидание отпускания кнопки, а это не входит в мои планы
fraley
105 / 105 / 38
Регистрация: 24.05.2015
Сообщений: 316
31.08.2016, 13:39 #15
Цитата Сообщение от Autochapa Посмотреть сообщение
у меня этот код срабатывает только при отпускании кнопки и при работающем приложении
Срабатывает да, при отпускание, но если сначала нажать допустим volume up, потом запустить приложение и отпустить то срабатывает.
Проверял на HTC One M7.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.08.2016, 13:39
Привет! Вот еще темы с ответами:

Запрос разрешений при старте приложения - Программирование Android
При старте приложения сделал запрос на пермишены в onCreate, проблемка в том, что запрос асинхронный, и во время запроса приложение...

Приложение вылетает при старте на 4.1, на 4.4 - работает - Программирование Android
Здравствуйте, Я написал приложение для android в eclipse 4.4.2. На телефоне с android 4.4.2 приложение отлично работает. На телефоне...

Запуск анимации при старте активити - Программирование Android
Есть покадровая анимация, которая выставлена фоном одного из элементов интерфейса. прописана как надо: //анимация ...

Создание выборочного activity при старте application - Программирование Android
Доброго времени суток! В приложении возможна регистрация. Когда юзер не зарегистрирован, то его при старте app перенаправляет на...


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

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

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