Александр Горбач


программирование, админство

Использование метаданных AndroidManifest.xml в приложении

без комментариев

Порой возникает необходимость использовать настройки, влияющие на работу всего приложения, и задающиеся при сборке. Или же мы создаем класс, который планируем использовать в нескольких проектах, однако для него так же необходимо делать настройки. Логично такие настройки поместить в файл манифеста приложения.

В файле AdnroidManifest.xml существует специальный тип meta-data для этого. Это поле может хранить булев тип, целый, строковой или с плавающей точкой и в дальнейшем может быть получено соответствующим методом с приведением типов.
Для примера рассмотрим часть AndroidManifest.xml

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
         
         <meta-data android:name="myAPIKey" android:value="sample_value" />
    </application>

Здесь мы поместили значение sample_value в поле myAPIKey. Для того, чтобы получить значение в нашей программе используем следующий код:

String TAG = "Example Meta-Data";
        try {
            ApplicationInfo ai = getPackageManager().getApplicationInfo(
                    getPackageName(), PackageManager.GET_META_DATA);
            Bundle bundle = ai.metaData;
            String myAPIKey = bundle.getString("myAPIKey");
            System.out.println("API KEY : " + myAPIKey);
        } catch (NameNotFoundException e) {
          Log.e(TAG,
                    "Failed to load meta-data, NameNotFound: " + e.getMessage());
        } catch (NullPointerException e) {
            Log.e(TAG,
                    "Failed to load meta-data, NullPointer: " + e.getMessage());
        }

Автор Sash(k)a

Май 20th, 2014 at 11:05 пп

Опубликовано в Без рубрики

Тэги ,

Оставьте комментарий

Яндекс.Метрика