OPhone搜尋API

Ophone提供了一套搜尋本機數據的API,通過這套API可以模糊查找包含指定關鍵字的信息.這些信息可能來自不同的地方,例如,聯繫人,備份,瀏覽器書籤等.搜尋結果以Cursor對象的形式返回.實際上,這套API使用在6.6節介紹的ContentProvider技術進行搜尋,代碼如下:。

Ophone提供了一套搜尋本機數據的API,通過這套API可以模糊查找包含指定關鍵字的信息.這些信息可能來自不同的地方,例如,聯繫人,備份,瀏覽器書籤等.搜尋結果以Cursor對象的形式返回.實際上,這套API使用在6.6節介紹的ContentProvider技術進行搜尋,代碼如下:

Cursor cursor = getContentResolver().query(

Uri.parse(oms.servo.search.SearchProvider.CONTENT_URI),null,word,null,null);

其中word是String類型的變數,表示搜尋關鍵字.在獲得搜尋結果(Cursor對象)後,可以使用下面的代碼輸出結果信息.

while(cursor.moveToNext())

{

textView.append("\n\nITEM" + cursor.getPosition()+"\n");

Bundle extras = new Bundle();

extras = cursor.respond(extras);

showField(extras,SearchProvider.FIELD_ID);

showField(extras,SearchProvider.FIELD_TITLE);

showField(extras,SearchProvider.FIELD_TIME);

showField(extras,SearchProvider.FIELD_MIME);

showField(extras,SearchProvider.FIELD_CONTACTS_NAME);

showField(extras,SearchProvider.FIELD_EMAIL_SENDER);

showField(extras,SearchProvider.FIELD_EMAIL_RECEIVER);

showField(extras,SearchProvider.FIELD_EMAIL_SUBJECT);

showField(extras,SearchProvider.FIELD_SMS_SENDER);

showField(extras,SearchProvider.FIELD_MMS_RECEIVER);

showField(extras,SearchProvider.FIELD_FILE_SIZE);

showField(extras,SearchProvider.FIELD_CALL_NAME);

showField(extras,SearchProvider.FIELD_CALL_DURATION);

showField(extras,SearchProvider.FIELD_CALL_TYPE);

}

其中showField方法用於顯示具體的結果信息,代碼如下:

private void showField(Bundle extras,String field)

{

String value =extras.getString(field);

if(value != null)

textView.append("\n" + field +"," +value);

}

相關詞條

相關搜尋

熱門詞條

聯絡我們