Получение строки пакета из манифеста Android

Это должно быть просто, но я не могу найти информацию об этом...

Я просто хочу прочитать значение пакета в манифесте android...

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="THIS"

причина проста, я должен позвонить context.getResources(). getIdentifier (...) и мне нужен пакет.

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

Кто-нибудь знает, как это сделать?

Ответ 1

Внутри Activity вы можете просто вызвать getPackageName(). Если вам понадобятся дополнительные данные из манифеста, вы можете использовать класс PackageInfo: http://developer.android.com/reference/android/content/pm/PackageInfo.html

Пример установки TextView в вашу версию приложения:

    try {
        PackageManager pm = getPackageManager();
        PackageInfo packageInfo = pm.getPackageInfo(this.getPackageName(), 0);
        TextView version = (TextView) findViewById(R.id.version);
        version.setText(packageInfo.versionName);
    } catch (NameNotFoundException e) {}

Ответ 2

Из вашего "основного" Activity класса:

String package = this.getClass().getPackage().getName();