Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4526)

Unified Diff: chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java

Issue 2169743002: Makes WebAPK handle NOTIFICATION_PREFERENCES intents (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Merge branch 'master' into notification_settings Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java
diff --git a/chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java b/chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java
index bf6a0d6eff11ec572645b205d9c6117eff913ebf..7a7a22b29aa84e2f4369892296978901029ed478 100644
--- a/chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java
+++ b/chrome/android/webapk/shell_apk/src/org/chromium/webapk/shell_apk/WebApkUtils.java
@@ -45,14 +45,10 @@ public class WebApkUtils {
*/
public static String getHostBrowserPackageName(Context context) {
if (sHostPackage != null) return sHostPackage;
+ Bundle metaData = getMetaDataBundle(context);
String hostPackage = null;
- try {
- ApplicationInfo ai = context.getPackageManager().getApplicationInfo(
- context.getPackageName(), PackageManager.GET_META_DATA);
- Bundle bundle = ai.metaData;
- hostPackage = bundle.getString("runtimeHost");
- } catch (NameNotFoundException e) {
- e.printStackTrace();
+ if (metaData != null) {
+ hostPackage = metaData.getString("runtimeHost");
}
// Set {@link sHostPackage} to a non-null value so that the value is computed only once.
sHostPackage = hostPackage != null ? hostPackage : "";
@@ -79,4 +75,21 @@ public class WebApkUtils {
}
return -1;
}
+
+ /**
+ * Returns the meta data bundle for the application associated with
+ * passed in Context.
+ * @param context A context.
+ */
+ public static Bundle getMetaDataBundle(Context context) {
+ try {
+ PackageManager packageManager = context.getPackageManager();
+ ApplicationInfo appInfo = packageManager.getApplicationInfo(
+ context.getPackageName(), PackageManager.GET_META_DATA);
+ return appInfo.metaData;
+ } catch (NameNotFoundException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
}

Powered by Google App Engine
This is Rietveld 408576698