ver samsung navegador hoy historial google cómo completo celular búsqueda android browser browser-history

android - samsung - ver historial tablet



Android lee el historial del navegador (5)

Esta publicación es un poco antigua, pero aquí hay otra solución fácil para obtener datos relacionados con los proveedores de contenido de Bookmark y Search en Android:

Utilice esta lib: https://github.com/EverythingMe/easy-content-providers

Obtener todos los marcadores:

BrowserProvider browserProvider = new BrowserProvider(context); List<Bookmark> bookmarks = browserProvider.getBookmarks().getList();

Cada marcador tiene todos los campos, por lo que puede obtener la información que necesita: título, URL, visitas, ...

Obtener todo el historial de búsqueda :

List<Search> searches = browserProvider.getSearches().getList();

Funciona con listas o cursor y hay una aplicación de muestra para ver cómo se ve y funciona.

De hecho, existe soporte para todos los proveedores de contenido de Android, como: Contactos, SMS, Llamadas, ... Documento completo con todas las opciones: https://github.com/EverythingMe/easy-content-providers/wiki/Android-providers

Espero que haya ayudado :)

Quiero leer el historial del navegador en el teléfono Android.

He hecho algunas lecturas de documentos, luego llegué a saber que podemos leer el historial del navegador por la clase android.provider.Browser. Tiene :

final static Cursor getAllVisitedUrls(ContentResolver cr)

... método que devuelve Cursor .

¿Puedo obtener ayuda para manejar Cursor, o cualquier código de ejemplo para obtener el historial del navegador?


ManageQuery ha quedado en desuso así que use getContentResolver en su lugar, use el siguiente código:

String[] proj = new String[] { Browser.BookmarkColumns.TITLE, Browser.BookmarkColumns.URL }; String sel = Browser.BookmarkColumns.BOOKMARK + " = 0"; // 0 = history, 1 = bookmark Cursor mCur = getContentResolver().query(Browser.BOOKMARKS_URI, proj, sel, null, null); mCur.moveToFirst(); @SuppressWarnings("unused") String title = ""; @SuppressWarnings("unused") String url = ""; if (mCur.moveToFirst() && mCur.getCount() > 0) { boolean cont = true; while (mCur.isAfterLast() == false && cont) { title = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.TITLE)); url = mCur.getString(mCur.getColumnIndex(Browser.BookmarkColumns.URL)); // Do something with title and url mCur.moveToNext(); } }

También agregue permisos usando

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


Realmente no es una respuesta, pero puedo decirte lo que hice.

Primero clono el repositorio del navegador y trato de reproducir cómo obtienen el historial. Y comencé a obtener:

Denegación de permiso: leyendo com.android.browser.BrowserProvider

Entonces agregué:

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

Pero todavía me está dando el mismo error. Lo busqué en google y encontré esto Accediendo a los datos con los cursores de Android .

Espero eso ayude.


Para Lollipop o antes

Puedo obtener el historial usando el siguiente código:

Cursor mCur = activity.managedQuery(Browser.BOOKMARKS_URI, Browser.HISTORY_PROJECTION, null, null, null); if (mCur.moveToFirst()) { while (mCur.isAfterLast() == false) { Log.v("titleIdx", mCur .getString(Browser.HISTORY_PROJECTION_TITLE_INDEX)); Log.v("urlIdx", mCur .getString(Browser.HISTORY_PROJECTION_URL_INDEX)); mCur.moveToNext(); } }


public ArrayList<HistoryEntry> getBrowserHistory() { String title = ""; String url = ""; ArrayList<HistoryEntry> list = new ArrayList<HistoryEntry>(); String[] proj = new String[] { Browser.BookmarkColumns.TITLE, Browser.BookmarkColumns.URL }; String sel = Browser.BookmarkColumns.BOOKMARK + " = 0"; // 0 = history, // 1 = bookmark Cursor mCur = getContentResolver().query(Browser.BOOKMARKS_URI, proj, sel, null, null); mCur.moveToFirst(); if (mCur.moveToFirst() && mCur.getCount() > 0) { boolean cont = true; while (mCur.isAfterLast() == false && cont) { HistoryEntry entry = new HistoryEntry(); title = mCur.getString(mCur .getColumnIndex(Browser.BookmarkColumns.TITLE)); url = mCur.getString(mCur .getColumnIndex(Browser.BookmarkColumns.URL)); // Do something with title and url entry.setTitle(title); entry.setUrl(url); list.add(entry ); Log.d("TAG", "title " + title); mCur.moveToNext(); } } mCur.close(); return list; }