在Android设备上显示书签

时间:2011-06-01 05:21:09

标签: android

我正在尝试通过代码向Android浏览器添加书签。我能够在模拟器中成功完成此操作,但相同的代码无法在设备上运行。

注意:当我查询书签数据库时,URL就在那里。它只是无法在设备中显示。

这是我的代码段

ContentValues cv = new ContentValues();
cv.put(Browser.BookmarkColumns.TITLE, cursor.getString(1));
cv.put(Browser.BookmarkColumns.URL, cursor.getString(2));
cv.put(Browser.BookmarkColumns.BOOKMARK, 1);
Uri u = getContentResolver().insert(Browser.BOOKMARKS_URI,cv);

我哪里错了?

2 个答案:

答案 0 :(得分:4)

我已经测试了你的代码片段并且它有效,书签被添加到我的浏览器本机应用程序(在2.2 HTC Desire上测试)。我必须添加到您的代码中的是AndroidManifest.xml中的权限:

<uses-permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS" />

答案 1 :(得分:0)

那是因为它被保存在错误的文件夹中。要显示它需要存储在浏览器主页文件夹(文件夹ID 0)中,但默认情况下它存储在文件夹ID 99中。请参阅我的控制台输出: 正确显示:title: Ringtones bookmark:1 folder:0 没有显示:title: Google bookmark:1 folder:99

不幸的是我到目前为止还没有发现改变这个......