悬赏:如何让Firefox的Android Deep Link与Chrome行为一致?
需求:让Firefox中的Deep Link行为与Chrome一致(直接打开应用现有实例)
我这边有个未兑现的悬赏:如果有人能提供符合要求的可行方案,我会补发赏金(原悬赏已过期不可见)。
我的应用已经配置了Intent Filter,在Chrome里完全正常——首次点击链接会提示选择应用,之后直接打开应用。但Firefox的Deep Link实现不一样:点击链接后,地址栏末尾会显示一个Android图标,得点击这个图标才会在Firefox内打开我的应用,这不是我想要的效果。
重要更新说明
singletask模式不可行,它会导致恢复的Activity无法获取启动Intent中的extras,这个副作用太严重了。
另外要说明:这个问题不是其他Firefox Deep Link相关问题的重复,那些问题都是聚焦于如何让Deep Link生效,而我已经清楚Firefox的Deep Link工作原理,它也能正常触发,我只是想修改它的打开行为。
我的核心问题是:如果可行,怎么通过Firefox的Deep Link打开应用的现有实例,让它的行为和Chrome完全一致? 而且我不想用iframe方案。
我已经实现了http和https的Intent Filter,代码如下:
<!-- https --> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="myappurl" android:pathPrefix="/myprefix" android:scheme="https" /> </intent-filter> <!-- http --> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="myappurl" android:pathPrefix="/myprefix" android:scheme="http" /> </intent-filter>
如果提供解决方案,请给出清晰的示例,说明代码在Manifest中的位置(如果涉及Manifest修改),以及可能存在的副作用。
内容的提问来源于stack exchange,提问作者jungledev
相关产品推荐
相关产品推荐

