从其他应用程序加载外部网络链接到我的浏览器

Posted

技术标签:

【中文标题】从其他应用程序加载外部网络链接到我的浏览器【英文标题】:Loading external web links from other app to my Browser 【发布时间】:2018-05-31 19:28:51 【问题描述】:

我已经构建了一个 android 浏览器,我想在其中加载来自其他应用程序的外部 Web 链接。在这里,我在 AndroidManifest.xml 上添加了这段代码。因此,当我从其他应用程序打开 http/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:scheme="http" />
            <data android:scheme="https" />
        </intent-filter>

现在,我将通过哪个键名将数据输入我的浏览器??? 假设,如果我发送一个键是 "url" 的 web 链接,那么我通过这种方式加载该 url,

    Intent intent = getIntent();
    String url = intent.getStringExtra("url");

    if(url!=null) 
        Intent i = new Intent(Intent.ACTION_VIEW);
        i.setData(Uri.parse(url));
        startActivity(i);
        finish();
    

我不知道其他应用程序通过哪个键名发送数据以使用外部浏览器打开。我该如何解决这个问题?

【问题讨论】:

你想在浏览器中打开网址是吗? 是的。但我可以抓住 url 链接吗? (通过哪个键名) 【参考方案1】:

http://www.vogella.com/tutorials/AndroidIntent/article.html

参考链接。在此,他们解释了如何使用显式意图在两个应用程序之间进行通信。他们的例子也完全满足您的需求。

【讨论】:

以上是关于从其他应用程序加载外部网络链接到我的浏览器的主要内容,如果未能解决你的问题,请参考以下文章

从外部文件或程序集加载 WPF 样式或其他静态资源

如何在WebView Android中过滤手机和其他Web链接

Android 链接到外部商店

类型安全配置:从打包的 scala 应用程序的外部路径加载附加配置

从其他应用程序打开文件到我的应用程序后删除收件箱文件夹

将媒体从另一个应用程序共享到我的应用程序时,如何在我的 PWA 应用程序中处理媒体共享?