我在Xcode 6.0.1上创建了一个cordova 2.8.0 iOS项目
该项目在iOS 8的iPhone 6模拟器上运行
我正在使用的插件是https://github.com/hazemhagrass/ContactPicker,它在Android上运行良好(联系人覆盖图打开,当用户选择联系人时,控件将返回所选联系人的姓名,电话号码,电子邮件等)
然而在iOS中我遇到了一些问题。
我在ContactPicker.m中收到的警告显示在快照
中
现在联系人覆盖正常。
但是当我选择联系人时,不会返回所选联系人详细信息。我只看到所选联系人的详细信息页面和控件没有返回到Phonegap应用程序,就像在Android上一样
ContactPicker.m的代码 https://github.com/hazemhagrass/ContactPicker/blob/master/src/ios/ContactPicker.m
ContactPicker.h的代码 https://github.com/hazemhagrass/ContactPicker/blob/master/src/ios/ContactPicker.h
感谢您的帮助
更多的见解,我不是一个客观的C人,但通过调试我发现“chooseContact"随着覆盖弹出,调用ContactPicker.m中的方法,之后用户选择联系人时,不会调用ContactPicker.m中的其他方法。但是一旦我点击取消按钮“peoplePickerNavigationControllerDidCancel"方法被调用,它返回到没有任何contactInfo的Phonegap应用程序。
答案 0 :(得分:1)
问题已解决
只需在ContactPicker.m中包含以下代码
即可- (void)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker didSelectPerson:(ABRecordRef)person{
[self peoplePickerNavigationController:peoplePicker shouldContinueAfterSelectingPerson:person];
}
来源: