2012-01-19 17 views
6

Özel bir çerçeve kullanarak doğrudan bir iMessage göndermek mümkün olup olmadığını bilen var mı?Özel çerçeveler kullanarak iMessage'ı programlı olarak gönderin

CoreTelephony'dan CTMessageCenter kullanmayı denedim ancak telefonumun iMessages gönderebilmesine rağmen bir SMS gönderirim. olmayan bir jailbreak iPhone sayesinde

+0

Eklenen jailbreak etiketi, buraya sığacak gibi görünüyor. –

cevap

2

Bunu test etmedim hiçbir erişim, ancak at the code posted here bak. Eğer httpResponseForMethod:URI: bakarsanız, sen o/o bir mesaj gönderir nerede olduğunu görmek (iOS 5 desteklemek için kod olarak görünüyor veya iOS 4): Kod Normal SMS kullanan

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); 

} 

ancak şu seçenekleri görebilirsiniz kodu yorumladı:

//CKMadridService *madridService = [CKMadridService sharedMadridService]; 

"Madrid" hizmeti muhtemelen iMessages'ı gönderebilecek olan şeydir. See the private header here.

Hem SMS hem de iMessage özel API'leri, ChatKit.framework'da bulunur.

+0

bu sadece – iosMentalist

+0

@Enkidu hapishanesinde çalışmaktadır, eğer soru etiketlerine bakarsanız, bunun bir jailbreak sorusu olduğunu göreceksiniz. – Nate

+0

Bilgilendirdiğimi sormuyorum. Jailbreak etiketini ekledim :) – iosMentalist

-4

orada kesinlikle iMessage CoreTelephony API

+0

ama jailbroken telefondan ne haber? –

+0

Üzgünüz, bunun için Google'a sahip olacaksınız. Hapishane telefonlarıyla hiç tecrübem yok. – aldridmc

İlgili konular