我有一个使用iPhone的联系人的应用程序.使用iOS 6,第一次尝试时将提示用户输入联系人访问权限.此时,用户可以点击"允许"或"不允许".问题是当用户为应用程序提供背景,然后导航到"设置" - >"隐私" - >"联系人"以切换我的应用程序的"联系人"隐私设置.切换后,我可以在控制台上看到我的应用:
应用程序'UIKitApplication:com.myApp'异常退出,信号9:Killed:9
我在Apple的文档中找不到任何相关信息.有谁知道防止这种情况的方法?这是设计的吗?或者这是一个苹果虫?
嗨,有人可以告诉我如何从gmail,yahoo,hotmail等导入我的所有联系人..我想发送所有联系人的邀请?
我怎样才能实现这一目标?
placemark = [[MKPlacemark alloc]initWithCoordinate:storedCoordinate addressDictionary:addressDict];
Run Code Online (Sandbox Code Playgroud)
我试图创建字典用于上面的代码,但没有任何作用:(
NSDictionary *addressDict = [[NSDictionary alloc] initWithObjectsAndKeys:
location.countryCode, @"CountryCode",
location.country,@"kABPersonAddressCountryKey",
location.state, kABPersonAddressStateKey,
location.city, @"City",
location.street, kABPersonAddressStreetKey,
location.zip, kABPersonAddressZIPKey,
nil];
Run Code Online (Sandbox Code Playgroud) 我正在尝试检索所有联系人的姓名和电话号码,并在iOS中使用Swift将它们放入数组中.我做到了这一点:
func findContacts() -> [CNContact] {
marrContactsNumber.removeAllObjects()
marrContactsName.removeAllObjects()
let store = CNContactStore()
let keysToFetch = [CNContactGivenNameKey, CNContactFamilyNameKey, CNContactPhoneNumbersKey]
let fetchRequest = CNContactFetchRequest(keysToFetch: keysToFetch)
var contacts = [CNContact]()
do {
try store.enumerateContactsWithFetchRequest(fetchRequest, usingBlock: { (let contact, let stop) -> Void in
contacts.append(contact)
self.marrContactsName.addObject(contact.givenName + " " + contact.familyName)
self.marrContactsNumber.addObject(contact.phoneNumbers)
print(contact.phoneNumbers)
}
catch let error as NSError {
print(error.localizedDescription)
}
print(marrContactsName.count)
print(marrContactsNumber.count)
return contacts
}
Run Code Online (Sandbox Code Playgroud)
完成后,marrContactsName将完全按预期包含所有联系人姓名的数组.即"John Doe".但是,marrContactsNumber返回一个值数组,如
[<CNLabeledValue: 0x158a19950: identifier=F831DC7E-5896-420F-AE46-489F6C14DA6E,
label=_$!<Work>!$_, value=<CNPhoneNumber: 0x158a19640: countryCode=us, digits=6751420000>>,
<CNLabeledValue: 0x158a19a80: identifier=ECD66568-C6DD-441D-9448-BDEDDE9A68E1, …Run Code Online (Sandbox Code Playgroud) 在桌面Mac世界中,如果我单击链接到VCF文件的网页中的链接,则此文件将在通讯簿应用程序中打开.但是,在iPhone世界中,这样做会导致显示"下载失败.Safari无法下载此文件"消息.所以,我的问题是,实际上是否可以从网页上为iPhone的地址簿添加联系人?
我有原始的VCF文件和hCard微格式的数据版本,因此解决方案不必与下载原始文件相关联 - 我可以在必要时重新处理数据.唯一的要求是从Mobile Safari中查看的网页添加联系人到iPhone的地址簿.
那么,有什么想法吗?
在C#中创建循环链表的最佳方法是什么?我应该从LinkedList <T>集合中派生出来吗?我打算使用这个链接列表创建一个简单的地址簿来存储我的联系人(这将是一本糟糕的地址簿,但我不在乎因为我将是唯一一个使用它的人).我主要只想创建关键链表,以便我可以在其他项目中再次使用它.
如果您认为链接列表不是正确的方法,请告诉我哪种方式会更好.
自上次打开应用程序以来,iOS中是否有任何方式可以获取有关通讯簿更改的通知.
应用程序将地址簿存储在内部数据库中,我不希望每次激活时都执行完全同步.
提前致谢.
澄清问题的小补充:我使用ABAddressBookRegisterExternalChangeCallback观察应用程序暂停到后台时的更改,但据我所知,如果应用程序完全关闭并重新打开(例如:电话重启或从任务列表关闭后),此方法无法工作).
如何在数组中找到重复元素?我有一系列的电话号码所以在电话号码中我应该从右侧开始搜索到左侧并找到类似的6个整数.然后我应该打印出来.
我需要选择我的应用程序创建联系人的地址簿源.
在"通讯录"应用中,当我选择"<群组"时,我会选择
使用该函数ABAddressBookCopyArrayOfAllSources我获取源记录
这些名称绝不是描述性的,除了源名称或类型之外,我还想显示帐户名称,就像Contact app一样.
您是否知道如何找到来源的帐户名称,或检索所有现有帐户名称和每个帐户的来源?是否有其他想法可以获得更具描述性的条目?
所以我对这个很难过.
在Mac OS X中,可以通过内置的地址簿API轻松获取"我"卡(Mac /帐户的所有者).
有没有人找到一种方法来找出哪个联系人(如果存在)属于iPhone的所有者?
addressbook ×10
iphone ×4
objective-c ×4
ios ×3
c# ×2
swift ×2
.net ×1
arrays ×1
asp.net ×1
cocoa ×1
cocoa-touch ×1
contacts ×1
import ×1
ios5 ×1
ios6 ×1
ios8 ×1
ios9 ×1
linked-list ×1
mkannotation ×1
vcf-vcard ×1