Skip to content
StormKid edited this page Sep 30, 2019 · 7 revisions

1、最简单初始化

class BaseApplication:Application (){
    override fun onCreate() {
        super.onCreate()
        Okkt.instance.setBase("http://xxxx").initHttpClient()
    }
}

此处不可以忽略base里填写的域名,必须强制要求规范代码。

2、各种带功能的初始化

class BaseApplication:Application (){
    override fun onCreate() {
        super.onCreate()
        Okkt.instance
       .setBase("http://xxxx.com")
       .isLogShow(true)
       .setErr("xxxx")
       .setClientType(Okkt.FACTORY_CLIENT)
       .setNetClientType(Okkt.HTTPS_TYPE)
       .setTimeOut(1000L)
       .isNeedCookie(false)
       .initHttpClient()
    }
}
方法名 参数类型 默认值 方法描述
isLogShow Boolean false 是否显示Log
setErr String "网络链接失效,请检查网络连接" 请求错误的时候弹出的提示内容
setTimeOut Long 5000L 请求超时时间
isNeedCookie Boolean false 是否需要操作cookie
isAllowRedirect Boolean true 是否支持重定向

单独描述:setClientType 方法 有两个不同的值:

        /**
         * 获取单例对象
         */
        const val SINGLE_CLIENT = "SINGLE_CLIENT"
        /**
         * 获取工厂对象
         */
        const val FACTORY_CLIENT = "FACTORY_CLIENT"

特别注意:默认是单例对象,如果需要调用工厂对象,请使用工厂对象,工厂对象得出的Okhttpclient 为新对象,okhttpclient相互隔离,这样适用于某种时刻转换请求的条件。如果仅仅希望在某个局部进行调用新的对象,可使用OkHttpClientBuilder 自行构造对象,处理完毕后注意重给Okhttpclient赋予单例对象的引用。

单独描述:setNetClientType方法 有三个不同值:

       /**
         * 获取http请求的OkHttpclient对象
         */
        const val HTTP_TYPE = "HTTP"
        /**
         * 获取https请求的OkHttpclient对象
         */
        const val HTTPS_TYPE = "HTTPS"

        /**
         * 获取自定义OkHttpclient对象
         */
        const val COMMOM_TYPE = "COMMOM_TYPE"

特别注意:默认是仅支持 HTTP请求对象 ,可选支持 HTTPS的请求对象以及自定义 COMMOM 的请求对象,自定义的对象为一个白对象,需要调用OkHttpClientBuilder.Builder类中的规范方法来进行自定义调教okhttp。从而通过此来达到各类的请求适配。

Clone this wiki locally