Android Studioで新規プロジェクト作成時のテンプレートを作る

【Android】もっと先へ「加速」したくはないか、少年 〜Project Template編〜を見て、実際に自分でも試してみました。

パッケージ構成はBest practices in Android developmentの通りに再現することにしました。

パッケージ構成以外に、リソースファイルもテンプレートで追加させることができるので、color.xmlなどよく使うものがあれば追加してやると便利かもしれません。

AndroidStudio.appの中に直接作成したら、アップデートの際にどうなるか分からなかったので、Gitで別途管理することにしました。作成したテンプレートはGitHubで公開しています。

カスタムテンプレート

注意点

テンプレートファイルを書き換えても、都度Android Studioを再起動させないと変更が反映されません。ちょっと変わった処理をしようと思うと、動作確認が面倒くさいです。

ディレクトリにファイルを置けばそれが反映されるわけではなく、recipe.xml.ftlで指定したファイルが作成されます。rootディレクトリ以下に作ったディレクトリが勝手に再現されるのかと思っていたら全然違いました。

template.xml

template.xmlはテンプレートファイルの名前や入力項目などを決めるファイルになっています。

<parameter>タグを追加することで、入力項目を増やすことができます。

ちなみにこのテンプレートでは、package-info.java@authorを変更できるようにしてみました。

<parameter
    id="author"
    name="Author"
    type="string"
    default="Gen"
    help="This uses javadoc @autohr in package-info.java." />

追加した入力項目

package-info.javaでは以下のようにして参照できました。idで指定した文字列で参照できるみたいです。

/**
 * Activities.
 * @author ${author}
 */
package ${packageName}.activities;

参考

Custom Projects In Android Studio

Android Studioのバージョンアップができない

注意点として上記のテンプレートを追加すると、以下ののようなメッセージが表示されAndroid Studioのバージョンアップができません。

バージョンアップする際のエラーメッセージ

そのため、バージョンアップする際には追加したテンプレートを手動で削除してやる必要があります。

バージョンアップすると追加したテンプレートは消されてしまうのではと思っていたのですが、そもそもバージョンアップ自体ができませんでした。

プロジェクトテンプレートを自分で追加する場合、テンプレートで得られるメリットと、バージョンアップ時に手動で消さなければならないというデメリットを天秤にかけてから行うようにしてください。

Amazonのほしいものリストを公開しています。仕事で欲しいもの、単なる趣味としてほしいもの、リフレッシュのために欲しいものなどを登録しています。 寄贈いただけると泣いて喜びます。大したお礼はできませんが、よりよい情報発信へのモチベーションに繋がりますので、ご検討いただければ幸いです。