Вопрос

Всем привет!Я новичок в программировании 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 не может функционировать в фоновом режиме, что, к сожалению, потому что с ним проще всего протестировать.Каких еще слушателей я мог бы настроить таким же образом, чтобы легко протестировать и узнать, как код работает в симуляторе?

Спасибо!
Стефани

Это было полезно?

Решение

Ты не можешь слушать клавиатура, трекбол или трекпад вводите, если только в вашем приложении нет экрана на переднем плане.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top