これは http://monodroid.net/Documentation/Tools/Monodroid.exe の現時点での内容を日本語訳したものです。
monodroid.exeツールはAndroidパッケージを生成するビルドプロセスの一部として実行されます。これはアセンブリの集合を引数に取って、
- Java.Lang.Objectの全サブクラスについて、Android callable wrapperを生成します。
- [カスタム属性に基づいてAndroidManifest.xmlを生成します。(訳注: 原文も同じリンク)](http://monodroid.net/Tutorials/Working_with_AndroidManifest.xml)
- Androidのaaptと
apkbuilderツールを実行して、Androidパッケージを生成します。 - (任意で)生成されたパッケージにデバッグキーで署名して、エミュレータ上にインストールする許可を与えます。
オプション
- -A=directory: directoryを
aaptに渡して、追加のアセットファイルを探索できるようにします。この値はaresgen.exeに渡された値と一致しているべきです。 - —application=name: アプリケーション内での名前を指定します。これは/manifest/application/@android:label属性の値に対応します。無指定時は、処理されたアセンブリで最初に発見されたAndroid.App.Activityのサブクラスの型名がデフォルトとなります。(訳注: これは実際にはbeta3からメインのActivityが指定できるようになったので、その名前を使用するように変わったのではないかと思われる。)
- —framework-dir=directory: MonoDroidフレームワークアセンブリが含まれるdirectoryを指定します。
- -I=package: 既存のパッケージや.jarファイルを基本インクルード集合に追加します。これは
aaptツールに渡されます。もし指定されなければ、--sdk-dirと--sdk-platformのディレクトリにあるandroid.jarがデフォルトとなります。備考: 指定された場合は、android.jarはデフォルトでは含まれず、android.jarの何かしらのバージョンを含めることがaaptによって要求されます。この値はaresgen.exeに渡された値と一致しているべきです。 - —manifest-template=file: fileからAndroidManifest.xmlファイルのテンプレートを読み込みます。無指定時は、内部テンプレートをデフォルトとします。
- —nosign: デバッグ署名されたパッケージを作成しません。
- -o=directory: ファイルが出力される場所を指定します。
- —package=name: アプリケーションのパッケージ名を指定します。これは/manifest/@package属性値に対応します。全てのAndroidアプリケーションは(少なくともエミュレータ上では)、
/data/dataディレクトリにインストールされます。nameは、アプリケーションファイルを含めるディレクトリ名として使用されます。無指定時は、処理されたアセンブリで最初に発見されたAndroid.App.ActivityのサブクラスのネームスペースをcamelCaseにしたものがデフォルトとなります。(訳注: ここもメインのActivityクラスの探索ルールの変更を反映していないと思われる。) - -r=assembly: 解決するアセンブリの参照となり、assemblyが他のリソースと一緒に
apkbuilderでパッケージされるようにします。 - -S=directory:
aaptにdirectoryを渡し、directoryにあるリソースを含めるようにします。これはaresgen.exeに渡された値と一致しているべきです。 - —sdk-dir=directory: Android SDKが存在するdirectoryを指定します。
- —sdk-platform=version: 使用するAndroid SDKプラットフォームのバージョンを
android-7のように指定します。無指定時は、--sdk-dir/platforms以下の最大のバージョンになります。 - -v[=level]: 出力メッセージの冗長性を上げます。