CyanogenModは使っていないですが面白そうなので…。
CM11以降ではこれまでのテーマと異なる、よりカスタマイズできる箇所が増えた新テーマ機能が採用されました。
OnePlus OneやCM11 M7以降に搭載されているようです。
テーマのテンプレートはGithubに公開されています。
https://github.com/CyanogenMod/android_packages_themes_Template
このテンプレートからテーマを作ってみましょう。
Cloneしたりzipでダウンロードして展開したりすると、AndroidManifest.xmlやresフォルダなどが出てきます。
こういったファイルを編集してオリジナルのテーマアプリを作成できます。
1. パッケージ名などの編集
まず、自分のオリジナルアプリだと認識させるためパッケージ名を編集します。
そのままにしてしまうともしテンプレートのままで公開してしまった人がいると競合してしまいます。
AndroidManifest.xmlを開き、
package=”com.your.package.name”
を好きなように変更し、保存します。
例:
package=”jp.androplus.cmtheme”
次に、アプリリストに表示されるテーマ名を変更します。
<application android:hasCode=”false” android:icon=”@drawable/ic_launcher” android:label=”Theme Template”>
のandroid:label=”Theme Template”を変更してください。
また、CMのテーマエンジンにテーマ名や制作者名を認識させるため、
<meta-data android:name=”org.cyanogenmod.theme.name” android:value=”Theme Template”/>
<meta-data android:name=”org.cyanogenmod.theme.author” android:value=”CyanogenMod” />
のandroid:value=””も変更します。
一つ目がテーマ名、二つ目が制作者名です。
※もし日本語など英数字以外を使うなら必ずUTF-8で保存するようにしてください。
2.変更したいファイルの配置
テーマで変更したいファイルを配置します。
Githubのテンプレートのページにフォルダ構成が書かれています。
assetsフォルダの中に対応するフォルダを作り、その中にファイルを入れる、という形ですが、
テンプレートにはフォルダが準備されており、すでにいくつか入っています。
初めから入っているものはいらなければ削除しても良いです。
各フォルダの説明:
alarms / ringtones / notifications …アラーム、着信音、通知音 (mp3,ogg,wavなど)
lockscreen/ wallpapers …ロック画面やホーム画面の壁紙 (jpg,png,webpなど)
bootanimation …起動時のアニメーション (bootanimation.zip)
images …テーマ選択に表示する画像 (三つとも600px x 1080pxにしてください)
lockscreen_preview.jpg→ロック画面のプレビュー画像
styles_preview.jpg→スタイルのプレビュー画像
wallpaper_preview.jpg→壁紙のプレビュー画像
icons …変更するアイコン画像と変更するアプリの指定
アイコン画像はicons/res/drawable-xxhdpiといったフォルダに配置し、
icons/res/xml/appfilters.xmlでアクティビティと表示する画像を指定します。
component=””がアクティビティ名、drawable=””がicons/res/drawable-xxhdpiにあるアイコン画像名です。
overlays …アプリごとにvaluesフォルダ内のファイルなどを変更するオーバーレイ
全てのアプリで共通した変更をしたければcommonフォルダ以下で変更できます。
font …システムで使用するフォントファイル
ttfファイルを配置し、fonts.xmlファイルを編集します。
<name>***</name>がフォント名、<file>***</file>がファイル名です。
system_fonts.xmlと同じ表記なので参考にすると良いと思います。
3. アプリアイコンなどの変更
アプリ名やアプリアイコンを変更します。
resフォルダを開くとdrawable-xhdpiやvaluesフォルダなどがありますが、
まずvaluesフォルダのstrings.xmlを開き、アプリ名を変更します。(必要ない気がしますが)
<string name=”app_name”>Theme Template</string>
のTheme TemplateをAndroidManifest.xmlで書いたアプリ名に変更します。
次に、アイコンを変更します。
drawable-mdpi (48 x 48)
drawable-hdpi (72 x 72)
drawable-xhdpi (96 x 96)
drawable-xxhdpi (144 x 144)
それぞれのフォルダに画像を配置します。
4. APKファイルの作成
説明が面倒なので検索してください。
Android.mkを使うかEclipseを使えば良いと思います。
5. テーマの申請
作ったテーマは申請するとテーマショーケースに表示してもらえます。
申請にはPlayストアへの登録が必要だと思いますが、頼めば代理で登録してくれるかもしれません。
テーマは必ず全ての変更できるファイルを含んでいないといけない、というわけではなく、
bootanimationだけ、フォントだけということもできます。
申請の際に必要なものは、
- テーマのapk
- ショーケースに表示する画像・詳細画像
- テーマ情報
の三つです。
ただし、「フォントパックはショーケースに表示する画像として内蔵しているフォントのスタイル二つのアルファベット表示例を作成し、詳細画像は必要ない」などテーマの種類によって必要なものが異なることがあります。
テーマ情報は
Title – [テーマ名]
Author – [制作者名]
Package Name – [パッケージ名]
Store Price – [有料なら価格、無料なら空白に]
Version – [バージョン名 (AndroidManifest.xmlのandroid:versionName)例 “1.5.2”]
versionCode – [バージョンコード ((AndroidManifest.xmlのandroid:versionCode))例 “25”]
Description – [1~3行のテーマの説明]
Tags – [テーマのタグ 例:60個以上のアイコン、ワザマエ!]
Features – [テーマの機能一覧 以下の中からテーマに入っているものを書いてください: STYLE, WALLPAPER, LOCKSCREEN, FONTS, ICONS, BOOTANIMATION, SOUNDS]
以上の情報を書いてください。
詳しい説明やテンプレートファイルはこちらにあります。
申請に必要なものがそろったら、
にメールを送信します。
必ず件名を
Theme Showcase Application
にしてください。
ウェブサイトでの申請も今後出来るようにするそうです。