Как получить имя пакета файла aar? - PullRequest
0 голосов
/ 01 января 2019

Я создаю библиотеку aar, и мне нужно получить aar packagename за знак aar файла.

Я пытаюсь описать код ниже, но метод getPackageName()не вернулся aar packagename

Signature[] sigs = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES).signatures;
for (Signature sig : sigs){
    Log.i("MyApp", "Signature hashcode : " + sig.hashCode());
}

Ответы [ 2 ]

0 голосов
/ 01 января 2019

Вы можете просто получить имя пакета, обратившись к классу из библиотеки .aar.Предположим, у вас есть класс в библиотеке с именем Sample.java, тогда вы можете получить имя пакета следующим образом:

String packageName = Sample.class.getPackage().getName();
0 голосов
/ 01 января 2019

Библиотека AAR читается только во время компиляции.Когда вы создаете приложение, которое использует эту библиотеку, AAR «включается» и объединяется с кодом приложения, поэтому имя_пакета во время выполнения относится к приложению, а не к вашей библиотеке.Вход в AAR-файл используется для того, чтобы разработчики были уверены в источнике этого файла и больше ничего.Во время выполнения эта сигнатура теряется после процедуры сборки.

...