拨号盘第一次能够匹配到联系人,将电话号码加了前缀后,拨打电话后,无法再匹配到该联系人的问题

[DESCRIPTION]
 

将联系人84229950存入联系人中,第一次输入84229950;然后拨号17951-84229950后挂断,再次输入84229950

[结果]第一次输入时可以匹配该联系人,拨号后再次输入界面没有匹配该联系人.


[SOLUTION]
 
 

  1: 修改ContactsProvider2.java, queryDialerSearchIncrement().

           修改前,

                 (1).  + DialerSearchLookupColumns.CALL_LOG_ID + > 0 + "AND" + ........... about L:9226

                 (2).  + DialerSearchLookupColumns.CALL_LOG_ID + > 0 + "AND" + ........... about L:9231

           修改后,

                 (1). + DialerSearchLookupColumns.CALL_LOG_ID + < -1 + "AND" + ...........

                 (2). + DialerSearchLookupColumns.CALL_LOG_ID + < -1 + "AND" + ...........

    2: 修改ContactsDatabaseHelper.java, createDialerSearchView().

            修改前,

                     + DialerSearchLookupColumns.CALL_LOG_ID +  > 0 ........ about L: 5862

            修改后,

                      + DialerSearchLookupColumns.CALL_LOG_ID +  < -1 ........

上述修改的目的:查询结果以 dialer search 表为准。

前两步已经可以解决这个问题

 

  3:同时建议也打开模糊查询选项。

 

alps/mediatek/extertal/sqlite/custom/sqlite3_android_custom.cpp中,

   before the change,

 

extern void register_dialer_search_local_functions() { #ifdef CONFIG_CMCC_SUPPORT

    create_number_match_function(0,1);

    create_name_match_function(0,2);

#endif

}

 

你可能感兴趣的:(拨号盘第一次能够匹配到联系人,将电话号码加了前缀后,拨打电话后,无法再匹配到该联系人的问题)