Pull to refresh

Пишем первую программу для RIM BlackBerry

Reading time5 min
Views11K
В этой статье я расскажу как написать простое приложение для смартфонов BlackBerry, которые производит канадская компания RIM (Research In Motion).

Инструментарий для разработки предоставляется компанией RIM бесплатно. Отладка приложения может производиться как на симуляторе, так и прямо на устройстве. Для того, чтобы иметь возможность выполнять приложение на устройстве, скомпилированный файл с расширением .cod надо подписать специальным электронным ключом, который предоставляется RIM и является бессрочным. Теоретически возможно обойтись без электронного ключа. В ключе нет необходимости, если вы запускаете написанные программы только в симуляторе. Также нет необходимости в ключе, если вы, при написании приложения предназначенного для выполнения на устройстве, применяете только классы не входящие в список «controlled API». Должен заметить, что большинство классов RIM API входят в этот список и приложения, их использующие, должны быть подписаны, в противном случае на устройстве они не запустятся.

Процесс получения ключа очень прост. Заполняете форму на сайте RIM, указываете реквизиты вашей кредитной карты и совершаете покупку (сейчас ключи стали предоставлять бесплатно). Через пару дней на вашу электронную почту приходят файлы электронных ключей с инструкцией по их использованию. Ещё через какое-то время на обычную уже почту придёт бумажное письмо с подтверждающими покупку ключей документами.

Разработку приложений для смартфонов BlackBerry можно вести с помощью следующих инструментов:
  1. BlackBerry Java Development Environment (BlackBerry JDE) — был одним из первых инструментов для разработки BlackBerry-приложений на Java. Сейчас выпускается скорее по привычке, нежели из необходимости. Вести разработку сколь-нибудь сложного приложения в нём довольно непросто. Нет многих удобных функций, которыми оснащены современные IDE, такие как Eclipse, Netbeans, IDEA и другие.
  2. BlackBerry JDE Plugin for Eclipse — плагин для Eclipse, установив который, можно создавать и вести отладку приложений для BlackBerry. Намного более удобный инструмент, нежели BlackBerry JDE. Перед его установкой надо установить требуемую плагином версию Eclipse. Путь к установленному Eclipse будет запрошен во время установки BlackBerry JDE Plugin.
  3. Набор инструментов для создания так называемых «Browser Applications», которые пишутся с применением HTML, CSS и JavaScript и выполняются в браузере BlackBerry.

Приложение, описанное в этой статье, я буду создавать с помощью Eclipse и BlackBerry JDE Plugin for Eclipse. Надо заметить, что средства разработки, использующие Java, не поддерживают новшеств, которые появились в Java, начиная с версии 1.5. То есть о применении generics, enums и прочих новых возможностей думать, к сожалению, не приходится.

Итак, устанавливаем поддерживаемую BlackBerry JDE Plugin версию Eclipse, после чего устанавливаем сам плагин.

Затем запускаем Eclipse и создаём наш первый проект.

Создание нового проекта

Указываем название проекта. Значение «BlackBerry JRE 5.0» в разделе «JRE» диалогового окна говорит о том, какая версия RIM API используется в проекте. В данном случае используется версия RIM API 5.0.0.

Свойства нового проекта

Вы можете установить поддержку других версий API и обновления для BlackBerry JDE Plugin for Eclipse через стандартный механизм обновления Eclipse.

Подробное описание тонкостей работы с BlackBerry JDE Plugin for Eclipse дано в документации к нему, которую можно скачать с сайта.

После закрытия диалога создания проекта перед нами будет открыто окно дескриптора приложения. В нём описываются все необходимые свойства приложения.

Дескриптор приложения BlackBerry

Тут остановимся и рассмотрим поля дескриптора поподробнее. Нам понадобится только часть из них.

  • Title — название приложения, которое будет отображаться на экране устройства
  • Version — версия приложения
  • Vendor — автор приложения
  • Description — краткое описание приложения. При установке пользователь сможет прочитать его, нажав соответствующую кнопку в BlackBerry Desktop Manager, если установка производится через кабель USB, либо он увидит описание при установке приложения через интернет, открыв соответствующий этому приложению jad-файл на сервере.
  • Application type — тип приложения. Оставляем по-умолчанию «BlackBerry Application», что означает — «приложение BlackBerry». Помимо этого типа есть также тип «Library», для компиляции библиотеки, которой могут пользоваться другие программы, установленные на устройстве. Тип «MIDlet» подразумевает создание MIDlet-а с применением классов Java2ME.
  • Application argument — аргумент, который будет передаваться в main(String[] args). В нашем случае нам это поле без надобности.
  • Auto-run on startup — включаем, если приложение должно запускаться при старте устройства. Startup tier говорит в какую очередь будет запущено ваше приложение. В BlackBerry Java Development Environment можно было указывать малое значение для этого поля, что приводило к тому, что приложение запускалось до того, как были запущены необходимые для его функционирования компоненты операционной системы. В Eclipse оставили только два возможных значения: 6 и 7. Семёрка означает, что запускать в самую последнюю очередь при старте операционной системы.
  • Do not display the application icon on the BlackBerry home screen — включается в тех случаях, когда мы создаём не UI-приложение, которое работает в фоновом режиме и обычно запускается при включении устройства.
  • Раздел Locale resources — используется для указания ресурсов локализации, которые будут использоваться в данном приложении. В данной статье на этом подробно останавливаться не будем.
  • Application icons — позволяет задать одну или несколько иконок для приложения. Мы также не будем останавливаться на этом вопросе в этой статье.


Создаём первый и главный класс нашего приложения.

Создание главного класса приложения BlackBerry

Приложения для BlackBerry бывают как видимые (так называемые Ui-приложения), так и фоновые. Так как мы пишем Ui-приложение, то наследуем главный класс нашего приложения от net.rim.device.api.ui.UiApplication.

Первоначально главный класс нашего приложения выглядит так:

package test.myfirstapp;

import net.rim.device.api.ui.UiApplication;

public class MyApplication extends UiApplication {

  public static void main(String[] args) {
  
  }

}


Теперь создаём класс для отображения информации на экране устройства.

Класс для отображения информации

Наследуем его от класса net.rim.device.api.ui.container.MainScreen

После создания класса пишем для него код:

package test.myfirstapp.view;

import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.MainScreen;

public class MyAppScreen extends MainScreen {

  public MyAppScreen() {
    // формируем меню по-умолчанию, с пунктом для закрытия приложения
    super(DEFAULT_MENU | DEFAULT_CLOSE);
    
    // устанавливаем заголовок
    setTitle("My first application");
    
    // добавляем нередактируемое поле с надписью
    this.add(new LabelField("Hello world!"));
  }

  // обработка попытки закрытия экрана
  public boolean onClose() {
    // при закрытии экрана завершаем работу приложения
    System.exit(0);
    
    // true подтверждает, что экран будет закрыт
    return true;
  }  
}


Затем возвращаемся в главный класс приложения и пишем код для него:


package test.myfirstapp;

import test.myfirstapp.view.MyAppScreen;
import net.rim.device.api.ui.UiApplication;

public class MyApplication extends UiApplication {

  public static void main(String[] args) {
    // создаём экземпляр класса приложения
    final MyApplication app = new MyApplication();
    
    // начинаем принимать события от операционной системы
    app.enterEventDispatcher();    
  }

  public MyApplication() {
    // показываем созданный экран 
    this.pushScreen(new MyAppScreen());
  }
}


Вот, в принципе, и всё. Можно запускать приложение в симуляторе.

Дистрибутив BlackBerry JDE Plugin for Eclipse 1.1 включает в себя набор симуляторов для устройств BlackBerry. Набор симуляторов в Eclipse можно расширить, установив поддержку других версий API. Текущий используемый симулятор можно установить в диалоговом окне через вызов меню: Run — Run Configurations, закладка «Simulator»

По-умолчанию установлен симулятор для BlackBerry Storm 9550.

Конфигурация запуска приложения

Запускаем программу в симуляторе, вызвав из меню: Run — Run As — BlackBerry simulator

Запуск приложения в симуляторе

Появится окно симулятора, в котором вы можете выбрать написанное нами приложение и запустить его. Процесс выбора и запуска приложения показан в анимированной картинке ниже.

Запуск приложения в симуляторе

Те, кому стало интересно, могут почитать про классы RIM API версии 5.0 и ознакомиться с большим количеством разнообразной документации и руководств для разработчиков.

Функционирует официальный форум, посвящённый разработке приложений для BlackBerry, на котором можно пообщаться с другими программистами и с сотрудниками компании Research In Motion.
Tags:
Hubs:
+22
Comments46

Articles

Change theme settings