連載第4回となる今回は、各端末に実装されているGPSやカメラといった物理デバイスをRhodesから扱う方法を紹介する。
GPS
Rhodesの特徴は、前述したMVCアーキテクチャや強力なモジュール群だけではない。各プラットフォームが対応しているデバイス操作も非常に簡単に呼び出せるようになっている。例としてGPS機能を使用し、経度・緯度情報を表示してみよう。
1. GPSを使う準備
GPSを使用する場合は、Rhodesプロジェクトの直下に設置されている「build.yml」にGPSのライブラリを読み込む記述を追加する。
build.yml
sdk: "c:\InstantRhodes\ruby\lib\ruby\gems\rhodes-3.0.2"
sdkversion: 3.0.1
name: roster
version: 1.0
vendor: rhomobile
build: debug
bbver: 4.6
wmsdk: "Windows Mobile 6 Professional SDK (ARMV4I)"
applog: rholog.txt
iphone:
configuration: Debug
sdk: iphonesimulator4.3
provisionprofile:
codesignidentity:
entitlements:
BundleIdentifier: com.rhomobile.roster
BundleURLScheme: roster
wp:
productid: 'cb084f50-b33f-012e-5ad6-002332c85ef8'
extensions: ["json", "rexml", "set"]
android:
version: 2.2
capabilities: # この行を追加
- gps # この行を追加
XMLの解析で変更した「extensions」とは異なり、GPSなどの物理デバイスなどの使用には「capabilities:」項目の追加と、使用するデバイス名を指定する必要がある。
2. ソースの設置
GPS情報を取得し、表示を行うため、「GetGps」という機能名でフォルダ・ファイルを設置しよう。
種類 | 場所 | 名前 | 用途 |
フォルダ | app/ | GetGps | ソース設置フォルダ |
ファイル | app/GetGps | get_gps_controller.rb | Controllerファイル |
index.erb | Viewファイル |