- Both are move to FileChooserParams, remove UploadHelper class.
- createIntent only handls non-capture intents
- parseResult is the static member of FileChooseParams and should
be used with createIntent.
BUG:17253647,16624450
Change-Id: I81cac7c1b739880db4e4c1f2b4612ed2ee87cb1b
It turns out that the semantics of the return value are confusing
and so we decided to not return a result from this method at all.
The developer can call canZoomIn/canZoomOut to determine whether
the WebView is at the zoom limit, so there is no loss of
functionality.
BUG: 17374808
Change-Id: I4dfde71d5ac4a3f91c8755b257411aad06a1b1f6
Bug: 17253647
This is Part I of API feedback. It does not address portions
of the feedback that is still pending a response from API council.
Change-Id: I6ae250c6455a5545912623aeb34332d564fffde7
When loading the WebView, save the PackageInfo for the package so that
it can be retrieved later to access the package name, version data, etc.
This will be used to detect WebView downgrades that may affect an app's
saved WebView-related data.
Bug: 16724751
Change-Id: I05ce469308cc87f79c73206327f43b76b1bab222
Add system trace events for several interesting points during the
loading of the WebView APK so we can measure how much each part
contributes to startup time.
Bug: 16870075
Change-Id: Iadfd1881faea0377fa01313dddabb1d030962c5f
Catch and discard any exception thrown in getWebViewNativeLibraryPaths
to avoid the system server crashing if there is something wrong with the
update APK. prepareWebViewInSystemServer(nativePaths) is safe to call
even if nativePaths is null or invalid, and must be called to ensure
that any process waiting for relro processing is unblocked.
Bug: 16894062
Change-Id: I76c759bebcb7c4643fb50979376afea764c859c4
To aid in debugging app behaviour when WebView updates may be present,
log the package name, version name, and version code of the WebView
package when we are about to load it into an application. Do this before
we actually load any part of the package in case of an issue loading it
in the first place.
Change-Id: Id653bad431760b7ead8e3f8eb29f9d6a8bb68d07
Putting the deprecated at the beginning of a class comment seems
to cause problems with JavaDoc so I've moved it to the end.
Bug: 16799480
Change-Id: Ia23dab2ad8ceb8e107e047480b5cb324d11a1457
We load the null WebView if the real WebView package is not available to
support devices that aren't intended to have a WebView, but this results
in confusing log messages if the real WebView is supposed to be present
but is broken/unloadable for some reason. Since the null WebView is in
the system classpath on devices that should use it, swallow any failures
to load it on the assumption that this is actually just a failure of the
real WebView to be loaded.
Change-Id: I15820da3517daffde6169343c648a4486c0309d7
This is just a cleanup CL which fixes:
- Some erroneous debug messages about the relro creator process.
- The condition checked in WebViewUpdateService, to prevent the
WebView to be used from the SystemServer (it now looks at the
process id, previously it was erroneously looking at the uid).
- Adds a 5s. timeout to the waitForRelroCreationCompleted.
Original BUG:16403706
Original Change-Id: I43a953949050d7df5fe334cfa7257315ee6db071
Bug: 16723226
Change-Id: I2f40be3622b8e6c68b2b52cae7f4d3a95e148cbf
Use a config resource to determine the package name for the WebView
implementation to allow it to be changed by a resource overlay.
Original Bug: 16329371
Original Change-Id: I5977691c0223347e0382d584c3d3ee4428660180
Bug: 16723226
Change-Id: Ib0b4245f26cbf93f364aa0f30b231786931f9f16
This CL removes the final use of the hardcoded WebView
library path from WebViewFactory. We now use a system
property to set the amount of address space to reserve
in the zygote rather than stat'ing the file.
See also I07ad5a774623c1899eb50474d999a2b1447783f0
Original Change-Id: Id3c1e3cc2e2a06c1021ad0260a37abcd07d78fd6
Bug: 16723226
Change-Id: I55acad96b6d9ee69f14b84d772abf7740ea96b94
This CL adds more robustness to the logic in WebViewFactory, checking
whether the isolated process did start at all and catching exceptions
in its java side.
Also, this addresses the refactor comments received in CL 509840.
Original BUG:16403706
Original Change-Id: Iaaea6d36142ece6d974c2438259edf421fce9f2e
Bug: 16723226
Change-Id: Id308f2ffde9b67a3eb4719c7b81b4f46421f0c2e
This CL changes the relro creation and loading logic.
Instead of using a hardcoded path, now WebViewFactory queries the
package manager to get the lib path, which will be either
/system/priv-app/webview/lib/ or /data/app/... depending on the
presence of an update apk.
Original BUG:16403706
Original Change-Id: Icceb95da98e69032a19ac2ae8fe72ba1439e50ad
Bug: 16723226
Change-Id: Ia3155f72a735d75a566a8cc4c8c892d43b6cd371
This makes the code loading the WebView Java code from the .apk
also load the WebView assets into the current AssetManager.
Original BUG: 11505352
Original Change-Id: Ib6203f79b98805012ffa20b233037b7da221624c
Bug: 16723226
Change-Id: Ie7b0b22df9727c72debfb9ccfcd84c95bf41e039
The new API spawns a isolated process, using a custom uid, entrypoint and
abi. Such API is used by the WebViewFactory to spawn its unpriviledged
but trusted process (hence the fixed uid) which rewrites the rerlo file
on boot / when an update occurs.
Since both the ActivityManager service and the WebViewUpdate service
live in the SystemServer their calls be dispatched locally and no
binder interface needs to be exposed for the new startIsolatedProcess API.
Original BUG:16403706
Original Change-Id: I327b59735c12698595e0dbcc4da5d759c9103b0a
Bug: 16723226
Change-Id: Iecb49888e11eec9d302d9712953fd498db5821af
Use the WebView APK to load the Java code via createPackageContext.
Original Bug: 16329371
Original Change-Id: I1292edab639d85c2027dc8ebb52def8c36d41cde
Bug: 16723226
Change-Id: I8e692a5e12706f91a8af0a8b385bac336ce60913
* commit 'ae40df3eff3037a9b9e4e88899a6c7a713121a23':
cherrypick from klp-docs docs: formatting for html Change-Id: I1451615c09cc003a03d7585176036c4d695408f1
Bug: 16403458
Address API review. This change updates the FileChooser api. The
largest change is, as requested by API council, providing a helper
to reduce the code app developers need to implement. This
change does not include the CookieManager changes that was requested.
Change-Id: I30d75f36df6bc96d9842b63fdd25c4ff62aee5bb
* commit '39572996f25d4b4ce744d9d04080e33b687ab03b':
cherrypick from klp-docs docs: formatting for html Change-Id: I1451615c09cc003a03d7585176036c4d695408f1
Documents the defualt settings of acceptCookies and acceptFileSchemeCookies.
The current defaults:
<L >=L
acceptCookies | y | y |
acceptThirdPartyCookies | y | n |
acceptFileCookies | n | n |
Bug: 11575158
Change-Id: Ia6cb71bf80608cb2ea8049192f33616e57c15801
* commit '1903bbb88d8e2e1921b0441911cb73966d3bca4a':
cherrypick from klp-docs docs: formatting for html Change-Id: I1451615c09cc003a03d7585176036c4d695408f1
As requested by API council, the following were changed
- Changed the PermissionRequest to abstract.
- Used String for resources instead of long.
- Also remove the WebView.preauthorizePermission() which we didn't think
BUG: 15432556
Change-Id: I900a98b4e0288d2bcd8faf0bbcd84970600548a5