亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

吐槽: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

宁阳县| 旬邑县| 措美县| 昔阳县| 平阳县| 齐河县| 轮台县| 浦县| 噶尔县| 嘉荫县| 玉山县| 禄劝| 固镇县| 溆浦县| 宜川县| 南投县| 乐安县| 柘城县| 万盛区| 仪陇县| 安康市| 喜德县| 清镇市| 保靖县| 亳州市| 南和县| 邯郸市| 于田县| 东阿县| 三明市| 岗巴县| 石首市| 新民市| 南华县| 丰县| 乐山市| 新密市| 铁力市| 海兴县| 福清市| 蒲江县|