0
Android StudioGradle横幕 圭真(@KeithYokoma)
Android Studio
Android Studio• 新しい Android 用開発環境• IntelliJ IDEA ベースの Android 用 IDE• オープンソース• Apache ant から Gradle へ• しかも IDE にガッツリ統合されている!
Android Studio• ここがすごいよ Android Studio• レイアウトエディタ• Gradle ベースのビルド
プロジェクトの作成
Android Studio• Eclipse と異なるプロジェクト構成
Android Studio• テストを含める
Android Studio• Command + R で実行
レイアウトの編集
Android Studio
Android Studio• 表示を切り替えるコントロール
Android Studio• 表示を切り替えるコントロール自動でリソースを生成してくれるプレビュー表示をカスタマイズする
Android Studio
Android Studio
Android Studio
Android Studio• 表示を切り替えるコントロール
Android Studio• 表示を切り替えるコントロール
Android Studio• テーマ設定
Android Studio• ロケール設定
Android Studio• Fragment のレイアウトもプレビュー
Android Studio• マウスオーバーでリソース名を表示• リソース ID のサジェストもパワフルに• フレームワークにアノテーションが付いている• int がどのリソース ID かが指定されるようになった
Gradle
Gradle• 新しいビルドシステム• Groovy で記述• ant にはない依存関係管理• プログラムも仕込めるbuildscript {repositories {maven { url http://repo1.maven.org/ma...
Gradle• 新しいビルドシステム• android 向けプラグイン完備• AndroidManifest が書き換え可• 有料版/無料版といったバージョンの振り分けもできるbuildscript {repositories {maven {...
Gradle• 新しいビルドシステム• sourceSets の設定で古いプロジェクトにも適用可buildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dep...
Gradle• コマンド同封• ./gradlew buildbuildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classp...
$	  ./gradlew	  buildThe	  TaskContainer.add()	  method	  has	  been	  deprecated	  and	  is	  scheduled	  to	  be	  remov...
Gradle for Android
Gradle for Android• Android 用のタスクが一杯$	  ./gradlew	  tasks
Gradle for Android• AndroidManifest をいじる• defaultConfig ブロック• ターゲットSDKのバージョン• バージョンコード• バージョン名buildscript {repositories {ma...
Gradle for Android• AndroidManifest をいじる• デバッグ用途の• デバッグ用のパッケージ名• デバッグ用のバージョン名buildscript {repositories {maven { url http:/...
Android StudioGradle
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
Google I/O 2013 報告会 Android Studio と Gradle
Upcoming SlideShare
Loading in...5
×

Google I/O 2013 報告会 Android Studio と Gradle

5,489

Published on

株式会社ミクシィで開催された、Google I/O 2013 報告会でのプレゼンテーション。

Published in: Technology
0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
5,489
On Slideshare
0
From Embeds
0
Number of Embeds
30
Actions
Shares
0
Downloads
13
Comments
0
Likes
8
Embeds 0
No embeds

No notes for slide

Transcript of "Google I/O 2013 報告会 Android Studio と Gradle"

  1. 1. Android StudioGradle横幕 圭真(@KeithYokoma)
  2. 2. Android Studio
  3. 3. Android Studio• 新しい Android 用開発環境• IntelliJ IDEA ベースの Android 用 IDE• オープンソース• Apache ant から Gradle へ• しかも IDE にガッツリ統合されている!
  4. 4. Android Studio• ここがすごいよ Android Studio• レイアウトエディタ• Gradle ベースのビルド
  5. 5. プロジェクトの作成
  6. 6. Android Studio• Eclipse と異なるプロジェクト構成
  7. 7. Android Studio• テストを含める
  8. 8. Android Studio• Command + R で実行
  9. 9. レイアウトの編集
  10. 10. Android Studio
  11. 11. Android Studio• 表示を切り替えるコントロール
  12. 12. Android Studio• 表示を切り替えるコントロール自動でリソースを生成してくれるプレビュー表示をカスタマイズする
  13. 13. Android Studio
  14. 14. Android Studio
  15. 15. Android Studio
  16. 16. Android Studio• 表示を切り替えるコントロール
  17. 17. Android Studio• 表示を切り替えるコントロール
  18. 18. Android Studio• テーマ設定
  19. 19. Android Studio• ロケール設定
  20. 20. Android Studio• Fragment のレイアウトもプレビュー
  21. 21. Android Studio• マウスオーバーでリソース名を表示• リソース ID のサジェストもパワフルに• フレームワークにアノテーションが付いている• int がどのリソース ID かが指定されるようになった
  22. 22. Gradle
  23. 23. Gradle• 新しいビルドシステム• Groovy で記述• ant にはない依存関係管理• プログラムも仕込めるbuildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16}sourceSets {main {manifest.srcFile ‘AndroidManifest.xml’java.srcDirs = [‘src’]resources.srcDirs = [‘src’]aidl.srcDirs = [‘src’]renderscript.srcDirs[‘src’]res.srcDirs = [‘res’]assets.srcDirs = [‘assets’]}intrument.setRoot(‘tests’)}}
  24. 24. Gradle• 新しいビルドシステム• android 向けプラグイン完備• AndroidManifest が書き換え可• 有料版/無料版といったバージョンの振り分けもできるbuildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16}sourceSets {main {manifest.srcFile ‘AndroidManifest.xml’java.srcDirs = [‘src’]resources.srcDirs = [‘src’]aidl.srcDirs = [‘src’]renderscript.srcDirs[‘src’]res.srcDirs = [‘res’]assets.srcDirs = [‘assets’]}intrument.setRoot(‘tests’)}}
  25. 25. Gradle• 新しいビルドシステム• sourceSets の設定で古いプロジェクトにも適用可buildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16}sourceSets {main {manifest.srcFile ‘AndroidManifest.xml’java.srcDirs = [‘src’]resources.srcDirs = [‘src’]aidl.srcDirs = [‘src’]renderscript.srcDirs[‘src’]res.srcDirs = [‘res’]assets.srcDirs = [‘assets’]}instrument.setRoot(‘tests’)}}
  26. 26. Gradle• コマンド同封• ./gradlew buildbuildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16}sourceSets {main {manifest.srcFile ‘AndroidManifest.xml’java.srcDirs = [‘src’]resources.srcDirs = [‘src’]aidl.srcDirs = [‘src’]renderscript.srcDirs[‘src’]res.srcDirs = [‘res’]assets.srcDirs = [‘assets’]}intrument.setRoot(‘tests’)}}
  27. 27. $  ./gradlew  buildThe  TaskContainer.add()  method  has  been  deprecated  and  is  scheduled  to  be  removed  in  Gradle  2.0.  Please  use  the  create()  method  instead.:HogeApp:prepareDebugDependencies:HogeApp:compileDebugAidl  UP-­‐TO-­‐DATE:HogeApp:generateDebugBuildConfig  UP-­‐TO-­‐DATE:HogeApp:mergeDebugAssets  UP-­‐TO-­‐DATE:HogeApp:compileDebugRenderscript  UP-­‐TO-­‐DATE:HogeApp:mergeDebugResources  UP-­‐TO-­‐DATE:HogeApp:processDebugManifest  UP-­‐TO-­‐DATE:HogeApp:processDebugResources  UP-­‐TO-­‐DATE:HogeApp:compileDebug  UP-­‐TO-­‐DATE:HogeApp:dexDebug  UP-­‐TO-­‐DATE:HogeApp:processDebugJavaRes  UP-­‐TO-­‐DATE:HogeApp:validateDebugSigning:HogeApp:packageDebug  UP-­‐TO-­‐DATE:HogeApp:assembleDebug  UP-­‐TO-­‐DATE:HogeApp:prepareReleaseDependencies:HogeApp:compileReleaseAidl:HogeApp:generateReleaseBuildConfig:HogeApp:mergeReleaseAssets:HogeApp:compileReleaseRenderscript:HogeApp:mergeReleaseResources:HogeApp:processReleaseManifest:HogeApp:processReleaseResources:HogeApp:compileRelease:HogeApp:dexRelease:HogeApp:processReleaseJavaRes  UP-­‐TO-­‐DATE:HogeApp:packageRelease:HogeApp:assembleRelease:HogeApp:assemble:HogeApp:check  UP-­‐TO-­‐DATE:HogeApp:buildBUILD  SUCCESSFULTotal  time:  9.003  secs$  ls  HogeApp/build/apk/HogeApp-­‐debug-­‐unaligned.apkHogeApp-­‐release-­‐unsigned.apk
  28. 28. Gradle for Android
  29. 29. Gradle for Android• Android 用のタスクが一杯$  ./gradlew  tasks
  30. 30. Gradle for Android• AndroidManifest をいじる• defaultConfig ブロック• ターゲットSDKのバージョン• バージョンコード• バージョン名buildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16versionCode 1versionName “1.0.0”}}AndroidManifestの修正コミットが不要に
  31. 31. Gradle for Android• AndroidManifest をいじる• デバッグ用途の• デバッグ用のパッケージ名• デバッグ用のバージョン名buildscript {repositories {maven { url http://repo1.maven.org/maven2 }}dependencies {classpath com.android.tools.build:gradle:0.4}}apply plugin: androiddependencies {compile files(libs/android-support-v4.jar)}android {compileSdkVersion 17buildToolsVersion "17.0.0"defaultConfig {minSdkVersion 8targetSdkVersion 16versionCode 1versionName “1.0.0”}sourceSets {buildType {debug {packageNameSuffix “.debug”}}}}リリースビルドとの共存が可能に
  32. 32. Android StudioGradle
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×