Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java |
| index 673ab870562b7d53cee00403ebcd22d1c9ce37ab..9febb131a578a98595d449175eb599b3829471a3 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java |
| @@ -12,6 +12,7 @@ import org.chromium.base.annotations.CalledByNative; |
| import org.chromium.chrome.browser.AppHooks; |
| import org.chromium.chrome.browser.banners.InstallerDelegate; |
| import org.chromium.chrome.browser.metrics.WebApkUma; |
| +import org.chromium.webapk.lib.common.WebApkConstants; |
| /** |
| * Java counterpart to webapk_installer.h |
| @@ -51,8 +52,8 @@ public class WebApkInstaller { |
| * @param url The start URL of the WebAPK to install. |
| */ |
| @CalledByNative |
| - private void installWebApkAsync( |
| - String packageName, int version, String title, String token, String url) { |
| + private void installWebApkAsync(final String packageName, int version, String title, |
| + String token, String url, final int source) { |
| // Check whether the WebAPK package is already installed. The WebAPK may have been installed |
| // by another Chrome version (e.g. Chrome Dev). We have to do this check because the Play |
| // install API fails silently if the package is already installed. |
| @@ -72,6 +73,18 @@ public class WebApkInstaller { |
| @Override |
| public void onResult(Integer result) { |
| WebApkInstaller.this.notify(result); |
| + if (result == WebApkInstallResult.FAILURE) return; |
| + |
| + // Stores the source info of WebAPK in WebappDataStorage. |
| + WebappRegistry.getInstance().register( |
|
pkotwicz
2017/05/09 18:37:36
Nit: It might be worth adding a new method WebappR
|
| + WebApkConstants.WEBAPK_ID_PREFIX + packageName, |
| + new WebappRegistry.FetchWebappDataStorageCallback() { |
| + @Override |
| + public void onWebappDataStorageRetrieved(WebappDataStorage storage) { |
| + storage.updateSource(source); |
| + storage.updateTimeOfLastCheckForUpdatedWebManifest(); |
| + } |
| + }); |
| } |
| }; |
| mInstallDelegate.installAsync(packageName, version, title, token, url, callback); |