(1)新建一个module,命名为OkHttpUtilDemo。
(2)在项目build.gradle文件中的dependencies闭包下进行添加对OkHttp的依赖。
部分代码如下:
(3)在项目build.gradle文件中的android下添加指定jdk版本的代码以解决Android studio 导入依赖构建时报错(Error:Static interface methods are only supported starting with Android N (--min-api 24))。
部分代码如下:
(4)在AndroidManifest.xml中添加权限(注意实现文件的上传下载需要增加外部存储读写权限)。
部分代码如下:
(5)API 23以后引入新的保护机制对于仅使用安全通信的应用,禁止了明文通信,如果一定要使用明文通信(使用get方法)的话,则可以在AndroidManifest.xml文件的application元素中添加android:usesCleartextTraffic=“true”作为一种临时的通信策略。
部分代码如下:
(6)新建一个类OKHttpUtil.java,见图6.12。注意该段代码中Android使用Handler进行实例化(new)时,Handler handler = new Handler();会报错“Handler is abstract,cannot be instantiated.”,提示使用,其他实例化方式。原因:导入(import)库发生错误,使用Android的句柄(handler)库,不是java的句柄库;使用“import android.os.Handler;”代替“import java.util.logging.Handler;”即可。
图6.12(www.xing528.com)
(7)OKHttpUtil.java部分代码如下:
(8)布局文件activity_main.xml。
(9)MainActivity.java。
(10)新建一个类AnotherOKHttpUtil.java,用于实现标准化通用访问网络。
部分代码如下:
(11)布局文件activity_main.xml增加一个Button。
部分代码如下:
(12)MainActivity.java增加如下代码:
(13)参照OKHttpFileDemo进行相关测试,运行效果见图6.13。
图6.13
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。