UC Browser PWA features

download: PWA-features-v1.0.0.xlsx

Feature API Chrome for Android UC SDK UCBrowser(cn) UCBrowser(intl) Remark
Cache Cache.match(request, options) 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] The options parameter only supports ignoreSearch, and cacheName.
54 - All options supported 11.8.2 - All options supported 12.0.0 - All options supported
Cache.matchAll(request, options) 47.0 [1] - Basic support 2.12.1.0 - All options supported 11.8.2 - All options supported 12.0.0 - All options supported [1] The options parameter only supports ignoreSearch, and cacheName.
54 - All options supported
Cache.add(request) 46.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
46.0 - Require HTTPS 2.12.1.0 - Require HTTPS 11.8.2 - Require HTTPS 12.0.0 - Require HTTPS
Cache.addAll(requests) 46.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
46.0 - Require HTTPS 2.12.1.0 - Require HTTPS 11.8.2 - Require HTTPS 12.0.0 - Require HTTPS
Cache.put(request, response) 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
46.0 - Require HTTPS 2.12.1.0 - Require HTTPS 11.8.2 - Require HTTPS 12.0.0 - Require HTTPS
Cache.delete(request, options) 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] The options parameter only supports ignoreSearch, and cacheName.
54 - All options supported 2.12.1.0 - All options supported 11.8.2 - All options supported 12.0.0 - All options supported
Cache.keys(request, options) 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] The options parameter only supports ignoreSearch, and cacheName.
54 - All options supported 2.12.1.0 - All options supported 11.8.2 - All options supported 12.0.0 - All options supported
CacheStorage CacheStorage.match() 41.0 [1] - Basic support 2.12.1.0 - All options supported 11.8.2 - All options supported 12.0.0 - All options supported [1] The options parameter only supports ignoreSearch, and cacheName.
54 - All options supported
CacheStorage.has() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
CacheStorage.open() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
CacheStorage.delete() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
CacheStorage.keys() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Client Client.postMessage() 45.0 [1] - Basic support 2.10.0.0 - Basic support 11.4.5 - Basic support 11.4.5 - Basic support [1] Behind a flag in Chrome 40 through 44.
Client.frameType  43.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Client.id  45.0 [1] - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] Behind a flag in Chrome 40 through 44.
Client.url 41.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Client.type 60 - Basic support No support No support No support
Clients Clients.get() 51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Clients.matchAll() 43.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] The includeUncontrolled option is not supported before Chrome 43.0.
Clients.openWindow() 42.0 [1][3] - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support [1] In Chrome 43 and later, you can open any URL. In Chrome 42 you could only open URLs on the same origin.
[3] In Chrome for Android 51 and later, URLs may open inside an existing browsing context provided by a standalone web app.
Clients.claim() 42.0 - Basic support 2.10.1.0 - Basic support 11.5.5 - Basic support 11.5.5 - Basic support
ExtendableEvent ExtendableEvent.waitUntil() 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] Before Chrome 46, waitUntil() would take any value rather than just promises.
ExtendableMessageEvent ExtendableMessageEvent.data  51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ExtendableMessageEvent.origin  51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ExtendableMessageEvent.lastEventId  51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ExtendableMessageEvent.source  51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ExtendableMessageEvent.ports  51.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
FetchEvent FetchEvent.isReload  44.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
FetchEvent.request 44.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
FetchEvent.clientId  49.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
FetchEvent.client  44.0 - Basic support Deprecated
FetchEvent.navigationPreload 59.0 - Basic support No support No support No support
FetchEvent.respondWith() 44.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ExtendableEvent.waitUntil() 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] Before Chrome 46, waitUntil() would take any value rather than just promises.
InstallEvent InstallEvent.activeWorker  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Navigator.serviceWorker Navigator.serviceWorker 35.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
NotificationEvent NotificationEvent.notification  42.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
NotificationEvent.action  48.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
ExtendableEvent.waitUntil() 40.0 [1] - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support [1] Before Chrome 46, waitUntil() would take any value rather than just promises.
ServiceWorker ServiceWorker.scriptURL 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorker.state  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorker.onstatechange  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerContainer ServiceWorkerContainer.controller 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerContainer.ready  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerContainer.oncontrollerchange 41.0 - Basic support 2.10.1.0 - Basic support 11.5.5 - Basic support 11.5.5 - Basic support
ServiceWorkerContainer.onerror 40.0 - Basic support No support No support No support
ServiceWorkerContainer.onmessage 40.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerContainer.register()  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerContainer.getRegistration() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerContainer.getRegistrations() 45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerGlobalScope ServiceWorkerGlobalScope.clients 36.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.registration 42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerGlobalScope.caches  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.onactivate 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.onfetch 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.oninstall 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.onmessage 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.onerror 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerGlobalScope.onnotificationclick 42.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerGlobalScope.onnotificationclose 50.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerGlobalScope.onpush 42.0 - Basic support 2.10.0.0[1] - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] SDK use non-standard interface to support push function.
ServiceWorkerGlobalScope.onpushsubscriptionchange No support No support No support No support
ServiceWorkerGlobalScope.onsync 49.0 - Basic support No support No support No support
ServiceWorkerGlobalScope.skipWaiting() 42.0 - Basic support 2.10.1.0 - Basic support 11.5.5 - Basic support 11.5.5 - Basic support
GlobalFetch.fetch() 42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
43.0 - Streaming response body 2.12.1.0 - Streaming response body 11.8.2 - Streaming response body 12.0.0 - Streaming response body
43.0 - Support for blob: and data: 2.12.1.0 - Support for blob: and data: 11.8.2 - Support for blob: and data: 12.0.0 - Support for blob: and data:
52.0 - referrerPolicy 2.12.1.0 - referrerPolicy 11.8.2 - referrerPolicy 12.0.0 - referrerPolicy
ServiceWorkerMessageEvent ServiceWorkerMessageEvent.data  45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerMessageEvent.origin  45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerMessageEvent.lastEventId  45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerMessageEvent.source  45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerMessageEvent.ports  45.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerRegistration ServiceWorkerRegistration.scope  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerRegistration.installing  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerRegistration.waiting 38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerRegistration.active  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
serviceWorkerRegistration.periodicSync 49.0 - Basic support No support No support No support
serviceWorkerRegistration.navigationPreload 59.0 - Basic support No support No support No support
ServiceWorkerRegistration.pushManager  42.0 - Basic support 2.10.0.0[1] - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] SDK use non-standard interface to support push function.
ServiceWorkerRegistration.sync  49.0 - Basic support No support No support No support
ServiceWorkerRegistration.onupdatefound  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
ServiceWorkerRegistration.getNotifications() 42.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
ServiceWorkerRegistration.showNotification() 42.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
44.0 - data option 11.8.2 - data option 12.0.0 - data option
45.0 - vibrate option 11.8.2 - vibrate option 12.0.0 - vibrate option
47.0 - requireInteraction 11.8.2 - requireInteraction 12.0.0 - requireInteraction
48.0 - actions option 11.8.2 - actions option 12.0.0 - actions option
50.0 - renotify option 11.8.2 - renotify option 12.0.0 - renotify option
53.0 - badge option 11.8.2 - badge option 12.0.0 - badge option
56.0 - image option 11.8.2 - image option 12.0.0 - image option
ServiceWorkerRegistration.update() 45.0 [1][2] - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] Starting with Chrome 46, update() returns a promise that resolves with 'undefined' if the operation completed successfully or there was no update, and rejects if update failed. If the new worker ran but installation failed, the promise still resolves. Formerly, it raised an exception.
45.0 [1][2] - Available in web workers [2] Before Chrome 48, this method always bypassed the browser cache. Starting with Chrome 48, it only bypasses the cache when the previous service worker check was more than twenty-four hours ago.
ServiceWorkerRegistration.unregister() 38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
NavigationPreloadManager
SyncManager
SyncEvent SyncEvent.tag  49.0 - Basic support No support No support No support
SyncEvent.lastChance 49.0 - Basic support No support No support No support
SyncManager SyncManager.register 49.0 - Basic support No support No support No support Non-standard
SyncManager.getTags 49.0 - Basic support No support No support No support Non-standard
SyncRegistration  SyncRegistration.tag No support No support No support No support Non-standard
SyncRegistration.unregister No support No support No support No support Non-standard
PeriodicSyncEvent PeriodicSyncEvent.registration No support No support No support No support Non-standard
PeriodicSyncManager PeriodicSyncManager.minPossiblePeriod  No support No support No support No support Non-standard
PeriodicSyncManager.register No support No support No support No support Non-standard
PeriodicSyncManager.getRegistration No support No support No support No support Non-standard
PeriodicSyncManager.getRegistrations No support No support No support No support Non-standard
PeriodicSyncManager.permissionState No support No support No support No support Non-standard
 PeriodicSyncRegistration PeriodicSyncRegistration.minPeriod No support No support No support No support Non-standard
PeriodicSyncRegistration.networkState No support No support No support No support Non-standard
PeriodicSyncRegistration.powerState No support No support No support No support Non-standard
PeriodicSyncRegistration.tag No support No support No support No support Non-standard
WindowClient WindowClient.focus() 42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
WindowClient.navigate() 49.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
WindowClient.focused 42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
WindowClient.visibilityState  42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
PushManager PushManager.getSubscription() 42.0 - Basic support 2.10.0.0[1] - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] SDK use non-standard interface to support push function.
PushManager.permissionState() 42.0 - Basic support No support 11.8.2 - Basic support 12.0.0 - Basic support
PushManager.subscribe() 42.0 - Basic support 2.10.0.0[1] - Basic support 11.8.2 - Basic support 12.0.0 - Basic support [1] SDK use non-standard interface to support push function.
52.0 - applicatonServerKey 11.8.2 - applicatonServerKey 12.0.0 - applicatonServerKey
PushManager.hasPermission() 42.0[1] - Basic support No support No support No support Deprecated [1] This feature is implemented behind a flag.
PushManager.register() No support No support No support No support Deprecated
PushManager.registrations() No support No support No support No support Deprecated
PushManager.unregister() No support No support No support No support Deprecated
GlobalFetch GlobalFetch.fetch() 42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
43.0 - Streaming response body 2.12.1.0 - Streaming response body 11.8.2 - Streaming response body 12.0.0 - Streaming response body
43.0 - Support for blob: and data: 2.12.1.0 - Support for blob: and data: 11.8.2 - Support for blob: and data: 12.0.0 - Support for blob: and data:
52.0 - referrerPolicy 2.12.1.0 - referrerPolicy 11.8.2 - referrerPolicy 12.0.0 - referrerPolicy
Request Request.method  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Request.url  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Request.headers  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Request.context  42.0 [1] - Basic support No support No support No support [1] Removed in Chrome 46.
Request.referrer  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Request.referrerPolicy 52.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Request.mode  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
49.0 - navigate mode
Request.credentials  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Request.redirect  46.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Request.integrity  47.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Request.cache  59.0 - Basic support No support No support No support
Request.clone() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response Response.headers  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.ok  42.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Response.redirected 60.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Response.status  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.statusText  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.type  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.url  38.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.useFinalURL No support No support No support No support
Response.clone() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Response.error() 46.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Response.redirect() 46.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Body Body.body 52.0 - Basic support 2.12.1.0 - Basic support 11.8.2 - Basic support 12.0.0 - Basic support
Body.bodyUsed  40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Body.arrayBuffer() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Body.blob() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Body.formData() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Body.json() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support
Body.text() 40.0 - Basic support 2.9.5.0 - Basic support 11.2.0 - Basic support 11.4.6 - Basic support