Подтвердить что ты не робот

Возможно ли иметь настраиваемые атрибуты в тегах AndroidManifest.xml?

Я хотел бы добавить пользовательский атрибут в тег приложения моего файла AndroidManifest.xml. Возможно ли это в среде Android?

4b9b3361

Ответ 1

Да. Вот пример. Пользовательский тег ContentVersion.

<application android:name=".MyApplication"
             android:icon="@drawable/icon"
             android:label="@string/app_name">

    <meta-data android:name="ContentVersion" android:value="1.9" />

    <activity android:name="com.someone.something.MainActivity"
              android:theme="@android:style/Theme.Translucent.NoTitleBar"
              android:screenOrientation="sensor"
              android:label="@string/app_name">

Чтобы получить к нему доступ:

    ApplicationInfo ai = _context.getPackageManager().getApplicationInfo(_context.getPackageName(),PackageManager.GET_META_DATA);
    ai.metaData.get("ContentVersion")

Ответ 2

Вы не можете определить пользовательский атрибут для предопределенного тега, но вы можете добавить пары ключ-значение, называемые meta-data.

Ответ 3

Вместо SharedPreferences вы можете использовать (ака, настройки).

Ответ 4

В теге (а также службе и получателе) вы можете использовать тег (http://developer.android.com/guide/topics/manifest/meta-data-element.html)

Он содержит имя и значение или идентификатор ресурса.

Вы получаете его через PackageManager.

Ответ 5

Если кому-то нужно, что для Xamarin (Mono для Android) я не смог найти константу, но я нашел для нее значение, равное 128.

Я использовал условие "для", чтобы пройти все значения от 0 до 1000 и проверять, когда свойство MetaData не было нулевым. лол