Я хотел бы добавить пользовательский атрибут в тег приложения моего файла AndroidManifest.xml. Возможно ли это в среде Android?
Возможно ли иметь настраиваемые атрибуты в тегах AndroidManifest.xml?
Ответ 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 не было нулевым. лол