Google Contacts APIでフリガナ取得する方法
ここ数日、Google Contacts APIのObjective-Cライブラリを触っていたのですが、取得した連絡先一覧をフリガナでソートしようとして、そのフリガナを取得する方法が見つからず悩んでいました。
ググっても見つからなかったので、元データのXMLをベタ出力したところ、
<gd:name xmlns:gd='http://schemas.google.com/g/2005'> <gd:fullName>泉新一</gd:fullName> <gd:givenName yomi='シンイチ'>新一</gd:givenName> <gd:familyName yomi='イズミ'>泉</gd:familyName> </gd:name>
こんな感じで属性「yomi」と定義されてあるのを発見・・・「yomi」って・・・
まぁ取り敢えず、ここに定義されてあるということは・・・
- (void)setYomi(NSString *)str;
- (NSString *)yomi;
GDataNameElementにありました。
これ使ってAPIでソートできたら完璧だったんですけど、Google Contacts APIは更新日でしかソート出来ない模様。
Web上のGoogle連絡先のカスタマフィールドにフリガナを登録してもiPhoneと同期できなかったのは、そもそもフリガナはカスタマフィールドでは無いからなんですね。Web上は読み取り専用で表示だけしているということか。
iPhoneとGoogle Contactsを同期して使うなら、入力は必ずiPhone側でということですね。CSVで同期するときは、Google側でフリガナも対応できるみたいなんですけど