91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

吐槽:iOS要獲得聯系人所屬分組好麻煩

發布時間:2020-07-03 02:54:48 來源:網絡 閱讀:718 作者:kensou503 欄目:移動開發

      最近接觸iOS的AddressBook.framework教多,覺得關于聯系人這塊的API,如果只是讀取或者簡單的創建,他提供的api還是能滿足需要的。但是,如果你需要做一個類似通訊錄同步的,那么他的API用起來就稍稍麻煩一點。

      在iOS6以及更低的版本,無法根據一個聯系人的ABRecordRef獲得他所屬于的分組ABGroupRef,Mac上有提供該API,但iOS上目前暫時沒有。所以,如果要獲取一個聯系人的分組,你必須遍歷整個通訊錄才能得到該聯系人所屬的分組列表。故,如果你有對于分組處理的大量需求,建立一個某種程度上的分組緩存基本上是免不了的了。如果你還需要去增刪改分組,我想,使用起來麻煩是少不了的。

      其次,在新增聯系人的時候,如果你想設置他的分組,調用相應API的時候,請注意查看API說明文檔,其中有不少要求你操作之前必須先進行相應的保存操作。舉個例子:

      我有一個聯系人,分組為A,而A在設備上原來不存在。那么我們的理所當然的邏輯就是:

      創建聯系人,創建分組A,然后將聯系人添加到分組A中,最后保存通訊錄的修改。

      實際上,當你在將聯系人添加到分組A中之前,你需要先保存通訊錄的修改,將聯系人刷到數據庫之后,你才能成功添加分組!類似的API有很多,你只有查看文檔才能知道哪些API調用之前需要保存一下數據庫。而我相信,在一般情況下,一個iOS程序員只會去查看頭文件里頭的注釋,而不是API文檔;而ABGroup的頭文件里頭完全沒有提到這些事情。只有在我納悶為啥一直添加分組不成功的時候,走投無路抱著一絲希望去看文檔的時候才發現這件事情。

      本來程序員查看文檔也是完全正常的事情,問題在于其他的API在頭文件中均有對API做出一定程度的說明,而這些明明有坑的API卻完全不說明,我只好吐槽了。


      最后友情提示,使用ABAddressBook的API時,請詳細翻閱文檔,而不是僅查看頭文件。因為ABAddressBook.h頭文件中的友好的說明和注釋,會讓你在跳到其他幾個頭文件的坑的時候死得更慘。

     

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

噶尔县| 天峨县| 屏东县| 上饶县| 盐亭县| 唐海县| 宝坻区| 科技| 尼勒克县| 呈贡县| 尉氏县| 木里| 光山县| 五台县| 类乌齐县| 晋江市| 蓝田县| 巢湖市| 大方县| 磐安县| 德江县| 玉门市| 平乡县| 新乡市| 平邑县| 申扎县| 乃东县| 清涧县| 乐都县| 旬阳县| 华蓥市| 邛崃市| 沂水县| 九台市| 大名县| 资讯| 平远县| 西乌珠穆沁旗| 定兴县| 临高县| 利辛县|