2

可能重复:
从应用程序创建浏览器书签

我尝试使用以下代码为 android 网络浏览器创建书签。

public static final void saveBookmark(Context c, String title, String url) {
    Intent i = new Intent(Intent.ACTION_INSERT,
                  android.provider.Browser.BOOKMARKS_URI);
    i.putExtra("title", title);
    i.putExtra("url", url);
    c.startActivity(i);
}

问题是代码不直接保存书签,而是通过一个屏幕提醒用户,他们可以在其中取消或保存书签。如何在不使用“警报屏幕”询问用户的情况下创建书签?

4

1 回答 1

3

android.provider.Browser.saveBookmark(c,title,url);是执行此操作的默认方式,但如果用户启用了这些警报,它可能会显示警报。

Android 框架没有直接的 API 调用来规避这一点。但是,浏览器的书签可以使用 content uri: 的内容提供程序获得android.provider.Browser.BOOKMARKS_URI。您可以使用查询对其进行操作,包括向其中添加书签。

要完成这项工作,您需要拥有com.android.browser.permission.READ_HISTORY_BOOKMARKScom.android.browser.permission.WRITE_HISTORY_BOOKMARKS权限。

如果你不熟悉内容提供者,你可以在这里阅读他们的介绍:http: //developer.android.com/guide/topics/providers/content-provider-basics.html

于 2012-08-23T17:50:59.890 回答