我正在创建浏览器应用程序,但当我单击任何 URL 时,Android 不会在选择器中检测到我的应用程序
Posted
技术标签:
【中文标题】我正在创建浏览器应用程序,但当我单击任何 URL 时,Android 不会在选择器中检测到我的应用程序【英文标题】:I am creating a Browser App but Android won't detect my app in chooser while I click on any URL 【发布时间】:2020-07-28 19:19:18 【问题描述】:我正在创建一个浏览器应用程序,我希望 android 将我的应用程序视为浏览器并显示在要打开的应用程序选择器中。
我希望我的应用显示在此列表中。
这是我的清单活动代码:
<activity
android:name=".Activity.LinkDetectorActivity"
android:exported="true"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="testscheme" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
【问题讨论】:
浏览器是什么意思? 我正在尝试创建一个类似 chrome 或 edge 的应用 “我希望 android 将我的应用程序视为浏览器”——这是什么意思? 你不需要上网权限? 每当用户通过 WhatsApp、Facebook 等应用点击链接时,Android 都会提示用户选择浏览器,我希望将我的应用添加到所有已安装浏览器的列表中。 【参考方案1】:用下面替换你的意图过滤器,
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="http"/>
<category android:name="android.intent.category.DEFAULT" />
<!-- The BROWSABLE category is required to get links from web
pages. -->
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
【讨论】:
更新了答案。还请检查您点击的网址?是http还是https?如果是 https 则也添加该方案。【参考方案2】:尝试将testcheme更改为“http”和“https”
<activity
android:name=".Activity.LinkDetectorActivity"
android:exported="true"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="http" />
<data android:scheme="https" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
【讨论】:
分享 2 个浏览器项目的 2 个链接,检查它们的清单,也尝试更改你的清单 github.com/scoute-dich/browser/blob/master/app/src/main/…github.com/arunkumar9t2/lynket-browser/blob/master/android-app/…以上是关于我正在创建浏览器应用程序,但当我单击任何 URL 时,Android 不会在选择器中检测到我的应用程序的主要内容,如果未能解决你的问题,请参考以下文章
JS异步/等待的CORS错误,但当我将URL直接粘贴到浏览器时没有[重复]
JS async/await 的 CORS 错误,但当我将 URL 直接粘贴到浏览器中时没有 [重复]
iOS IMA SDK - 关闭应用内浏览器后视频未恢复(单击了解更多后)