Skip to content

テンプレートプロジェクトのカスタマイズレシピ

Yukiya Nakagawa edited this page Oct 26, 2013 · 4 revisions

レシピ1 パッケージ名の変更

  • MyApplication/src/main/AndroidManifest.xml の中の package 要素の package属性を書き換える
  • MyApplication/src/main/java/ の中のディレクトリ構成を変更後のパッケージに合わせて修正する
  • MyApplication/src/main/java/ の中の *.java の package 宣言を変更後のパッケージ構成に合わせて修正する

レシピ2 アプリプロジェクトの名前の変更

  • MyApplication ディレクトリの名前を変更する
  • settings.gradle の ':MyApplication' の部分を上で変更した名前に合わせて修正する

一つ目はアプリプロジェクト名の変更、二つ目はトップレベルのプロジェクトのサブモジュールリストの修正です。

レシピ3 ライブラリプロジェクト(MyLibrary)の削除

  • MyLibrary ディレクトリを削除
  • settings.gradle の ':MyLibrary' (とその後ろの , ) を削除
  • MyApplication/build.gradle の dependencies の中の compile project(':MyLibrary') を削除

一つ目はライブラリプロジェクト自体の削除、二つ目はトップレベルのプロジェクトのサブモジュールリストからの削除、三つ目はアプリプロジェクトの依存からの削除です。

レシピ4 libsに置いてある jar(例 volley) への依存の削除

  • libs/ の下の jar を削除

MyApplication/build.gradle では libs/ の中に置かれている *.jar に対して自動的に compile スコープで依存関係を設定するようになっているので、jar を削除すれば自動的に依存が外れます。

レシピ5 maven リポジトリに置いてある jar(例 commons-io) への依存の削除

  • MyApplication/build.gradle の dependencies の中にある compile "commons-io:commons-io:${commonsIoVersion}" を削除

compile の後ろに : で区切られた文字列が書いてあるものが maven リポジトリへの依存設定です。行ごと削除すれば依存が削除されます。

レシピ6 apt を使用しているライブラリ(例 JsonPullParser)への依存の削除

  • MyApplication/build.gradle の dependencies の中にある compile "net.vvakame:jsonpullparser-core:${jppVersion}" を削除する。
  • MyApplication/build.gradle の dependencies の中にある apt "net.vvakame:jsonpullparser-apt:${jppVersion}" を削除する

一つ目は依存 jar の削除、二つ目は apt factory の設定の削除です。 dependencies に apt で始まる行が無くなる場合は、 MyApplication/build.gradle の後ろの方にある 各バリアントのコンパイル時に -processorpath を渡すためのコード部分も削除してください。

レシピ7 ProGuard かけたいんですけど

release ビルドには ProGuard がかかるようになっています。カスタマイズしたい場合は MyApplication/proguard-project.txt を編集してください。

レシピ8 リリース署名の設定

  • トップレベルのプロジェクトのディレクトリ(gradlew とかがある所)に gradle.properties ファイルを作成し以下のプロパティをセットします。
    • storeFile キーストアファイルのパス
    • storePassword キーストアのパスワード
    • keyAlias リリース用証明書の秘密鍵のエイリアス名
    • keyPassword リリース用証明書の秘密鍵のパスワード

以下が gradle.properties ファイルのサンプルです。

storeFile=/Users/zaki/.android/release.keystore
storePassword=hogehoge
keyAlias=app_release
keyPassword=fugafuga