dc375072c4fc95d612ccd3c60ff0519eb75b804c |
|
11-Jan-2017 |
Torne (Richard Coles) <torne@google.com> |
Prepare to enable multiprocess by default. Implement logic to track the version on which the user last manually enabled/disabled multiprocess (by storing the version code in the setting, negated for disabled). This enables us to have the following logic: 1) If multiprocess is enabled by default, re-enable it for users who turned it off on a previous version, but leave it off for users who turned it off on the current version. This lets us collect fresh bug reports after fixing previous issues. 2) If multiprocess is disabled by default, leave it on for users who have enabled it manually, but turn it back off for users who were just relying on the default. This CL leaves it set to "disabled by default" so there is no immediate behavioural change, but this enables us to switch the "enabled by default" flag back and forth freely later. Bug: 21643067 Test: run WebViewUpdateServiceTest Test: manually upgrade/downgrade webview, verify behaviour of setting Change-Id: Ibbecac7e5ee75e9c4a1b6efb84253ace98d1eb1a
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
364e16029017a4e16ed727a5e501f70363d04e5a |
|
14-Dec-2016 |
Gustav Sennton <gsennton@google.com> |
Change WebView fallback mechanism to consider all users' package states. MultiProcess WebView will use a Service to start a separate process (the renderer process). This Service can only be started if the WebView package is enabled for the current user. To ensure that the current WebView package is usable by all users on a single device we now only use a WebView package as WebView implementation if that package is enabled and installed for all user on the device. This also means that the WebView-fallback mechanism will trigger when disabling the primary WebView package for any user (not just the system user). Also add multi-user unit tests to cover this new change. Bug: 32894152 Test: run unit tests in WebViewUpdateServiceTest Test: ensure the standalone WebView package becomes enabled (for all device users) when disabling Chrome for a secondary user. Test: load WebView (both using Monochrome, and using the standalone WebView). Change-Id: Iad3fc48aa50273062c2f29ae48a343c2dea38116
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
1a4c4e35397adb964fb53695f66e1ac1ace39ff1 |
|
10-Jan-2017 |
Torne (Richard Coles) <torne@google.com> |
Handle multiprocess flag in WebView update service. Instead of letting DevelopmentSettings manage the setting directly and observing the changes from WebViewUpdateService, have the update service manage the setting and just expose IPCs for the settings app to use to get/set the setting. This means we can set a more flexible policy for whether multiprocess is enabled by default and change it without touching the settings code, though for now this CL does not change the behaviour and is just a refactoring. Bug: 21643067 Test: Toggle multiprocess WebView in developer settings Change-Id: I3057c09d99f5f6f472a5195a8e14e9164ea5733a
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
86f7bbe134a274a4936b73e2fc2287482ac0157e |
|
24-Oct-2016 |
Gustav Sennton <gsennton@google.com> |
Fix WebViewUpdateServiceTest failures when using Thread without Looper. Add some more methods to SystemInterface to avoid calling into the rest of the framework from WebViewUpdateServiceTests. Also convert WebViewUpdateServiceTest to use non-deprecated test utilities. Test: make sure tests in WebViewUpdateServiceTest pass. Bug: 32364900 Change-Id: I8cf67568bb7e551e1c011028e0bb4e15c0e9f2bb
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
ded209843616a98e6f97db0d1784f6d630cbd5e9 |
|
15-Aug-2016 |
Robert Sesek <rsesek@google.com> |
Create the WebViewZygote and implement WebViewZygoteInit. This adds a new init-spawned daemon, webview_zygote, that starts a JVM and acts as a zygote process for WebView isolated_app services. Test: m Test: angler boots Test: Turn on Settings>Developer>Multiprocess Webview. webview_zygote32 or webview_zygote64 start (requires dependent CLs). Bug: 21643067 Change-Id: Ida98bd04b4d77736b672b03af651c4eb97ce88c1
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
9e8c0584faae06ad903b8b859c5a5e5b11d63257 |
|
25-Mar-2016 |
Hui Shu <hush@google.com> |
Disallow WebView provider packages lower version than Chrome Stable Doing so has security benefits, making sure the device is at least as secure as the MonoChrome Stable on the system image. This is implemented as checking WebView provider package versionCode against the default available, non-fallback WebView provider package. On GMS devices, this is MonoChrome Stable. On AOSP devices, this is standalone WebView. BUG: 27469181 Change-Id: Id5b68ee28401a24843421cfcc3755e63196ac0f9
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|
065b7e6ef588a11c82cee22012706e6c0e66d0a3 |
|
01-Apr-2016 |
Gustav Sennton <gsennton@google.com> |
Move more code from WebViewUpdateService to separate overridable class Move more code from WebViewUpdateService to utility classes (methods handling settings and uninstalling/enabling/disabling packages) to be overridden during tests. Also rename system utility class. Bug: 27635535 Change-Id: If49999fba4fd0962f103f389898fa5ddf19365bd
/frameworks/base/services/core/java/com/android/server/webkit/SystemInterface.java
|