Gen*_*ich 21 square abaddressbook ios
Square的新名片盒iOS应用程序具有"创建帐户"功能.点击它,它会显示一个表格PREPOPULATED与用户在地址簿中的条目.
这怎么可能?谁知道?我认为这是不可能的,以这种方式获取用户的信息.这不是iOS 5.0的东西,afaict.
Nik*_*rns 56
我能想到的唯一解决方案是使用设备名称,然后在地址簿中搜索匹配项.这假设有人会使用特定的命名约定.例如,我使用'Nik的iPhone'作为我的设备名称.我也是唯一的Nik在我的地址簿,所以我的方案是很好的作品之前使用文本的作为所有者的名称.
它利用了Erica Sadun,ABContactHelper为ABAddressBook提供的非常方便的包装器.我已经离开了枚举代码,而不是在0处使用数组索引,因为可能会返回少量匹配,因此您可以展开以向用户提供选择"他们的"详细信息的选项.虽然不完全匹配方形案例解决方案效果很好.恕我直言.
NSString *firstname;
NSString *lastname;
NSString *ownerName = [[UIDevice currentDevice] name];
NSRange t = [ownerName rangeOfString:@"'s"];
if (t.location != NSNotFound) {
ownerName = [ownerName substringToIndex:t.location];
}
NSArray *matches = [ABContactsHelper contactsMatchingName:ownerName];
if(matches.count == 1){
for (ABContact *contact in matches){
firstname = [contact firstname];
lastname = [contact lastname];
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15305 次 |
最近记录: |