这可能是一个延伸,但我想知道是否可以为已经为Android设备创建的应用程序添加功能。具体来说,每当用户尝试在互联网浏览器中进行新搜索时,我都希望发送广播。可能有另一种方法只在用户搜索浏览器时才采取行动,但我认为这将是最简单的方法。如果这不可能(或完全是错误的方式),请告诉我。任何帮助表示赞赏。
答案 0 :(得分:0)
您可以查询Browser
提供商并从中获取搜索数据。以下是一些基本代码:
Cursor cursor = this.context.getContentResolver().query(Browser.SEARCHES_URI, null, null, null, null);
if (cursor.moveToFirst()) {
while (!cursor.isAfterLast()) {
final int indexDate = cursor.getColumnIndex(Browser.SearchColumns.DATE);
final int indexTerm = cursor.getColumnIndex(Browser.SearchColumns.SEARCH);
String date = cursor.getString(indexDate);
String term = cursor.getString(indexTerm);
cursor.moveToNext();
}
}
cursor.close();
请注意,使用Thread
框架在单独的Loader
上运行查询会更好。
我不认为在执行新搜索时会发送广播。