[英]Android how to hide intent sender package?
應用程序包名稱 A,將帶有操作 ACTION_VIEW 和 url 數據的意圖發送到系統,應用程序 B 獲取並打開,但我只希望 B 打開意圖而不希望應用程序 B 獲取應用程序 A 的程序包名稱,怎么做?
找出發送 Intent 的包的唯一方法似乎是通過Acitvity#getReferrer()
(取自這個 SO post )。 在其文檔中,明確說明了以下內容
返回有關誰發起此活動的信息。 如果啟動 Intent 包含
Intent.EXTRA_REFERRER
,則將按原樣返回; 否則,如果已知,將返回包含啟動 Intent 的包名稱的Intent#URI_ANDROID_APP_SCHEME
引用 URI。 如果無法識別引用者,則這可能返回 null——既沒有明確指定,也不知道涉及哪個應用程序包。
因此,您可以將Intent.EXTRA_REFERRER
添加到您發送的意圖以覆蓋默認值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.