Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
1

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

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

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

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

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


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

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

Вылет при старте программы
Программа должна содержать 2 EditText с OnFocusChangeListener и TextWatcher ...

Оформление кнопки: отследить, вмещается ли текст в размеры кнопки
Добрый день, задача стоит следующая динамически создаю кучу кнопок, каждой...

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

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

Как при старте приложения запустить другой Activity ?
Всем привет, ребят подскажите, как при запуске поменять первую запускаемую...

24
vxg
Модератор
3252 / 2052 / 323
Регистрация: 13.01.2012
Сообщений: 7,946
30.08.2016, 09:10 2
Autochapa, чем onKeyDown не устроил?
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
30.08.2016, 09:13  [ТС] 3
он срабатывает, если я удерживая кнопку запущу приложение?
0
vxg
Модератор
3252 / 2052 / 323
Регистрация: 13.01.2012
Сообщений: 7,946
30.08.2016, 10:16 4
Autochapa, осознал, проникся. да, надо искать именно статус кнопки если это возможно вообще, а не факт ее нажатия так как это событие произошло до запуска.
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
30.08.2016, 11:40  [ТС] 5
ага, хоть аппаратно отслеживай
но вот только чтото не нашел нигде...
0
kozak95
34 / 34 / 21
Регистрация: 01.11.2013
Сообщений: 319
30.08.2016, 13:51 6
Autochapa, А нужно ли такая возможность вообще? Можете пример привести зачем нужно запускать приложение и держать еще какую-то кнопку?
0
androbro
343 / 303 / 68
Регистрация: 17.10.2014
Сообщений: 897
30.08.2016, 15:16 7
Цитата Сообщение от kozak95 Посмотреть сообщение
Можете пример привести зачем нужно запускать приложение и держать еще какую-то кнопку?
имхо какой нить Admin-mode
0
Pablito
2722 / 2165 / 735
Регистрация: 12.05.2014
Сообщений: 7,572
Завершенные тесты: 1
30.08.2016, 15:43 8
привяжись к показаниям акселерометра, например если в момент запуска программы телефон перевернут "вниз головой" то делай магию
1
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
30.08.2016, 16:30 9
Присоединяюсь к вопросу! Можно ли ГЛОБАЛЬНО перехватить VolumeUP?
кажется очень давно встречал прогу, которая уменьшала звук своим диалогом на нажатие кнопки. Но это было ОЧЕНЬ давно - даже название не вспомню... (не уверен что диалог не вызывался на "реактор" изменения громкости)
0
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 191
30.08.2016, 18:20 10
Tester64, A-Volume виджет
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
30.08.2016, 18:39  [ТС] 11
Цитата Сообщение от androbro Посмотреть сообщение
имхо какой нить Admin-mode
да вот именно,

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

а вот логику отработки чтобы можно было менять при запуске с удержанной кнопкой vlup
0
Tester64
396 / 357 / 46
Регистрация: 22.05.2013
Сообщений: 2,518
30.08.2016, 20:16 12
Цитата Сообщение от den_droid Посмотреть сообщение
A-Volume виджет
Нет! Другая! Эта у меня стояла... Она виджет дает и диалогом можно управлять. А та на нажатие на кнопку изменения громкости выдавала окошко с громкостями и возможно даже с эквалайзерами. Сочное такое окошко... в ярких тонах...
Скорее такая (лень устанавливать): https://play.google.com/store/apps/details?id=hr.podlanica&hl=en
0
fraley
110 / 110 / 43
Регистрация: 24.05.2015
Сообщений: 329
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;
    }
}
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
31.08.2016, 12:57  [ТС] 14
можь я че не так делаю?

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

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

вот тогда этот вариант не прокатывает, либо надо давть время на ожидание отпускания кнопки, а это не входит в мои планы
0
fraley
110 / 110 / 43
Регистрация: 24.05.2015
Сообщений: 329
31.08.2016, 13:39 15
Цитата Сообщение от Autochapa Посмотреть сообщение
у меня этот код срабатывает только при отпускании кнопки и при работающем приложении
Срабатывает да, при отпускание, но если сначала нажать допустим volume up, потом запустить приложение и отпустить то срабатывает.
Проверял на HTC One M7.
0
ExFau$t
567 / 511 / 115
Регистрация: 08.05.2012
Сообщений: 2,539
31.08.2016, 16:38 16
Цитата Сообщение от Autochapa Посмотреть сообщение
если приложение запускается
Ну создавай бродкаст при запуске и слушай в нём нажатие кнопки.
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
31.08.2016, 18:08  [ТС] 17
Цитата Сообщение от fraley Посмотреть сообщение
потом запустить приложение и отпустить то срабатывает.
приложение отрабатывает быстрее и выходит, чем вы подумаете отпустить, вот в чем трабл

Добавлено через 37 секунд
Цитата Сообщение от ExFau$t Посмотреть сообщение
Ну создавай бродкаст при запуске и слушай в нём нажатие кнопки.
кнопка нажата до запуска
0
ExFau$t
567 / 511 / 115
Регистрация: 08.05.2012
Сообщений: 2,539
31.08.2016, 23:01 18
Autochapa, бродскаст создаётся при самом первом запуске после установки, потом запускать приложение не придётся.
0
Autochapa
0 / 0 / 0
Регистрация: 28.11.2015
Сообщений: 32
01.09.2016, 01:10  [ТС] 19
Цитата Сообщение от ExFau$t Посмотреть сообщение
бродскаст создаётся при самом первом запуске после установки
понятно, т.е. чтото должно висеть в памяти получается всетаки?
0
Lumber
295 / 100 / 41
Регистрация: 02.12.2015
Сообщений: 241
01.09.2016, 01:56 20
Может автоповтор ловить?

Проверять getRepeatCount и если там не ноль в первом событии после запуска программы, то кнопка была нажата до запуска и удерживается.
0
01.09.2016, 01:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2016, 01:56

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

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

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


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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