MFMessageComposeViewController 同樣是在 MessageUI Framework 中的一個類別,而它的主要功能是用來製作 SMS 訊息的相關格式,它的使用方式如同 MFMailComposeViewController 一樣,透過一些簡單的設定,你也可以為你的應用程式加上 SMS 訊息的功能。
在使用上首先匯入 MessageUI Framework,並引用其標頭檔,Xcode 4 Framework 匯入方式可以參考 Xcode 4 新增 Framework 的方法一文。
#import <MessageUI/MessageUI.h>
接著在要使用此物件的類別上設定 <MFMessageComposeViewControllerDelegate> 代理。
接著就是實做在傳送 SMS 訊息的程式碼了。
MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
//判斷裝置是否在可傳送訊息的狀態
if([MFMessageComposeViewController canSendText]) {
//設定SMS訊息內容
controller.body = @"你好嘛?";
//設定接傳送對象的號碼
controller.recipients = [NSArray arrayWithObjects:@"0912345678",nil];
//設定代理
controller.messageComposeDelegate = self;
//顯示controller的畫面
[self presentModalViewController:controller animated:YES];
}
至於訊息在傳送之後則會觸發以下的內建函式,並且可以從此函式所帶入的參數來判斷訊息是否傳送成功,或是被使用者取消傳送。
//使用者完成操作時所呼叫的內建函式
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
switch (result) {
case MessageComposeResultSent:
//訊息傳送成功
break;
case MessageComposeResultFailed:
//訊息傳送失敗
break;
case MessageComposeResultCancelled:
//訊息被使用者取消傳送
break;
default:
break;
}
}
PS:關於 MFMailComposeViewController 的使用方式可以參考MFMailComposeViewController 的基本使用方法ㄧ文。
您好:想請問若從Server寄送一則簡訊給手機,app可否即時接收簡訊的內容帶到app中?怎麼實現?
回覆刪除你好:
刪除我沒實作過這部份,不過第三方應用程式是無法接收簡訊的,如果可以的話,現在市面上流通的通訊軟體早就把這一塊都做進去了!