feat: Add ResolveServiceWorkerRequests preference (#1696)

* feat: Add ResolveServiceWorkerRequests preference
* Change default to true
This commit is contained in:
jcesarmobile 2024-05-08 13:53:09 +02:00 committed by GitHub
parent 9261b29cf2
commit ebf0b105a3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -29,6 +29,8 @@ import android.webkit.ClientCertRequest;
import android.webkit.HttpAuthHandler;
import android.webkit.MimeTypeMap;
import android.webkit.RenderProcessGoneDetail;
import android.webkit.ServiceWorkerClient;
import android.webkit.ServiceWorkerController;
import android.webkit.SslErrorHandler;
import android.webkit.WebResourceRequest;
import android.webkit.WebResourceResponse;
@ -116,6 +118,18 @@ public class SystemWebViewClient extends WebViewClient {
});
this.assetLoader = assetLoaderBuilder.build();
boolean setAsServiceWorkerClient = parentEngine.preferences.getBoolean("ResolveServiceWorkerRequests", true);
ServiceWorkerController controller = null;
if (setAsServiceWorkerClient) {
controller = ServiceWorkerController.getInstance();
controller.setServiceWorkerClient(new ServiceWorkerClient(){
@Override
public WebResourceResponse shouldInterceptRequest(WebResourceRequest request) {
return assetLoader.shouldInterceptRequest(request.getUrl());
}
});
}
}
/**