点此进入:从零快速构建APP系列目录导图
点此进入:UI编程系列目录导图
点此进入:四大组件系列目录导图
点此进入:数据网络和线程系列目录导图
URL 对象代表统一资源定位器,它是这指向互联网“资源”的指针。这里面的“资源”可以是简单的文件和目录,也可以是对更复杂的对象的引用,例如:对数据库或者搜索引擎的查询。就通常情况而言,URL 可以由协议、名主机、端口和资源组成,即满足如下格式:
protocol://host:port/resourceName
例如如下的URL地址:
http://www.baidu.com/index.php
一、使用 URL 读取网络资源
URL类提供了多个构造器,用于创建 URL 对象,一旦获得 URL 对象之后,就可以调用如下常用的方法来访问 URL 所对应的资源了:
- String getFile():获取url的资源名。
- String getHost():获取url的主机名。
- String getPath():获取url的路径部分。
- int getPort():获取url的端口号。
- String getProtocol():获取url的协议名称。
- String getQuery():获取url的查询字符串部分。
- URLConnection openConnection():返回一个 URLConnection 对象,它表示到 URL 所引用的远程对象的连接。
- InputStream openStream():打开与此 URL 的链接,并返回一个用于读取该 URL 资源的 InputStream。
1、使用 URL 读取网络资源
URL 对象中前面几个方法都非常容易理解,而该对象提供的 openStream() 可以读取该资源的 InputStream,通过该方法可以非常方便的读取远程资源。
首先我们修改 activity_main ,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.wgh.willflowurl.MainActivity">
<ImageView
android:id="@+id/action_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_