droidyuecom / comments_droidyuecom

0 stars 0 forks source link

Android WebView 诊断与排查问题的方法和技巧 - 技术小黑屋 #322

Open droidyuecom opened 5 years ago

droidyuecom commented 5 years ago

https://droidyue.com/blog/2019/10/20/how-to-diagnose-webview-in-android/

Android WebView 诊断与排查问题的方法和技巧 Oct 20th, 2019 WebView,是安卓中很重要的一个组件,我们的应用中集成WebView后,可能会遇到各种各样的问题,这里简单介绍一些Android WebView 诊断与排查问题的方法, …

droidyuecom commented 5 years ago

补充文件,一些扩展方法,文章内容引用到的。

fun WebView.toSimpleString(): String {
    return "url=${url};originalUrl=${originalUrl}"
}

fun WebResourceRequest.toSimpleString(): String {
    var simpleString: String =
        "uri=${url};" +
        "isForMainFrame=${isForMainFrame};" +
        "hasGesture=${hasGesture()};" +
        "method=${method};" +
        "headers=${requestHeaders}"

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
        simpleString += "isRedirect=${isRedirect};"
    }
    return simpleString
}

fun WebResourceError.toSimpleString(): String {
    return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        "errorCode=${errorCode};description=${description}"
    } else {
        ""
    }
}

fun WebResourceResponse.toSimpleString(): String {
    return "statusCode=${statusCode};reason=${reasonPhrase};responseHeaders=${responseHeaders}"
}