Афоризм
Как только садишься на диету, рядом тут же кто-то садится жрать.
Михаил Жванецкий
Последние статьи

 • Активности Android
Многоэкранные Android приложения
 • Fragment dynamic
Динамическая загрузка фрагментов в Android
 • Fragment lifecycle
Жизненный цикл Fragment'ов в Android
 • Fragment example
Пример Fragment'ов в Android
 • Data Binding
Описание и пример Data Binding
 • Пример MVVM
Пример использования MVVM в Android
 • Компонент TreeTable
Описание компонента TreeTable для Swing
 • Пример TreeTable
Пример использования TreeTable
 • Хранилища Android
Внутренние и внешние хранилища данных
 • Пример SQLite
Пример использования SQLite в Android
 • WebSocket
Описание и пример реализации WebSocket
 • Визуальные компоненты
Улучшен компонент выбора даты из календаря
 • Анимация jQuery
Описание и примеры анимации элементов DOM
 • APK-файл Android
Создание apk-файла для android устройств, .dex файлы
 • платформа JaBricks
Платформа OSGi-приложения JaBricks
Поддержка проекта

Если Вам сайт понравился и помог, то будем признательны за Ваш «посильный» вклад в его поддержку и развитие
 • Yandex.Деньги
  410013796724260

 • Webmoney
  R335386147728
  Z369087728698

Урок 1. Структура приложения

Структура приложения JaBricks для первого урока, представленная на следующем сриншоте, включает :

  • набор бандлов в поддиректории конфигурации «configuration/bundles»;
  • изображение иконки приложения «configuration/resources/images/app-icon.png»;
  • описание стилей интерфейса приложения «configuration/style.txt» (необязательный файл);
  • файле со списком инсталлируемых бандлов «configuration/bundles.ini»;
  • файл инициализации jabricks.ini;
  • приложение jabricks.jar;
  • файл старта приложения из командной строки run.bat (для Windows).

Бандл «configuration/bundles/templ-jframe-0.0.1.jar», наследующий свойства базового фрейма base-jframe, является главным фреймом приложения. С описанием templ-jframe мы познакомимся в следующих уроках. Назначения остальных бандлов описаны здесь.

Необязательный файл с описанием стилей интерфейса приложения configuration/style.txt может отсутствовать. Но, в этом случае, он будет автоматически создан после старта приложения; контент файла будут составлять значения по умолчанию.

Листинг файла инициализации

Файл инициализации включает язык lang, флаги логирования в файл log.file и в консоль log.console, уровни логирования log.level.

lang=ru
# util-logger
log.file=false
log.console=true
log.level=Info,SQL,OSGi
 

Листинг файла bundles.ini

В файле со списком инсталлируемых бандлов configuration/bundles.ini необходимо выполнить регистрацию всех бандлов приложения. Отдельные бандлы необходимо описать с атрибутом @start для старта после инициализации. Основной фрейм приложения должен быть представлен с атрибутом @main.


bundles=org.apache.felix.eventadmin-1.4.8.jar@start, \
org.apache.felix.log-1.0.1.jar@start, \
util-resources-1.0.0.jar@start, \
util-logger-1.0.0.jar@start, \
base-jframe-1.0.0.jar, \
gui-menu-1.0.0.jar, \
gui-toolbar-1.0.0.jar, \
gui-widgets-1.0.0.jar, \
templ-jframe-1.0.0.jar@main
 

Старт приложения

Приложение можно стартовать обычным способом; jabricks.jar является исполняемым. Можно использовать командный файл run.bat в среде Windows. После старта приложения Вы должны увидеть следующий интерфейс :

Протоколируемые сообщения

Если Вы использовали для старта командную строку (командный файл run.bat), то в консоль будут выведены следующие сообщения об инициализации и старте соответствующих бандлов. Первоначально фреймворк инсталлирует бандлы, описанные в файле configuration/bundles.ini и присутствующие в поддиректории configuration/bundles (состояние INSTALLED). После этого, бандлы с атрибутом @start и @main стартуются фреймворком; бандлы, связанные со стартованными, переводятся фреймворком в состояние RESOLVED. Подсвеченные комментарии поясняют процесс старта фреймворка.


12:08:12,009 START ~~~~~ Framework CREATED ~~~~~
12:08:13,263 INFO  Framework init
12:08:13,266 INFO  Framework start
12:08:13,266 INFO  Install bundles
12:08:13,298 OSGi  gui-widgets : INSTALLED
12:08:13,489 OSGi  base-jframe : INSTALLED
12:08:13,694 OSGi  gui-menu : INSTALLED
12:08:13,778 OSGi  gui-toolbar : INSTALLED
12:08:13,798 OSGi  org.apache.felix.eventadmin : INSTALLED
12:08:13,933 OSGi  org.apache.felix.log : INSTALLED
12:08:13,980 OSGi  templ-jframe : INSTALLED
12:08:14,580 OSGi  util-logger : INSTALLED
12:08:14,205 OSGi  util-resources : INSTALLED
// старт бандлов и фреймворка
12:08:14,298 OSGi  util-logger : STARTED
12:08:14,313 OSGi  base-jframe : RESOLVED
12:08:14,313 OSGi  templ-jframe : RESOLVED
12:08:14,313 OSGi  gui-widgets : RESOLVED
12:08:14,313 OSGi  gui-menu : RESOLVED
12:08:14,313 OSGi  gui-toolbar : RESOLVED
// регистрация фреймворком сервисов
12:08:14,322 OSGi  ServiceEvent REGISTERED : \
                   'jabricks/LocaleEvent'
12:08:14,325 OSGi  ServiceEvent REGISTERED : \
                   'jabricks/Container/Request'
12:08:14,559 OSGi  templ-jframe : STARTED
 

Примечание : в представленных выше сообщениях отображены только артифакты (artifactId) бандлов. Реально Вы увидите символическое наименование (SymbolicName) бандла, включающее groupId и artifactId. Символ переноса '\' делит строку на две части.

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


12:09:04,541 OSGi  ServiceEvent UNREGISTERING : \
                   'jabricks/LocaleEvent'
12:09:04,542 OSGi  ServiceEvent UNREGISTERING : \
                   'jabricks/Container/Request'
 

Описание бандлов для ознакомления

В данном уроке Вам желательно познакомиться с описаниями следующих бандлов, используемых в приложении :

  • util-resources – модуль управления внешними ресурсами;
  • util-logger – модуль логирования сообщений;
  • base-jframe – базовый фрейм JaBricks;
  • templ-jframe – шаблон фрейма JaBricks.

Задание для повторения урока

Для усвоения данного урока выполните, или представьте, как бы Вы выполнили следующие задачи :

  • измените иконку, отображаемую в левом верхнем углу интерфейсной формы приложения;
  • измените текущий язык локализации приложения с 'ru' на 'en';
  • выведите протоколируемые сообщения в файл логирования;
  • отключите логирование.

Скачивание файлов

Файлы приложения, конфигурации и бандлы упакованы в два архива :

  • архив application.zip, включающий файл инициализации jabricks.ini, командный файл run.bat и приложение jabricks.jar;
  • архив configuration.zip, включающий конфигурацию приложения с набором бандлов.

После скачивания «разверните» файлы и создайте структуру, представленную на верхнем скриншоте.

В последующих уроках Вы будете вносить изменения в конфигурацию приложения и набор бандлов.

Связанные страницы

Список уроков
Следующий, 2-й урок

Скачать файлы

В таблице представлены архивные файлы главного приложения и конфигурация первого урока. После скачивания архивных файлов создайте структуру, представленyю на верхнем скриншоте и на странице описания Платформы JaBricks.

АрхивОписаниеСкачать
jabricks.zip Главный модуль jabricks.jar, файл инициализации jabricks.ini,
командный файл запуска из командной строки run.bat
скачать (733 Кб)
configuration.lesson01.zip Конфигурация приложения
скачать (328 Кб)
  Рейтинг@Mail.ru