Поток фонового прослушивателя Blackberry
-
10-10-2019 - |
Вопрос
Всем привет!Я новичок в программировании blackberry, хотя у меня есть некоторые опыт работы с Java, поскольку c # является моим основным языком).
То, что я пытаюсь сделать, это написать поток, который будет запускаться при запуске системы и существовать в фоновом режиме в качестве слушателя.
Я бы хотел, чтобы мое приложение реализовывало KeyListener и в основном работало в фоновом режиме, пока телефон включен, и отслеживало гистограмму того, сколько раз была нажата каждая кнопка.В настоящее время я работаю на симуляторе, поэтому пока я просто собираюсь распечатать его на консоли, когда он получит ключ.
Мне удалось реализовать KeyListener в UIApplication, но он работает только во время загрузки приложения.
Вот приложение, которое у меня есть в данный момент
public class CustomApp extends UiApplication
{
private keyListenerThread listener;
public stati void main(String[] args)
{
CustomApp myApp = new CustomApp();
myApp.enterEventDispatcher();
}
public CustomApp()
{
listener = new KeyListenerThread();
this.addKeyListener(listener)
//.....other GUI setupthings....
pushScreen(mainScreen);
}
private class KeyListenerThread extends Thread implements KeyListener
{
public KeyListenerThread()
{
}
public boolean keyDown(int arg0, int art1)
{
System.out.println("button pressed!!");
}
//...other keylistener methods
}
однако это работает только в том случае, если приложение открыто.так что это не совсем то, чего я пытаюсь достичь.Если кто-нибудь может указать мне правильное направление, я был бы признателен!
Редактировать:
Я нашел этот пример, который частично показывает, что я ищу: http://supportforums.blackberry.com/t5/Java-Development/Allow-a-background-listener-to-detect-and-update-a-GUI/ta-p/442907 Единственная проблема заключается в том, что я делаю это в симуляторе, и я не знаю, как использовать этот код, чтобы я мог действительно отлаживать его работу.Мне сказали, что keylistener не может функционировать в фоновом режиме, что, к сожалению, потому что с ним проще всего протестировать.Каких еще слушателей я мог бы настроить таким же образом, чтобы легко протестировать и узнать, как код работает в симуляторе?
Спасибо!
Стефани
Решение
Ты не можешь слушать клавиатура, трекбол или трекпад вводите, если только в вашем приложении нет экрана на переднем плане.