booster icon indicating copy to clipboard operation
booster copied to clipboard

WebView 预加载组件几乎已经失效,相关: `com.google.android.webview`

Open LimeVista opened this issue 3 years ago • 0 comments

新版本的 Android System WebView 导致 WebView 预加载组件几乎失效

  • WebViewChromiumFactoryProvider 拥有多个子类,如 WebViewChromiumFactoryProviderForXXX
  • WebViewChromiumFactoryProvider 内部方法名被混淆。
  • 例如:
    • Android System WebView 81.0.4044.111
.method public a(Z)V
    .locals 2

    const-string v0, "WebViewChromiumFactoryProvider.startYourEngines"

    .line 16
    invoke-static {v0}, Landroid/os/Trace;->beginSection(Ljava/lang/String;)V

    .line 17
    :try_start_0
    iget-object v0, p0, Lcom/android/webview/chromium/WebViewChromiumFactoryProvider;->b:LF8;

    invoke-virtual {v0, p1}, LF8;->b(Z)V
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    .line 18
    invoke-static {}, Landroid/os/Trace;->endSection()V

    return-void

    :catchall_0
    move-exception p1

    .line 19
    :try_start_1
    invoke-static {}, Landroid/os/Trace;->endSection()V
    :try_end_1
    .catchall {:try_start_1 .. :try_end_1} :catchall_1

    goto :goto_0

    :catchall_1
    move-exception v0

    .line 20
    sget-object v1, Lon;->a:Lin;

    invoke-virtual {v1, p1, v0}, Lin;->a(Ljava/lang/Throwable;Ljava/lang/Throwable;)V

    .line 21
    :goto_0
    throw p1
.end method
  • Android System WebView 96.0.4664.92
.method public i(Z)V
    .locals 1

    const-string v0, "WebViewChromiumFactoryProvider.startYourEngines"

    .line 1
    invoke-static {v0}, Landroid/os/Trace;->beginSection(Ljava/lang/String;)V

    .line 2
    :try_start_0
    iget-object v0, p0, Lcom/android/webview/chromium/WebViewChromiumFactoryProvider;->b:LCD0;

    invoke-virtual {v0, p1}, LCD0;->j(Z)V
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    .line 3
    invoke-static {}, Landroid/os/Trace;->endSection()V

    return-void

    :catchall_0
    move-exception p1

    .line 4
    :try_start_1
    invoke-static {}, Landroid/os/Trace;->endSection()V
    :try_end_1
    .catchall {:try_start_1 .. :try_end_1} :catchall_1

    .line 5
    :catchall_1
    throw p1
.end method
  • Android System WebView 99.0.4844.58:
.method public final k(Z)V
    .locals 1

    const-string v0, "WebViewChromiumFactoryProvider.startYourEngines"

    .line 1
    invoke-static {v0}, Landroid/os/Trace;->beginSection(Ljava/lang/String;)V

    .line 2
    :try_start_0
    iget-object v0, p0, Lcom/android/webview/chromium/WebViewChromiumFactoryProvider;->b:Lcom/android/webview/chromium/c1;

    invoke-virtual {v0, p1}, Lcom/android/webview/chromium/c1;->g(Z)V
    :try_end_0
    .catchall {:try_start_0 .. :try_end_0} :catchall_0

    .line 3
    invoke-static {}, Landroid/os/Trace;->endSection()V

    return-void

    :catchall_0
    move-exception p1

    .line 4
    :try_start_1
    invoke-static {}, Landroid/os/Trace;->endSection()V
    :try_end_1
    .catchall {:try_start_1 .. :try_end_1} :catchall_1

    .line 5
    :catchall_1
    throw p1
.end method

LimeVista avatar Mar 11 '22 08:03 LimeVista