豚吐露@wiki
install
最終更新:
Bot(ページ名リンク)
-
view
PhoneGap Install
まずはPhoneGapサイトに書いてあるようにやってみる。
$ sudo npm install -g phonegap
※『-g』optionはGlobalInstallの指定。これを指定するとnpmでinstallしたapplicationにpathが通って、どこからでもコマンド実行できるようになるらしい。
で、確認。
$ phonegap create my-app
$ cd my-app
$ phonegap run android
動かねぇ...( ̄ω ̄;)
えぇっとまずは...なんか『ant』ねぇとかどうとか...
/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/[[node]]_modules/q/q.js:126 throw e; ^ Error: ERROR : executing command 'ant', make sure you have ant installed and added to your path. at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/lib/check_reqs.js:47:27 at ChildProcess.exithandler (child_process.js:652:7) at ChildProcess.emit (events.js:98:17) at maybeClose (child_process.js:756:16) at Socket.<anonymous> (child_process.js:969:11) at Socket.emit (events.js:95:17) at Pipe.close (net.js:465:12) { [Error: /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit code 8] code: 8 } [error] /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit code 8
ant入れます。
$ sudo apt-get install ant
で、まだダメ...Android targetの一覧が取れねぇとか曰われております。
/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:126 throw e; ^ Error: An error occurred while listing Android targets at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/lib/check_reqs.js:87:29 at _rejected (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:808:24) at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:834:30 at Promise.when (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:1079:31) at Promise.promise.promiseDispatch (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:752:41) at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:574:44 at flush (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:108:17) at process._tickCallback (node.js:419:13) { [Error: /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit code 8] code: 8 } [error] /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit code 8
なので、androidの場所を教えて差し上げます。
たまたま入れてたのが、Android Studioだったんで、Android Studioの場所をexport。
viかなんかで.bashrcに追加。
たまたま入れてたのが、Android Studioだったんで、Android Studioの場所をexport。
viかなんかで.bashrcに追加。
$ vim ~/.bashrc
export PATH=${PATH}:/home/hoge/app/android-studio/sdk/tools
※もし、場所が分からんかったら、時間はかかるけど...
$ find / -name android 2>/dev/null | grep tools/android$
とかすると良い。
見つかったscript実行すると...
見つかったscript実行すると...
$ /home/hoge/app/android-studio/sdk/tools/android list target
ってすると使えるAndroidのtargetがずらずら出てくるはず。
今度は、『Please install Android target 19』って...Android API 19が入ってないとダメらしい。(´・ω・`)
/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:126 throw e; ^ Error: Please install Android target 19 (the Android newest SDK). Make sure you have the latest Android tools installed as well. Run "android" from your command-line to install/update any missing SDKs or tools. at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/lib/check_reqs.js:80:29 at _fulfilled (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:798:54) at self.promiseDispatch.done (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:827:30) at Promise.promise.promiseDispatch (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:760:13) at /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:574:44 at flush (/home/hoge/.cordova/lib/android/cordova/3.5.1/bin/node_modules/q/q.js:108:17) at process._tickCallback (node.js:419:13) { [Error: /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit >code 8] code: 8 } [error] /home/hoge/.cordova/lib/android/cordova/3.5.1/bin/create: Command failed with exit code 8
一応確認ね。
$ android list target
結果をざっと見て、『Google APIs:19』ってのが無いから怒られてる。
こればっかりはAndroid SDKとかを使って入れんとダメ。
わしの場合は、Android Studioじゃが、[Configure]-[SDK Manager]を選んで、
わしの場合は、Android Studioじゃが、[Configure]-[SDK Manager]を選んで、

ココらへんにチェックを入れてみる。
で、もっかい実行してみると...
今度はadbが見つからんと...
Error executing "adb devices": /bin/sh: 1: adb: not found
探してみたら、見つかったのでPATHに追加してみる。
$ vim ~/.bashrc
export PATH=${PATH}:/home/hoge/app/android-studio/sdk/platform-tools
で、動かしたら...buildは終わって、エミュレータ実行したいけど見つからんって言われた。
ERROR : No emulator images (avds) found, if you would like to create an avd follow the instructions provided here: http://developer.android.com/tools/devices/index.html Or run 'android create avd --name <name> --target <targetID>' in on the command line.
target listを見ると、API19のidが14だったんで...
$ android list target
---------- id: 14 or "Google Inc.:Google APIs:19" Name: Google APIs Type: Add-On Vendor: Google Inc. Revision: 7 Description: Android + Google APIs Based on Android 4.4.2 (API level 19) Libraries: * com.google.android.media.effects (effects.jar) Collection of video effects * com.android.future.usb.accessory (usb.jar) API for [[USB]] Accessories * com.google.android.maps (maps.jar) API for Google Maps Skins: QVGA, WVGA800 (default), WSVGA, WXGA800, WXGA720, WQVGA400, WVGA854, WXGA800-7in, WQVGA432, HVGA Tag/ABIs : default/armeabi-v7a
targetに14を指定して適当なemulatorを作ってみる。
$ android create avd --name sample19 --target 14
Auto-selecting single ABI armeabi-v7a Created AVD 'sample19' based on Google APIs (Google Inc.), ARM (armeabi-v7a) processor, with the following hardware config: hw.lcd.density=240 hw.ramSize=512 vm.heapSize=48
再度挑戦。
$ phonegap run android
起動しました。ヽ(=´▽`=)ノ

更新日: 2014年09月12日 (金) 14時21分41秒