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

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

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

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

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

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

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

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


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

Добавлено через 23 часа 59 минут
понятно, наверно никак
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2016, 07:38     Как отследить удерживание кнопки при старте программы?
Посмотрите здесь:
Оформление кнопки: отследить, вмещается ли текст в размеры кнопки Android
TextInputLayout "открытие поля при старте программы" Android
Как загрузить видео при старте Activity? Android
Android Как при старте приложения запустить другой Activity ?
Android Smack крашится при старте
Приложение вылетает при старте на 4.1, на 4.4 - работает Android
Запуск анимации при старте активити Android
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
vxg
Модератор
3118 / 1920 / 208
Регистрация: 13.01.2012
Сообщений: 7,353
30.08.2016, 09:10     Как отследить удерживание кнопки при старте программы? #2
Autochapa, чем onKeyDown не устроил?
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
30.08.2016, 09:13  [ТС]     Как отследить удерживание кнопки при старте программы? #3
он срабатывает, если я удерживая кнопку запущу приложение?
vxg
Модератор
3118 / 1920 / 208
Регистрация: 13.01.2012
Сообщений: 7,353
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
323 / 283 / 59
Регистрация: 17.10.2014
Сообщений: 836
30.08.2016, 15:16     Как отследить удерживание кнопки при старте программы? #7
Цитата Сообщение от kozak95 Посмотреть сообщение
Можете пример привести зачем нужно запускать приложение и держать еще какую-то кнопку?
имхо какой нить Admin-mode
Pablito
2419 / 1864 / 583
Регистрация: 12.05.2014
Сообщений: 6,604
Завершенные тесты: 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
Сообщений: 181
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
103 / 103 / 37
Регистрация: 24.05.2015
Сообщений: 313
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
103 / 103 / 37
Регистрация: 24.05.2015
Сообщений: 313
31.08.2016, 13:39     Как отследить удерживание кнопки при старте программы? #15
Цитата Сообщение от Autochapa Посмотреть сообщение
у меня этот код срабатывает только при отпускании кнопки и при работающем приложении
Срабатывает да, при отпускание, но если сначала нажать допустим volume up, потом запустить приложение и отпустить то срабатывает.
Проверял на HTC One M7.
ExFau$t
249 / 224 / 42
Регистрация: 08.05.2012
Сообщений: 1,221
31.08.2016, 16:38     Как отследить удерживание кнопки при старте программы? #16
Цитата Сообщение от Autochapa Посмотреть сообщение
если приложение запускается
Ну создавай бродкаст при запуске и слушай в нём нажатие кнопки.
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
31.08.2016, 18:08  [ТС]     Как отследить удерживание кнопки при старте программы? #17
Цитата Сообщение от fraley Посмотреть сообщение
потом запустить приложение и отпустить то срабатывает.
приложение отрабатывает быстрее и выходит, чем вы подумаете отпустить, вот в чем трабл

Добавлено через 37 секунд
Цитата Сообщение от ExFau$t Посмотреть сообщение
Ну создавай бродкаст при запуске и слушай в нём нажатие кнопки.
кнопка нажата до запуска
ExFau$t
249 / 224 / 42
Регистрация: 08.05.2012
Сообщений: 1,221
31.08.2016, 23:01     Как отследить удерживание кнопки при старте программы? #18
Autochapa, бродскаст создаётся при самом первом запуске после установки, потом запускать приложение не придётся.
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 29
01.09.2016, 01:10  [ТС]     Как отследить удерживание кнопки при старте программы? #19
Цитата Сообщение от ExFau$t Посмотреть сообщение
бродскаст создаётся при самом первом запуске после установки
понятно, т.е. чтото должно висеть в памяти получается всетаки?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2016, 01:56     Как отследить удерживание кнопки при старте программы?
Еще ссылки по теме:
Android Запрос разрешений при старте приложения
Открытие приложения при старте устройства Android
Создание выборочного activity при старте application Android
Android Меню выбора на фоне запущенной камеры при старте приложения?
FATAL EXCEPTION: main при старте приложения на android ниже API 21 Android

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

Или воспользуйтесь поиском по форуму:
Lumber
98 / 98 / 37
Регистрация: 02.12.2015
Сообщений: 238
01.09.2016, 01:56     Как отследить удерживание кнопки при старте программы? #20
Может автоповтор ловить?

Проверять getRepeatCount и если там не ноль в первом событии после запуска программы, то кнопка была нажата до запуска и удерживается.
Yandex
Объявления
01.09.2016, 01:56     Как отследить удерживание кнопки при старте программы?
Ответ Создать тему
Опции темы

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