Android WebView: cymhwyswch y diystyru proesi cyn llywio
Defnyddiwch wiriad nodwedd a chymedroliad cwblhau AndroidX WebKit, ac ystyriwch y diystyru a rennir gan WebView mewn un broses.
Dylai llywio sy'n dibynnu ar ddiystyru proesi WebView ddechrau ar ôl i wrandawr cwblhau'r diystyru redeg. Mae ei osod a llwytho tudalen ar unwaith yn gadael y llawdriniaeth yn rasio yn erbyn diweddariad asyncronaidd.
- Gwiriwch
WebViewFeature.isFeatureSupported(WebViewFeature.PROXY_OVERRIDE). Mae cymorth yn dibynnu ar weithrediad WebView a llyfrgell AndroidX WebKit yn ogystal â lefel API Android. Diffiniwch beth sy'n digwydd pan nad yw ar gael; gall mynd yn syth yn ddistaw danddinistrio'r nodwedd. - Adeiladwch y
ProxyConfigarfaethedig gan ddefnyddio ei reolau proesi dogfennol, cystrawen pwynt terfyn a'r ymddygiad osgoi. Ar gyfer llywio caniatiedig i safleoedd cyhoeddus, dewiswch ymgeisydd o'r rhestr proesi am ddim y mae ei brotocol yn cyfateb i reol a gefnogir gan y gweithrediad WebView hwnnw. Mae URL PAC, URI SOCKS a gwesteiwr noeth yn fewnbynnau gwahanol. - Galwch
ProxyController.setProxyOverride()gyda'r ffurfweddiad hwnnw, gweithredydd a gwrandawr cwblhau. Dechreuwch lywio dibynnol o'r llwybr cwblhau. - Pan ddaw'r diystyru dros dro i ben, cliriwch ef gyda
clearProxyOverride()a thriniwch ei gwblhau asyncronaidd hefyd.
Rhowch un perchennog i'r cylch bywyd hwnnw. Mae'r gosodiad yn berthnasol i WebViews drwy broses y rhaglen; ni all ei newid dro ar ôl tro roi allanfeydd annibynnol i ddau olygfa ar yr un pryd. Mae gan brosesau eraill a llyfrgelloedd HTTP eu llwybrau eu hunain.
Mae'r rhyngwyneb a gefnogir hwn yn osgoi dibynnu ar wrandawyr newid proesi preifat sy'n amrywio rhwng rhyddhau Android. Mae'n dewis llwybro; mae tystlythyrau proesi ac ymddiriedaeth tystysgrifau yn dal i ddefnyddio eu mecanweithiau a gefnogir. Mae angen diagnosio methiant dilysu neu TLS ar ôl dewis ar y cam hwnnw.