Android Hacks - Hack40
-
Upload
masanori-ohkawara -
Category
Technology
-
view
1.253 -
download
1
description
Transcript of Android Hacks - Hack40
ANDROIDHACKS#40 Eclipseを使わずに
ビルドする担当: Tatsuki Higashi
Twitter : @htk16
23/04/08
1
この資料について• この資料は下記の本をベースに勉強会で作成した資料です。
• 『 Android Hacks』(株式会社ブリリアントサービス著、オライリー・ジャパン刊)
• この本の紹介ページが下記にあります。
• http://www.oreilly.co.jp/books/9784873114569/
23/04/08
2
アジェンダ• なぜ Eclipseを使わないのか
• コマンドラインから Android SDKツールを使ってビルドする
• 新規 Androidプロジェクトを作成する• 既存のプロジェクトを更新する• Androdiプロジェクトをビルドする
23/04/08
3
なぜ Eclipseを使わないのか
• Emacs / Vim 使いたい
• scala や clojureで開発するので Eclipse にこだわる必要がない
非 Android + ADT plugin 以外の開発環境を使う場合は
コマンドラインツールを使用する
23/04/08
4
コマンドラインから Android SDKツールを使ってビルドする
(注)
Android SDKの tools/ と platform-tools/ に
パスを通しておくこと
主要コマンド
• android Androidプロジェクトの作成 / 更新AVDの作成 / 移動 / 削除
• emulator エミュレータ
• adb Android Debug Bridge
• ddms Dalvik Debug Monitor Server
23/04/08
5
ANDROIDコマンド
action:
•list
• avd• target
•create
• avd• project• test-project• lib-project
•update
• avd• project• test-project• lib-project• adb• sdk
•move / remove• avd
23/04/08
6
android [global options] action [action options]
新規 Androidプロジェクトを作成する• ビルドターゲットの確認
プロジェクト作成には target id が必要になるので記録しておく
23/04/08
7
$ android list targetsAvailable Android targets:id: 1 or "android-7" Name: Android 2.1-update1 Type: Platform ...id: 2 or "Google Inc.:Google APIs:7" Name: Google APIs ...
新規 Androidプロジェクトを作成する• android create project [action options]
• --name プロジェクト名• --target ビルドターゲット (必須 )• --path プロジェクトディレクトリ.
無ければ作成される (必須 )• --activity デフォルト Activity名 (必須 )• --package プロジェクトのパッケージ名前空間
(必須 )
23/04/08
8
$ android create project ¥> --terget 1 ¥ // Android 2.1> --path ./myProject ¥ > --activity MyActivity ¥ > --package com.example.project
生成されるファイル群• AndroidManifest.xml
• アプリケーションのマニフェストファイル• プロジェクトの Activityクラスと同期される
• build.xml
• Ant用のビルドファイル• default.properties
• ビルドシステム用のプロパティ.変更禁止• build.properties
• ビルドシステム用のカスタマイズ可能なプロパティ• この設定で Antのデフォルトの設定をオーバーライドする
• local.properties
• SDKのパスを記録
23/04/08
9
生成されるディレクトリ群• bin/ ビルドスクリプト用の出力ディレクトリ
• gen/ Ant が生成するファイル (R.javaなど )が含まれる
• libs/ プライベートライブラリを含む
• res/ プロジェクトリソースを含む
• src/ ソースコードが含まれる
• src/com/example/myproject/MyActivity.java• プロジェクト作成時に指定し,生成された Activityクラス
• test/ テスト用に,生成されたディレクトリ,ファイル全ての
複製が含まれる
23/04/08
10
既存のプロジェクトを更新する
• android update project [action options]
• --path プロジェクトのパス (必須 )• --library 関係するライブラリのディレクトリを追加
• --name プロジェクト名• --target ビルドターゲット• --subproject テストプロジェクトなど,サブフォルダの
プロジェクトを更新する
23/04/08
11
$ android update project ¥> --target 2 ¥ // id:2の SDKへアップデート> --path ./myProject
Androdiプロジェクトをビルドする• デバッグモード : ant debug
• debugキーを用いて署名を行う• エミュレーター,端末上のシステムにインストール可• 公開,配布不可
• リリースモード : ant release
• 非公開キーを使用して手動で署名を行う• エミュレーター,端末上のシステムにインストール可• 公開,配布可
23/04/08
12
その他コマンド• AVD 作成 (#Hack 4)
• android create avd –n <name> -t <targetID> [-<option>
<value>]...
• Emulator 起動 (#Hack 4, 5)
• emulator –avd <avd_name> [-<option> <value>] ...
• ADB からアクティビティを起動させる (#Hack 7)
• adb shell am start –n パッケージ名 /. クラス名
23/04/08
13