如何通过代码更改Android Browser应用程序的主页?

时间:2012-08-14 07:40:03

标签: android browser sharedpreferences

我到处寻找,包括这篇文章: How to change the default Android browser's homepage within an app?

但我还没有找到更改浏览器应用主页的方法。

我确信它可以完成,因为我看到了应用程序。

在查看BrowserSettings类的android源代码后,我尝试用以下方法覆盖浏览器应用程序的设置:

try {
    Context browserContext = createPackageContext("com.android.browser", Context.CONTEXT_IGNORE_SECURITY);
SharedPreferences sp = browserContext.getSharedPreferences("com.android.browser_preferences", Context.MODE_WORLD_WRITEABLE);

    Editor edidor = sp.edit();
    edidor.putString("homepage", "http://www.newhomepage.com");
    edidor.commit();

} catch (NameNotFoundException e) {
    e.printStackTrace();
}

但是在调用getSharedPreferences()时收到了警告:

  

未经许可,尝试阅读首选项文件/data/data/com.android.browser/shared_prefs/com.android.browser_preferences.xml

调用commit()时出现此错误:

  

无法将文件/data/data/com.android.browser/shared_prefs/com.android.browser_preferences.xml重命名为备份文件/data/data/com.android.browser/shared_prefs/com.android.browser_preferences。 xml.bak

但我会请求权限:<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" /> <uses-permission android:name="com.android.launcher.permission.WRITE_SETTINGS" />

有人能想出办法让这项工作成功吗?或者采用不同的方法?

0 个答案:

没有答案