tôi đã không kiểm tra này, nhưng nhìn at the code posted here. Nếu bạn nhìn vào httpResponseForMethod:URI:
, bạn sẽ thấy nơi ông/bà gửi một thông điệp (dường như được hardcode để hỗ trợ iOS 5 hoặc iOS 4):
CKSMSService *smsService = [CKSMSService sharedSMSService];
//id ct = CTTelephonyCenterGetDefault();
CKConversationList *conversationList = nil;
NSString *value =[[UIDevice currentDevice] systemVersion];
if([value hasPrefix:@"5"])
{
//CKMadridService *madridService = [CKMadridService sharedMadridService];
//NSString *foo = [madridService _temporaryFileURLforGUID:@"A5F70DCD-F145-4D02-B308-B7EA6C248BB2"];
NSLog(@"Sending SMS");
conversationList = [CKConversationList sharedConversationList];
CKSMSEntity *ckEntity = [smsService copyEntityForAddressString:Phone];
CKConversation *conversation = [conversationList conversationForRecipients:[NSArray arrayWithObject:ckEntity] create:TRUE service:smsService];
NSString *groupID = [conversation groupID];
CKSMSMessage *ckMsg = [smsService _newSMSMessageWithText:msg forConversation:conversation];
[smsService sendMessage:ckMsg];
[ckMsg release];
} else {
//4.0
id ct = CTTelephonyCenterGetDefault();
void* address = CKSMSAddressCreateWithString(pid);
int group = [grp intValue];
if (group <= 0) {
group = CKSMSRecordCreateGroupWithMembers([NSArray arrayWithObject:address]);
}
void *msg_to_send = _CKSMSRecordCreateWithGroupAndAssociation(NULL, address, msg, group, 0);
CKSMSRecordSend(ct, msg_to_send);
}
Mã này sử dụng tin nhắn SMS bình thường, nhưng bạn sẽ nhìn thấy sau đã nhận xét mã:
//CKMadridService *madridService = [CKMadridService sharedMadridService];
Dịch vụ "Madrid" có thể là những gì có thể gửi iMessages. See the private header here.
Cả API riêng tư và iMessage đều nằm trong số ChatKit.framework.
Đã thêm thẻ bẻ khóa, dường như vừa vặn ở đây. –