Создайте Java-модуль, который будет изначально запускаться при запуске вашего приложения. Этот модуль будет расширять класс приложений Android и инициализировать любые глобальные переменные приложения, а также содержать подпрограммы утилит всего приложения -
public class MyApplicationName extends Application {
private final String PACKAGE_NAME = "com.mysite.myAppPackageName";
public String getPackageName() { return PACKAGE_NAME; }
}
Конечно, это может включать логику для получения имени пакета из системы Android; однако приведенный выше код меньше, быстрее и чище, чем его получение с Android.
Обязательно поместите запись в свой файл AndroidManifest.xml, чтобы сообщить андроиду о запуске модуля приложения перед выполнением каких-либо действий -
<application
android:name=".MyApplicationName"
...
>
Затем, чтобы получить имя пакета из любого другого модуля, введите
MyApp myApp = (MyApp) getApplicationContext();
String myPackage = myApp.getPackageName();
Использование модуля приложения также дает вам контекст для модулей, которые нуждаются, но не имеют контекста.