Fixing system browser for bookmarks/history/saved pages on Android M
The authorities com.android.browser and browser are registered with
empty implementation in Android M which results in browser not
getting the content resolver notification for bookmarks and history.
Adding a new authority which will be used by the browser on both
android M and L device.
Change-Id: I65507e335ae4c8cefb4fc4d42d01a3cdab99a7fd
diff --git a/AndroidManifest.xml.jinja2 b/AndroidManifest.xml.jinja2
index cc4c043..f0b8595 100644
--- a/AndroidManifest.xml.jinja2
+++ b/AndroidManifest.xml.jinja2
@@ -64,7 +64,7 @@
android:required="false" />
<provider android:name="com.android.browser.provider.BrowserProvider2"
- android:authorities="{{ app_package_name }};{{apk_authorities}}"
+ android:authorities="{{app_package_name}};{{apk_authorities}};{{app_authorities}}"
android:multiprocess="false"
android:exported="true"
android:readPermission="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
diff --git a/channels/beta/branding/BRANDING b/channels/beta/branding/BRANDING
index a6c8e2d..05fad7a 100644
--- a/channels/beta/branding/BRANDING
+++ b/channels/beta/branding/BRANDING
@@ -8,3 +8,4 @@
PACKAGE_NAME=org.codeaurora.swe.browser.beta
APK_LABEL=@string/application_name
APK_AUTHORITIES=swe.browser.beta
+APP_AUTHORITIES=local.swe.browser.beta
diff --git a/channels/dev/branding/BRANDING b/channels/dev/branding/BRANDING
index 4396f93..f0713ae 100644
--- a/channels/dev/branding/BRANDING
+++ b/channels/dev/branding/BRANDING
@@ -8,3 +8,4 @@
PACKAGE_NAME=org.codeaurora.swe.browser.dev
APK_LABEL=@string/application_name
APK_AUTHORITIES=swe.browser.dev
+APP_AUTHORITIES=local.swe.browser.dev
diff --git a/channels/release/branding/BRANDING b/channels/release/branding/BRANDING
index eeda1c7..6e409a0 100644
--- a/channels/release/branding/BRANDING
+++ b/channels/release/branding/BRANDING
@@ -8,3 +8,4 @@
PACKAGE_NAME=org.codeaurora.swe.browser
APK_LABEL=@string/application_name
APK_AUTHORITIES=swe.browser
+APP_AUTHORITIES=local.swe.browser
diff --git a/channels/system/branding/BRANDING b/channels/system/branding/BRANDING
index dc94e02..ca5e6a1 100644
--- a/channels/system/branding/BRANDING
+++ b/channels/system/branding/BRANDING
@@ -8,3 +8,4 @@
PACKAGE_NAME=org.codeaurora.swe.browser
APK_LABEL=@string/application_name
APK_AUTHORITIES=browser
+APP_AUTHORITIES=local.browser
diff --git a/src/com/android/browser/platformsupport/Browser.java b/src/com/android/browser/platformsupport/Browser.java
index a6128c4..91a3143 100644
--- a/src/com/android/browser/platformsupport/Browser.java
+++ b/src/com/android/browser/platformsupport/Browser.java
@@ -43,7 +43,8 @@
* {@link android.Manifest.permission#READ_HISTORY_BOOKMARKS} permission and writing to it
* requires the {@link android.Manifest.permission#WRITE_HISTORY_BOOKMARKS} permission.
*/
- public static final Uri BOOKMARKS_URI = Uri.parse("content://browser/bookmarks");
+ public static final Uri BOOKMARKS_URI = Uri.parse(
+ "content://" + BrowserContract.AUTHORITY + "/bookmarks");
/**
* The name of extra data when starting Browser with ACTION_VIEW or
@@ -124,7 +125,8 @@
* {@link android.Manifest.permission#READ_HISTORY_BOOKMARKS} permission and writing to it
* requires the {@link android.Manifest.permission#WRITE_HISTORY_BOOKMARKS} permission.
*/
- public static final Uri SEARCHES_URI = Uri.parse("content://browser/searches");
+ public static final Uri SEARCHES_URI = Uri.parse(
+ "content://" + BrowserContract.AUTHORITY + "/searches");
/**
* A projection of {@link #SEARCHES_URI} that contains {@link SearchColumns#_ID},
diff --git a/template/com/android/browser/BrowserConfig.java.template b/template/com/android/browser/BrowserConfig.java.template
index 36273de..7aec006 100644
--- a/template/com/android/browser/BrowserConfig.java.template
+++ b/template/com/android/browser/BrowserConfig.java.template
@@ -36,7 +36,7 @@
public class BrowserConfig extends BrowserConfigBase {
//Authority string used by different providers
- public final static String AUTHORITY = "@PACKAGE_NAME@";
+ public final static String AUTHORITY = "@APP_AUTHORITIES@";
private static BrowserConfig sBrowserConfig;