有沒有人管理尚未發送iOS 6用戶交互的代碼短信?iOS 6 - ChatKit私人API - 發送短信
我認爲,必須使用ChatKit私有API來執行此操作。但是,似乎Apple在iOS 6中更改了這個API。因此,類似https://stackoverflow.com/a/11028230/1884907的解決方案由於丟失/更改了類而不再適用於iOS 6。
(只需提前:是的,我們都知道,蘋果拒絕使用私有API的應用程序,它不是應用商店)
有沒有人管理尚未發送iOS 6用戶交互的代碼短信?iOS 6 - ChatKit私人API - 發送短信
我認爲,必須使用ChatKit私有API來執行此操作。但是,似乎Apple在iOS 6中更改了這個API。因此,類似https://stackoverflow.com/a/11028230/1884907的解決方案由於丟失/更改了類而不再適用於iOS 6。
(只需提前:是的,我們都知道,蘋果拒絕使用私有API的應用程序,它不是應用商店)
從另一個StackOverflow的後here:(代碼從Kaushal Bisht)
// in .m file
-(void)textClicked
{
controller = [[MFMessageComposeViewController alloc] init];
if([MFMessageComposeViewController canSendText])
{
controller.body = @"Whatever you want";
controller.recipients = [NSArray arrayWithObjects:@"", nil];
controller.messageComposeDelegate = self;
[self presentViewController:controller animated:YES completion:nil];
}
}
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"MyApp" message:@"Unknown Error"
delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
switch (result) {
case MessageComposeResultCancelled:
NSLog(@"Cancelled");
[alert show];
break;
case MessageComposeResultFailed:
[alert show];
break;
case MessageComposeResultSent:
break;
default:
break;
}
[self dismissViewControllerAnimated:YES completion:nil];
}
// in .h file
import MessageUI/MessageUI.h
雖然您不能在後臺發送短信。我希望這有幫助。
謝謝,但我擔心這會顯示消息視圖控制器。目的是在沒有用戶交互的情況下發送短信。它必須以某種方式與ChatKit API一起工作,但我想沒有人知道如何。 – 2013-02-12 08:12:05
就像我之前說過的,蘋果不會讓你在後臺發送它,因爲用戶需要知道他們發送了什麼,因爲他們將收取費用,你必須通過登錄的電子郵件應用程序發送消息或蘋果短信/ imessage應用程序。對不起,但這是爲了用戶的安全。 – Comradsky 2013-02-20 15:33:03
這關於App Store中的公共應用程序,這很好。 但我敢肯定,必須有一種使用私有API的非官方方式。例如,也可以發起和接受電話並通過私人API掛斷。當然,使用這些API的應用程序不會獲得App Store的批准,所以用戶沒有問題。 但重要的是要知道,並非所有開發的應用程序都適用於App Store中的公開發布。有些是爲了公司內部的目的,這就是爲什麼我們需要這些功能並知道如何訪問它們的原因。 – 2013-03-04 08:48:24
您是否在此找到解決方案? – newenglander 2013-07-24 09:26:07