我想集成以下功能:
我正在传递一个用户的联系电话。如果该联系号码已经存在,当我按下我的应用程序中的WhatsApp按钮时,直接打开该用户的聊天屏幕。
如果地址簿中不存在该联系人,则首先将此联系人存储在地址簿中,然后在WhatsApp中打开该联系人的聊天屏幕(通过刷新的联系人,我将获得该人的姓名在WhatsApp聊天屏幕上。)
我完成了以下任务:
如果联系人不存在,则首先将其存储在地址簿中,然后转到WhatsApp。如果我第二次再次按下WhatsApp按钮,则会检查该联系人是否存在。如果已经保存,则获取其记录标识符并通过WhatsApp URL方案传递。
主要问题是它只是转移到WhatsApp的联系人列表,但没有打开用户的特定聊天屏幕。
注意:这个功能在Android中完美运行,所以我希望它也可以集成到iOS / Swift应用程序中。
答案 0 :(得分:0)
答案 1 :(得分:0)
只需使用您的whatsapp url方案附加ABID,并将其称为有效。
ABID 代表地址簿记录ID,下面的代码用于获取AB记录ID。它对URL本身中的分隔符的使用很敏感。
要向特定用户发送备注,请使用此 - urlstring格式: whatsapp:// send?abid = 12& text = Hello%20World - 请注意使用&标记第二个参数。
- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person
{
ARecordID = (ABRecordID)ABRecordGetRecordID(person);
....
whatsapp_string = [NSString stringWithFormat:@"whatsapp://send?abid=%d&text=%@;",ARecordID, "hello"];
....
}