Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Soichiro Kashima
3,246 views
Android App Development with Gradle & Android Studio
社内の勉強会でGradleとAndroid Studioを紹介したときの資料です。 一部編集してあります。
Technology
◦
Read more
3
Save
Share
Embed
Embed presentation
Download
Downloaded 30 times
1
/ 59
2
/ 59
3
/ 59
4
/ 59
5
/ 59
6
/ 59
7
/ 59
8
/ 59
9
/ 59
10
/ 59
11
/ 59
12
/ 59
13
/ 59
14
/ 59
15
/ 59
16
/ 59
17
/ 59
18
/ 59
19
/ 59
20
/ 59
21
/ 59
22
/ 59
23
/ 59
24
/ 59
25
/ 59
26
/ 59
27
/ 59
28
/ 59
29
/ 59
30
/ 59
31
/ 59
32
/ 59
33
/ 59
34
/ 59
35
/ 59
36
/ 59
37
/ 59
38
/ 59
39
/ 59
40
/ 59
41
/ 59
42
/ 59
43
/ 59
44
/ 59
45
/ 59
46
/ 59
47
/ 59
48
/ 59
49
/ 59
50
/ 59
51
/ 59
52
/ 59
53
/ 59
54
/ 59
55
/ 59
56
/ 59
57
/ 59
58
/ 59
59
/ 59
More Related Content
PDF
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
by
Yu Nobuoka
PDF
Android アプリ開発における Gradle ビルドシステム
by
Yu Nobuoka
PDF
AndroidStudioはじめました ~Gradle編~
by
Yabata Tomomitsu
PDF
Write slides and books in VSCode + Markdown
by
ロフト くん
PPTX
GitLabを16万8千光年ワープさせた話(改)
by
Wataru NOGUCHI
PDF
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
by
Taisuke Inoue
PDF
20150425 DroidKaigi つかえるGradleプロジェクトの作り方
by
Makoto Yamazaki
PDF
MakeGoodで快適なテスト駆動開発を
by
Atsuhiro Kubo
Android アプリを Jenkins でビルドして GitHub に “リリース” を作る
by
Yu Nobuoka
Android アプリ開発における Gradle ビルドシステム
by
Yu Nobuoka
AndroidStudioはじめました ~Gradle編~
by
Yabata Tomomitsu
Write slides and books in VSCode + Markdown
by
ロフト くん
GitLabを16万8千光年ワープさせた話(改)
by
Wataru NOGUCHI
GitLab Meetup Tokyo #1 LT:「わりと大きい会社でGitLabをホスティングしてみた話」
by
Taisuke Inoue
20150425 DroidKaigi つかえるGradleプロジェクトの作り方
by
Makoto Yamazaki
MakeGoodで快適なテスト駆動開発を
by
Atsuhiro Kubo
What's hot
PDF
Jenkinsを用いたAndroidアプリビルド作業効率化
by
Kenichi Kambara
PDF
Cryogenでサイトつくろーじぇん
by
Kazuhiro Hara
PDF
Javaユーザに贈るJenkins 25のTips
by
Masanori Satoh
PPTX
Jenkins と groovy
by
Kohsuke Kawaguchi
PPTX
Gradleでビルドするandroid NDKアプリ
by
Hideyuki Kikuma
PPTX
あなたもできる!GASで勤怠入力Slack App構築【WESEEK Tech Conf #14】 (pert2)
by
WESEEKWESEEK
PDF
remote Docker over SSHが熱い
by
Hiroyuki Ohnaka
PDF
JUnit入門/TDD入門[新人研修資料]
by
Ryuhei Ishibashi
PDF
5分で分かった気になるTekton
by
Shuhei Kitagawa
PDF
あるゲームアプリケーションの構成とアップデートサイクル
by
Kentaro Iizuka
PDF
Remote Development with Visual Studio Code & A clean dev env, working every ...
by
Hiroyuki Ohnaka
PDF
Gws 20120521 gradle
by
Nobuhiro Sue
PDF
DroidKaigi2016 windows環境での効率的なアプリ開発手法
by
tkawashita
PPTX
Docker webinar 20170426−01
by
Creationline,inc.
PDF
[Lt]versionごとにurlを自動生成
by
shouta yoshikai
PDF
GitBucketPlugin@2014忘年度会
by
Kiyotaka Kunihira
PDF
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド
by
Takehara Ryo
PDF
AndroidLint #DroidKaigi
by
Yukiya Nakagawa
PDF
Go goes Mobile: Quick Exploration on Go 1.5 and Gomobile
by
Takahiro Yoshimura
PDF
Jjug ccc 2016_fall_blue_green_deployment
by
Hiroyuki Onaka
Jenkinsを用いたAndroidアプリビルド作業効率化
by
Kenichi Kambara
Cryogenでサイトつくろーじぇん
by
Kazuhiro Hara
Javaユーザに贈るJenkins 25のTips
by
Masanori Satoh
Jenkins と groovy
by
Kohsuke Kawaguchi
Gradleでビルドするandroid NDKアプリ
by
Hideyuki Kikuma
あなたもできる!GASで勤怠入力Slack App構築【WESEEK Tech Conf #14】 (pert2)
by
WESEEKWESEEK
remote Docker over SSHが熱い
by
Hiroyuki Ohnaka
JUnit入門/TDD入門[新人研修資料]
by
Ryuhei Ishibashi
5分で分かった気になるTekton
by
Shuhei Kitagawa
あるゲームアプリケーションの構成とアップデートサイクル
by
Kentaro Iizuka
Remote Development with Visual Studio Code & A clean dev env, working every ...
by
Hiroyuki Ohnaka
Gws 20120521 gradle
by
Nobuhiro Sue
DroidKaigi2016 windows環境での効率的なアプリ開発手法
by
tkawashita
Docker webinar 20170426−01
by
Creationline,inc.
[Lt]versionごとにurlを自動生成
by
shouta yoshikai
GitBucketPlugin@2014忘年度会
by
Kiyotaka Kunihira
自動化ーニバルだよ!GDC16に見る自動化技術とテストのトレンド
by
Takehara Ryo
AndroidLint #DroidKaigi
by
Yukiya Nakagawa
Go goes Mobile: Quick Exploration on Go 1.5 and Gomobile
by
Takahiro Yoshimura
Jjug ccc 2016_fall_blue_green_deployment
by
Hiroyuki Onaka
Similar to Android App Development with Gradle & Android Studio
PDF
Android カスタムROMの作り方
by
Masahiro Hidaka
PDF
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
by
Yu Nobuoka
PDF
JellyBeanのソースをとりあえず眺めてみた(手抜き)
by
l_b__
PDF
0621 ndk game
by
cat kaotaro
PDF
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
by
Yosaku Toyama
PDF
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
PDF
Android Studioの魅力
by
Keiji Ariyama
PDF
つ部 Android Studio 勉強会 12/7
by
Hikaru Wada
PDF
Groovy base gradle_20130309
by
Nobuhiro Sue
PDF
Android studio で行ってみよう!!
by
Kazuaki Ueda
PPT
Android Hacks - Hack40
by
Masanori Ohkawara
PDF
Gws 20130315 gradle_handson
by
Nobuhiro Sue
PDF
普段の開発を少しだけ便利にする3つのレシピ
by
Takuma Maruyama
PPTX
GBDC 勉強会 #2 Android Studio 実践レポート
by
Yutaka Kato
PDF
Gradle handson
by
Nemoto Yusuke
PPTX
長寿なゲーム事業におけるアプリビルドの効率化
by
gree_tech
PDF
Androidアプリ開発で活躍必至!? ビルドツールGradle
by
amayaw9
PDF
Gradle a new Generation Build Tool
by
Shinya Mochida
PPT
Elder power for Eclipse
by
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
PPTX
Android 開発, 運用時に使いたいライブラリやサービスの紹介
by
Kenichi Tatsuhama
Android カスタムROMの作り方
by
Masahiro Hidaka
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
by
Yu Nobuoka
JellyBeanのソースをとりあえず眺めてみた(手抜き)
by
l_b__
0621 ndk game
by
cat kaotaro
爆速でAndroidアプリを ビルドするための仕組み DeNA TechCon #denatechcon
by
Yosaku Toyama
バージョンアップに負けないためのプラクティス
by
Yuji Tokuda
Android Studioの魅力
by
Keiji Ariyama
つ部 Android Studio 勉強会 12/7
by
Hikaru Wada
Groovy base gradle_20130309
by
Nobuhiro Sue
Android studio で行ってみよう!!
by
Kazuaki Ueda
Android Hacks - Hack40
by
Masanori Ohkawara
Gws 20130315 gradle_handson
by
Nobuhiro Sue
普段の開発を少しだけ便利にする3つのレシピ
by
Takuma Maruyama
GBDC 勉強会 #2 Android Studio 実践レポート
by
Yutaka Kato
Gradle handson
by
Nemoto Yusuke
長寿なゲーム事業におけるアプリビルドの効率化
by
gree_tech
Androidアプリ開発で活躍必至!? ビルドツールGradle
by
amayaw9
Gradle a new Generation Build Tool
by
Shinya Mochida
Elder power for Eclipse
by
Industrial Technology Research Institute (ITRI)(工業技術研究院, 工研院)
Android 開発, 運用時に使いたいライブラリやサービスの紹介
by
Kenichi Tatsuhama
Android App Development with Gradle & Android Studio
1.
Android App Development
with Gradle & Android Studio Tech Circle #3 2014.8.19 Soichiro Kashima Copyright © 2014 Soichiro Kashima All rights reserved.
2.
Introduction ‣ Android
の新ビルドシステムのご紹介 ‣ UI などの 作り方 が注目されがちだが… ‣ ビルド は納品/リリースに関わる重要作業 ‣ ストア や OS のアップデートが頻繁にあるため 常に最新仕様でリリースができる知識が必要 2
3.
Agenda 1. 従来の
Android アプリのビルド 2. Gradle & Android Studio 3. Product Flavor 4. 活用例(CI) 5. まとめ 3
4.
従来の Android アプリのビルド
4
5.
アプリの中身 ‣ アプリ
= APK ファイル = ZIP ファイル ‣ Dalvik VM / ART で動作 ‣ Java → .class → .dex 5
6.
アプリの中身 ‣ Java
プログラム以外にもいろいろ ‣ AndroidManifest.xml ‣ リソース ‣ 文字列,画像,色,アニメーション,… ‣ ネイティブライブラリ(*.so) 6
7.
APK ファイルができるまでの工程 ‣
ソースファイル生成(R.java,BuildConfig.java) ‣ コンパイル ‣ ProGuard(難読化) ‣ 署名なし APK ファイル作成 ‣ ZipAlign ‣ 署名 7
8.
必要になる APK ファイルの種類
‣ デザイン確認用(モックアップ) ‣ デバッグ用 ‣ ステージング環境接続用 ‣ UAT用(お客様用) ‣ 本番用 8 さらに種類が必要な場合も… Free/Pro,Google Play, Amazon,…
9.
手作業での管理は困難 ‣ あまりにも種類が多い
‣ 自動化するためにビルドの知識が重要 9
10.
従来の Android アプリビルド
‣ 元々 Android がサポートしていたビルド方法 ‣ Eclipse ADT → Export (GUI) ‣ Ant 10
11.
Ant の限界 ‣
表現力が低い ‣ 標準で用意されているのは Debug / Release のみ ‣ 工夫すれば増やせるが… 11
12.
さすがに無理がある ‣ XXX
環境向けの APK 作って ‣ お客さんが XXX に YYY の設定で試したいって ‣ 途中でもいいから試させて ‣ これ前入れてもらったのと何が変わったの? 12
13.
新しいシステムへの期待… ‣ ビルドの管理は大変になるばかり…
‣ そろそろ新しい仕組みが必要なのでは? ‣ と思っていたところに…! 13
14.
Gradle & Android
Studio 14
15.
Android Studio 登場
15 https://developer.android.com/sdk/installing/studio.html
16.
Android Studio 登場
‣ 2013年登場,つい最近までα版,現在β版(0.8.0) ‣ Eclipse でなく IntelliJ IDEA ベース ‣ Gradle と統合されている ‣ Gradle + Android Gradle Plugin 16
17.
Android Studio 登場
‣ Gradle は Groovy の DSL であり拡張が容易 ‣ Gradle ‣ http://www.gradle.org/ ‣ Groovy ‣ http://groovy.codehaus.org/ 17
18.
Android Studio 登場
‣ Product Flavor による複数のビルド設定管理が可能 ‣ Ant / Maven / Ivy を統合できる依存関係管理 ‣ マルチプロジェクト構成が可能 18
19.
Android Studio 登場
‣ IDE でもコマンドラインでも同じ動作 19 IDE - Android Studio CLI - Gradle
20.
Ant と Gradle
‣ ビルド定義 ‣ Ant: build.xml = XMLファイル ‣ Gradle: build.gradle = Groovyスクリプト ‣ コマンド ‣ Ant: ant ‣ Gradle: gradle / gradlew 20
21.
Gradle 自体はインストール不要 ‣
Gradle Wrapper という数ファイルだけあれば OK ‣ シェルスクリプトと .bat がセット ‣ バージョン管理すれば皆同じバージョンを使える ‣ IDE がなくても IDE と同じビルドができる 21
22.
Gradle Wrapper ‣
コマンド例 $ ./gradlew tasks # タスク一覧 $ ./gradlew assembleDebug # Debugビルド $ ./gradlew assemble # 全種類ビルド $ ./gradlew installDebug # インストール $ ./gradlew connectedAndroidTest # 端末接続テスト $ ./gradlew uninstallDebug # アンインストール $ ./gradlew uninstallAll # 全アンインストール 22
23.
依存関係管理 ‣ 数行書くだけで簡単にライブラリを取り込める
‣ Eclipse のような面倒な設定が不要 23
24.
依存関係管理 ‣ フェーズごとに依存関係を定義できる
dependencies { compile 'com.android.support:support-v4:20.0.+' compile 'com.google.android.gms:play-services:5.0.77' compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar' ! androidTestCompile ‘xxxx:yyyy:1.0.0’ ! } 24 APKに含める テストのみ利用
25.
依存関係管理 ‣ 機会があればぜひ使ってみてください!
dependencies { // ダイアログライブラリ compile 'com.github.ksoichiro:simplealertdialog:1.1.1@aar' // 入力チェックライブラリ compile 'com.github.ksoichiro:androidformenhancer:1.1.0@aar' // ボタンUIライブラリ compile 'com.github.ksoichiro:richbuttons:0.1.1@aar' } 25
26.
カバレッジ計測 ‣ JaCoCo
が使える ‣ リフレクションがあると失敗する…(VerifyError) 26 android { jacoco { version = '0.7.0.201403182114' } : buildTypes { debug { testCoverageEnabled = true 利用するバージョン指定 計測有効化
27.
ディレクトリ構成 ‣ Eclipse
と違い自由に構成可能 ‣ Java ソースコード ‣ XML リソース ‣ テストコード ‣ AndroidManifest.xml 27
28.
ディレクトリ構成 ‣ Eclipse
に合わせることも可能 → 段階的に移行可 android { sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } 28
29.
Product Flavor 29
30.
Product Flavor //
アプリのIDをFlavorごとに分けて同時にインストールできるようにする productFlavors { dev { // 開発用ID applicationId "com.domodomo.android.dev" } dgate { // DeployGate用ID applicationId "com.domodomo.android.dgate" } prod { // 本番用ID applicationId "com.domodomo.android" } } 30 ‣ ビルド時に少しだけ内容を変えられる
31.
Product Flavor ‣
ソースも分離可能 ‣ デバッグ機能の ON / OFF ‣ アプリ名の切り替え ‣ アイコンの切り替え ‣ Permission の有無 31
32.
Build Variant ‣
ビルド構成を変える要素は2つある ‣ BuildType : ビルド自体の設定を切り替える ‣ ProGuard の有無,署名の種類など ‣ ProductFlavor : プログラムの内容を切り替える ‣ 有料/無料,アプリ名,API接続先など 32
33.
Build Variant ‣
コマンドは ProductFlavors x BuildTypes ‣ installDevDebug / installDevRelease ‣ installStgDebug / installStgRelease ‣ installProDebug / installProRelease 33
34.
Build Variant ‣
コマンドがやたら長くなるが省略可能 ‣ 単語ごとに識別可能な分だけ入力すればOK ‣ installStagingDebug → iSD ‣ lintDevDebug → lDD ‣ check → ch 34
35.
Build Variant ‣
依存関係も Flavor ごとに指定できる ‣ dgateCompile ‘com.deploygate:sdk:2.4.+’ ‣ DeployGate 配布用ビルドのみ DeployGate SDK を含めてビルドする (dgate という Flavor を定義している場合) 35
36.
複数の Product Flavor
‣ Flavor の種類が複数ほしい ‣ API X の環境(開発/ステージング/本番) ‣ API Y の環境(開発/ステージング/本番) 36
37.
複数の Product Flavor
‣ flavorDimensions で複数グループを組み合わせ 37 flavorDimensions "abi", "version" ! ! productFlavors { freeapp { flavorDimension "version" ... } x86 { flavorDimension "abi" ... x86-freeapp-debug x86-freeapp-release arm-freeapp-debug arm-freeapp-release mips-freeapp-debug mips-freeapp-release x86-paidapp-debug x86-paidapp-release arm-paidapp-debug arm-paidapp-release mips-paidapp-debug mips-paidapp-release アーキテクチャ有料/無料 少し前まではflavorGroupsだった
38.
利用例 ‣ グルーピング例
‣ API等の外部接続先 ‣ アーキテクチャ(ARM,x86,MIPS,…) ‣ リリース先のストア,配布サービス ‣ 製品/サービスのグレード(Lite,Pro) ‣ α/β/製品版(バグレポート自動送信機能の有無等) 38
39.
Groovy / Gradle
の活用 ‣ 少しスクリプトを書けばこんなことも ‣ APK ファイル名にバージョン番号を入れる ‣ APK ファイル名にコミットハッシュ値をつける ‣ APK ファイル名に Flavor 名を入れる 39
40.
Java プラグイン ‣
Javaプラグインと互換性がないのが難点 ‣ Javaプラグイン? ‣ 標準的な Java プロジェクトをビルドできる ‣ Java プラグイン依存のライブラリが使えない 40
41.
Java プラグイン ‣
.gradle ファイルを分ければ OK → CI 等に有効 ‣ ./gradlew :app:connectedCheck ‣ 通常の端末接続テスト ‣ ./gradlew -p app -b app/coveralls.gradle coveralls ‣ カバレッジ計測結果を Coveralls へ送信 41
42.
活用例(CI) 42
43.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 43 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
44.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 44 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK 1. git push PC 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
45.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 45 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
46.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 46 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
47.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 47 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
48.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 48 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository
49.
CI で最新アプリを常時利用可能に ‣
Push をトリガーにして Gradle でビルド Docker container (Ubuntu) 49 Android SDK 5. ./gradlew assemble Docker Jenkins GitLab Git repo App project Gradle Wrapper APK PC 1. git push 2. web hook 3. git clone 4. docker run AAPPKK APK Maven Central android m2repository Job終了後は Docker containerは破棄, Workspaceは残るので APKダウンロード可能
50.
GitHub + Travis
CI + Coveralls ‣ Gradle じゃなくてもできる? Gradle だと簡単かも 50 PC GitHub Travis CI Coveralls
51.
GitHub + Travis
CI + Coveralls ‣ Gradle じゃなくてもできる? Gradle だと簡単かも 51 1. git push 2. web hook PC GitHub 3. POST Travis CI Coveralls
52.
GitHub + Travis
CI + Coveralls ‣ Gradle じゃなくてもできる? Gradle だと簡単かも 52 1. git push 2. web hook PC GitHub 複数のAPIレベルのエミュレータで ./gradlew assemble や ./gradlew connectedAndroidTest 3. POST を実行できる Travis CI Coveralls
53.
GitHub + Travis
CI + Coveralls ‣ Gradle じゃなくてもできる? Gradle だと簡単かも 53 1. git push 2. web hook PC GitHub 複数のAPIレベルのエミュレータで ./gradlew assemble や ./gradlew connectedAndroidTest 3. POST を実行できる Travis CI Coveralls 成功したら JaCoCoのカバレッジデータを Coverallsへ送信
54.
GitHub + Travis
CI + Coveralls ‣ Gradle じゃなくてもできる? Gradle だと簡単かも 54 1. git push 2. web hook PC GitHub 複数のAPIレベルのエミュレータで ./gradlew assemble や ./gradlew connectedAndroidTest 3. POST を実行できる Travis CI Coveralls 成功したら JaCoCoのカバレッジデータを Coverallsへ送信 テスト結果やカバレッジは プロジェクトトップページで バッジとして確認できる
55.
まとめ 55
56.
Gradle/Android Studio 採用メリット
‣ ビルド管理が従来に比べて圧倒的に柔軟で便利 ‣ IDE と CLI の結果が同じでありビルドに安心感 ‣ 依存関係管理が手軽でライブラリ導入しやすい ‣ 開発スタートに必要なセットアップが少ない 56
57.
Gradle/Android Studio 採用リスク
‣ α 版の間は激しく仕様変更があった→今後は…? ‣ Gradle 自体が頻繁にバージョンアップしている ‣ CheckStyle 等,Eclipse と統合してツールを 使っていた場合は移行が難しいかも ‣ Eclipse に最適化された人が多いと抵抗があるかも 57
58.
最新情報をチェックしよう ‣ New
Build System - Android Tools Project Site ‣ http://tools.android.com/tech-docs/new-build-system 58
59.
Thank you! 59
Download