国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android編程中號碼匹配位數修改的方法

2020-04-11 11:18:53
字體:
來源:轉載
供稿:網友

本文實例講述了Android編程中號碼匹配位數修改的方法。分享給大家供大家參考,具體如下:

Android2.1上默認的號碼匹配位數是7位,也就是說從右向左算起,如果兩個號碼有7位是匹配的,那么就認為是相同的號碼,如+86 1234567和01234567是相同的號碼;所以判斷兩個號碼是否匹配,簡單的用”==”是不行的。

安卓在Sqlite層新增了函數phone_numbers_equal用于號碼匹配的判斷,這個函數是數據庫級的,對應的SQL語句是PHONE_NUMBERS_EQUAL,android將該函數以2個參數和3個參數的形式注冊到sqlite數據庫里,2個參數的情況無非就是號碼A和號碼B,3個參數則多了一個bool變量,用來指示是否使用嚴格匹配,這個嚴格匹配是專門給泰國用的,看來泰國的號碼規則比較特別,而在我們國家,這個變量一般情況下都是0了。

進入正題,修改android的號碼匹配位數,其實很簡單,修改OldPhoneNumberUtils.cpp文件中的最小匹配位數為想要的數字即可,該數字在函數phone_number_compare_loose函數中使用,這個函數其實就是號碼匹配的真正函數,文件位置:external/sqlite/android

static int MIN_MATCH = 7; //修改成你想要的數字

在framwork層還有個一樣的java函數實現,compareLoosely(A,B),framewoeks/base/telephony/java/android/telephony/PhoneNumberUtils.java,其中使用到的MIN_MATCH同樣需要修改。

【注】:2.1上 phone_number_compare_loose 和 compareLoosely函數的實現里面少了幾句代碼,算是BUG吧,會影響英文狀態下6位長度的號碼的匹配

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 银川市| 花莲市| 历史| 泾源县| 独山县| 枣庄市| 灵璧县| 旬邑县| 饶阳县| 竹溪县| 互助| 手游| 区。| 安陆市| 奉化市| 当雄县| 迭部县| 东乌| 虞城县| 宝应县| 女性| 苍溪县| 三门峡市| 从化市| 天台县| 汝城县| 扶风县| 桃园县| 上思县| 沐川县| 晋宁县| 万宁市| 堆龙德庆县| 伽师县| 门源| 望谟县| 丽水市| 临桂县| 泸水县| 赤城县| 望江县|