Мое приложение com.test.sample вызывается внешним app com.testExternal.outsideApp. Внешнее приложение использует намерение вызвать MainActivity для com.test.sample, вызывая startActivityForResult. То, что я ищу, - это способ программно получить имя пакета внешнего приложения. Я пробовал несколько способов:Как получить имя пакета внешнего приложения, вызывающего мое приложение
String parentPackageName = this.getParent(). GetPackageName();
// Это не работает, поскольку родитель всегда возвращает NULL.
String packageName = this.getIntent(). GetPackage();
// Это возвращает имя пакета текущего приложения, которое не то, что я хочу.
Есть ли другой способ получить имя пакета приложения-вызывающего?
Позвольте вызывающему приложению поместить его имя пакета в использованное намерение. – greenapps
Я понимаю. Но внешнее приложение не содержит имя пакета в входящем пакете, и по дизайну внешняя команда, которая разрабатывает это приложение, не хочет его отправлять. Единственная информация, которую я получаю, - это имя приложения. – paddy
Вы этого не говорили раньше. Почему нет? Откуда вы знаете имя приложения? – greenapps