web-dev-qa-db-ja.com

Androidマニフェストファイルにユーザー定義のプロパティ/値をどのように追加しますか?

カスタム属性/プロパティをマニフェストファイルに追加し、実行時にそれを読み取れるようにしたいと考えています。これを行いたいので、これらのマニフェストプロパティを介してアプリの動作をカスタマイズできます。これはどのように行うことができますか?

35
inor

メタデータをAndroidManifest.xmlファイルに追加して、アプリケーションで読み取ることができます。

次のようにデータを書き込みます。

<meta-data Android:value="bar" Android:name="foo"></meta-data>

次のようにデータを読み取ります。

ApplicationInfo ai = context.getPackageManager().getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA);
Object value = (Object)ai.metaData.get("foo");

参照 http://developer.Android.com/guide/topics/manifest/meta-data-element.html

71
P.Melch

Res/valuesに空のリソースファイルを作成し、それに文字列と項目(ブール値または整数値)を追加できます。

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="foo">bar</string">
    <item name="testint" type="integer">33</item>
    <item name="testbool" type="bool">true</item>
</resources>

または、単にプロパティを最終的な静的変数として定義する定数オブジェクトを使用することもできます。

8
nanoquack