© 2021 WebHive

Пробуем Rhomobile

Итак решил попробовать Rhomobile

Создаём в RVM новый gemset

1
2
3
cd /home/roman/.Projects/Sam/corp-house/mobile       ruby-2.0.0-p353@evrone-resto
ruby-2.1.1 - #gemset created /home/roman/.rvm/gems/ruby-2.1.1@citishift-rho
ruby-2.1.1 - #generating citishift-rho wrappers - please wait

Устанавливаем rhodes

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
gem install rhodes

Fetching: highline-1.6.21.gem (100%)
Successfully installed highline-1.6.21
Fetching: diff-lcs-1.2.5.gem (100%)
Successfully installed diff-lcs-1.2.5
Fetching: extlib-0.9.16.gem (100%)
Successfully installed extlib-0.9.16
Fetching: templater-1.0.0.gem (100%)
Successfully installed templater-1.0.0
Fetching: activesupport-2.3.18.gem (100%)
Successfully installed activesupport-2.3.18
Fetching: systemu-2.6.4.gem (100%)
Successfully installed systemu-2.6.4
Fetching: macaddr-1.7.1.gem (100%)
Successfully installed macaddr-1.7.1
Fetching: uuid-2.3.7.gem (100%)
Successfully installed uuid-2.3.7
Fetching: rhodes-3.5.1.12.gem (100%)
Building native extensions. This could take a while...
Successfully installed rhodes-3.5.1.12
9 gems installed

При попытке генерации приложения ругнулось на отсутсвие iconv — ставим

1
2
3
4
5
6
gem install iconv

Fetching: iconv-1.0.4.gem (100%)
Building native extensions. This could take a while...
Successfully installed iconv-1.0.4
1 gem installed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
rhodes-setup

We will ask you a few questions below about your dev environment.

JDK path (required) (/usr/lib/jvm/java-default-runtime):
Android SDK path (blank to skip) (/opt/android-sdk):
Android NDK path (blank to skip) ():
Windows Mobile 6 SDK CabWiz (blank to skip) ():
BlackBerry JDE 4.6 (blank to skip) ():
BlackBerry JDE 4.6 MDS (blank to skip) ():
BlackBerry JDE 4.2 (blank to skip) ():
BlackBerry JDE 4.2 MDS (blank to skip) ():

If you want to build with other BlackBerry SDK versions edit: /home/roman/.rvm/gems/ruby-2.1.1@citishift-rho/gems/rhodes-3.5.1.12/rhobuild.yml

Создаём новое приложение

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
rhodes app citishift

Generating with app generator:
[ADDED] citishift/rhoconfig.txt
[ADDED] citishift/build.yml
[ADDED] citishift/.gitignore
[ADDED] citishift/app/application.rb
[ADDED] citishift/app/index.erb
[ADDED] citishift/app/index.bb.erb
[ADDED] citishift/app/layout.erb
[ADDED] citishift/app/loading.html
[ADDED] citishift/Rakefile
[ADDED] citishift/app/loading.png
[ADDED] citishift/app/loading-568h@2x.png
[ADDED] citishift/app/loading-Landscape.png
[ADDED] citishift/app/loading-LandscapeLeft.png
[ADDED] citishift/app/loading-LandscapeRight.png
[ADDED] citishift/app/loading-Portrait.png
[ADDED] citishift/app/loading-PortraitUpsideDown.png
[ADDED] citishift/app/loading@2x.png
[ADDED] citishift/app/helpers
[ADDED] citishift/icon
[ADDED] citishift/app/Settings
[ADDED] citishift/public

RhoSimulator существует только под Windows — печаль.

Итого впечатления от работы

Выражаясь словами известного персонажа «Какая гадость эта ваша …». В общем и целом разочарован технологией.

Претензии следующие:

  • нативный вид как оказалось эмулируется CSS файлами, т. е. внутри это обычный WebView со всем вытекающими
  • тормозит — собственно от ruby на мобильном устройстве вполне ожидаемо, но даже являясь поклонником ruby считаю, что в данном контексте это уже перебор
  • эмулятор только под Windows
  • тестовое приложение от самих создателей на живом телефоне — через несколько секунд после завершения выдавало окно ошибки — мелочь вроде, но тоже энтузиазма не прибавляет

Сам фреймворк — достаточно типичный MVC — каких-то проблем и затруднений с ним не испытал. Документация тоде достаточно внятная.

Комментарии