Как определить, кто запустил глубокую ссылку в мое приложение

Мне нужно выяснить, какое приложение запускает глубокую ссылку на мое приложение в целях безопасности

Кто-нибудь делал это раньше?

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

Есть идеи?

1 ответ

Ты можешь использовать getReferrer().getHost() чтобы получить имя пакета приложения, которое запустило ваше приложение.

Например, если ссылка была запущена из документов Google, которые запустили ваше приложение, она вернет com.google.android.apps.docs.editors.docs,

См. Activity # getReferrer (), но, как отмечает документ, если приложение хотело подделать его или оставить пустым, оно могло бы. Так что не 100%.

В противном случае, прибегните к чему-то вроде " Получить список недавних и запущенных приложений", а не к процессам, и получите последнее приложение / действие перед вашим.

Другие вопросы по тегам