इस ट्यूटोरियल में हम देखेंगे कि Swift में iOS एप्लिकेशन से टेक्स्ट मैसेज कैसे भेजें, जहां हम यूजर के फोन नंबर से मैसेज भेजेंगे। हम यूजर की सहमति के बिना सीधे ऐसा नहीं कर सकते, लेकिन हम यूजर को भेजने के लिए एक पूर्व-लिखित मैसेज प्रदर्शित कर सकते हैं जिसे यूजर बाद में संशोधित कर सकता है।
शुरुआत करते हैं
हम MFMessageComposeViewController क्लास ऑब्जेक्ट का उपयोग करके अपने एप्लिकेशन के अंदर स्टैंडर्ड मैसेज कंपोजिशन इंटरफेस प्रदर्शित करेंगे।
कंपोजिशन इंटरफेस प्रस्तुत करने से पहले, हम उन फील्ड्स को बेसिक इनिशियल मैसेज से भरेंगे जिसे हम भेजना चाहते हैं, रिसीपिएंट्स की सूची जिसे यूजर बाद में संशोधित कर सकता है।
कंपोजिशन इंटरफेस आपके मैसेज की डिलीवरी की गारंटी नहीं देता, यह केवल आपको इनिशियल मैसेज बनाने और यूजर की मंजूरी के लिए प्रस्तुत करने देता है। यूजर कंपोजिशन इंटरफेस को कैंसल कर सकता है, जिस स्थिति में मैसेज और उसकी सामग्री डिस्कार्ड हो जाती है। यदि यूजर मैसेज भेजने का विकल्प चुनता है, तो Messages ऐप मैसेज भेजने की जिम्मेदारी लेता है।
चरण 1: प्रोजेक्ट बनाएं
Xcode खोलें → New Project → Single View Application → नाम दें "MailComposer"
चरण 2: UI सेटअप
Main.storyboard खोलें और एक बटन जोड़ें, उसका नाम "Send Mail" रखें। कंस्ट्रेंट्स "Horizontally and Vertically in the container" और "width = 100 points और height = 50 points" जोड़ना न भूलें।

चरण 3: बटन एक्शन बनाएं
ViewController.swift पर जाएं और बटन का इंस्टेंस IBAction जोड़ें, नाम दें "sendMessage"
@IBAction func sendMessage(_ sender: Any) { }
चरण 4: डेलीगेट और इम्पोर्ट
MFMessageComposeViewControllerDelegate प्रोटोकॉल को अपने ViewController क्लास में जोड़ें, और स्टब मेथड जोड़ें ताकि यह उस प्रोटोकॉल का पालन करे। ViewController.swift में "MessageUI" इम्पोर्ट करें।
चरण 5: displayMsgInterface मेथड बनाएं
viewDidLoad के नीचे नया मेथड "displayMsgInterface" बनाएं और नीचे दिया गया कोड पेस्ट करें, जो MFMessageComposeViewController को प्रस्तुत करने और प्रीफिल्ड रिसीपिएंट्स और मैसेज के कॉन्फिगरेशन के लिए जिम्मेदार होगा।
func displayMsgInterface() {
let messageCompose = MFMessageComposeViewController()
messageCompose.messageComposeDelegate = self
// Configure recipients
messageCompose.recipients = ["9401234567"]
// Configure message body
messageCompose.body = "Hey! I just learned how to send message using iOS App."
// Present the ViewController modally
if MFMessageComposeViewController.canSendText() {
self.present(messageCompose, animated: true, completion: nil)
} else {
print("You cannot send messages.")
}
}
चरण 6: डेलीगेट मेथड में कोड जोड़ें
func messageComposeViewController(_ controller: MFMessageComposeViewController, didFinishWith result: MessageComposeResult) {
self.dismiss(animated: true, completion: nil)
}
चरण 7: viewDidLoad से कॉल करें
"displayMsgInterface" मेथड को "viewDidLoad" से कॉल करें।
आपका अंतिम कोड नीचे दिए गए जैसा दिखना चाहिए!

चलाएं और टेस्ट करें
इसे चलते हुए देखने के लिए आपको रियल डिवाइस पर चलाना होगा क्योंकि टेक्स्ट मैसेजिंग व्यवहार सिम्युलेटर में उपलब्ध नहीं है।
