安卓开发怎么在APP内部调用手机系统浏览器打开指定html并获取HTML的数据

安卓开发怎么在APP内部调用手机系统浏览器打开指定html并获取HTML的数据,第1张

Android开发_如何调用 浏览器访问网页和Html文件

一、启动android默认浏览器

Intent intent= new Intent();

intentsetAction('androidintentactionVIEW');

Uri content_url = Uriparse('>

用chrome://inspect/#devices(不一定能用)

抓包软件,比如packet capture

PC上建立热点,再抓包即可

Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换。

我们使用这种url来向服务器请求或传递数据,俗称 "网络资源定位符"

我们已经知道一个URL的基本结构,那么在iOS中我们如何获取对应结构的元素呢,答案是利用系统的 URLComponents 类进行处理

我们简单看下这个类的内部结构

我们可以看到URL的每个结构在URLComponents中都有对应的属性

输出结果

使用场景

openURL主要有下面几个主要的应用

在iOS中我们可以通过 URL Schemes + openURL 方法实现应用间的跳转,下面先讲几个概念和方法

如图,使我们经常会添加的几个 URL Schemes ,目的是为了第三方应用能够跳转回我们的App。

iOS9 之后,新增了 URL Schemes 白名单 的概念,这个稍后具体再讲

比如你可以使用下面的方法直接跳转到微信

再或者我们常用的拨打电话

一般,我们在跳转之前都需要判断下能不能够打开这个url(能够打开则跳转,不能则提示或者隐藏什么的),系统为我们提供了 canOpenURL 这个方法来判断我们是否能够打开某个url但是在 iOS9 之后,我们需要在infoplist中配置 URL Schemes 白名单 ,只有添加了白名单,我们的这个方法才能生效。否则会提示 "This app is not allowed to query for scheme" ,如下图

想了解更多App的 URL Schemes 可以参考这个 你所知道好玩有趣的 iOS URL Scheme 有哪些?

值得一提的是在 iOS9 之后当我们跳转进入其他App时,系统会在左上角默认提供一个反馈按钮

其实,我们在跳转时还能进行简单的App间传参

如何传参:

举个栗子:

来看下官方提供的url格式

通过这个url我们可以直接从我们App跳到高德地图导航页面进行导航,当然前提是我们已经安装了高德地图,可以使用 canOpenUrl 来判断,具体的可参考 高德官方的文档

那么高德内部是如何接收我们的参数的呢? ,来看这两个熟悉的回调方法

以上两个方法是系统提供给我们的openUrl回调方法,比如我们跳转到 高德地图 后,他那边就会执行这个方法,有一点需要注意的是第二个方法是在 iOS9 才出现的方法,也就是说如果你的系统是iOS9及之后的话他只会走第二个方法, iOS9 之前才会走第一个方法。我们可以在这里获取相应的 url 并进行处理。我们平时会在这边处理 友盟分享和支付相关 的一些回调

url也可以用来访问我们本地的资源文件,其实和网络中的url一样,只不过资源服务器变成了我们本机,少去了资源传递的过程,最直接的资源定位符 ,这一块就先不做详细叙述了

以上就是关于安卓开发怎么在APP内部调用手机系统浏览器打开指定html并获取HTML的数据全部的内容,包括:安卓开发怎么在APP内部调用手机系统浏览器打开指定html并获取HTML的数据、android 里面如何获得第三方app中webview打开的url地址、iOS 下,怎么获得当前新闻 app 页面的 URL等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9465179.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存