読者です 読者をやめる 読者になる 読者になる

09

PhoneGapインストールしてみる。

phonegap

やってみるだけシリーズ。

スマホアプリでバーコードスキャンの検証のためにPhoneGapインストールしてみる。

npmでいいらしい。

$ sudo npm install -g phonegap

プロジェクトを作る

$ phonegap create myapp

$ cd myapp

iOSで起動したいので

$ phonegap run ios

ってやったらios-sim がないとかいうエラーになった。homebrew でインストールできるよと書いてあるので

$ brew install ios-sim

で再度

$ phonegap run ios

シミュレータが起動した。

f:id:carrotsword:20130827163659p:plain

ほ〜

据え置きにしたいのでiPadのほうがいいか、とおもったのでデバイスをiPadにしようかと思ったら選べない。なんで?とおもったら、いまMacにインストールしてあるのがXCode5 DPでiOS7SDKなんだけど、どうもiPadデバイスはインストールされていないっぽい。仕方ないので、Apple Developer Center からダウンロード。

SDKだけダウンロードしてみたけど、これ中身ファームウェア??シミュレータへのインストールの仕方が分からないのでパス。

結局最新版のXCodeを落としてきてインストール。シミュレータを起動してみるとiOS7のiPadもちゃんとある。

これで準備OKかと思ったら、どうもphonegap側からは認識されていない様子。

$ phonegap run

とやってもリモート(PhoneGap Build)でビルドしようとする。

$ ios-sim showsdks

とやっても古いXCodeのロケーションを見ているようだ。

とりあえずPreferencesを開いて、Command Line Tools をインストールしてみる。が

$ phonegap local run

としてもXCodeが古すぎると言われて起動しない。

XCodeのPreferencesを眺めていると、LocationsタブでCommand Line Tools のバージョン?を選択する項目があるのを見つけた。それが初期状態では空になっていたのを一番新しそうなのに選択し直したらローカルでビルドできるようになった。

さてっと、これからようやくPhoneGapでの開発を試してみる事ができる。

まずバーコードスキャナのプラグインが使えるかどうかを調べてみる。

バーコードスキャンの有名なライブラリとしてはZXingとZBarがあるようだが、機能性は ZBarの方が良いようだ。しかしPhoneGapのプラグインとしてはZXingを利用した物が多いように見える。とりあえずEANコードは読めるそうなので、これを使って画面構成してみる。

今回試してみるのはこれ

https://github.com/wildabeast/BarcodeScanner

cordova plugman とかいうプラグインのインストーラがあるらしい。

https://github.com/apache/cordova-plugman

コレ自体はnpmでインストールできるとある

$ sudo npm install -g plugman

でコレを使ってインストールするのだろうが Usage が長くてなえそうになる

plugman install --platform <ios|android|blackberry10|wp7|wp8> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]

じゃあ

$ plugman install --platform ios --project sample/ --plugin https://github.com/wildabeast/BarcodeScanner.git 

こんなんかな?

does not appear to be an xcode project (no xcode project file)

はあ。

https://github.com/apache/cordova-plugman#plugin-directory-structure

kaitenai

PhoneGapのプラグイン開発から勉強しないと駄目かねえ