यह उदाहरण दर्शाता है कि Kotlin में Intent.ACTION_SENDTO और Html.fromHtml() का उपयोग करके HTML फ़ॉर्मेट में ईमेल कैसे भेजें।
चरण 1 - नया प्रोजेक्ट बनाएं
Android Studio: File → New Project।
चरण 2 - activity_main.xml लेआउट
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="70dp"
android:background="#008080"
android:padding="5dp"
android:text="TutorialsPoint"
android:textColor="#fff"
android:textSize="24sp"
android:textStyle="bold" />
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:onClick="sendHtmlEmail"
android:text="HTML ईमेल भेजें" />
</RelativeLayout>
चरण 3 - MainActivity.kt में HTML ईमेल भेजें
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.text.Html
import android.view.View
import androidx.appcompat.app.AppCompatActivity
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
title = "KotlinApp"
}
fun sendHtmlEmail(view: View?) {
val recipientEmail = "recipient@example.com"
// mailto: URI के साथ SENDTO इंटेंट (केवल ईमेल ऐप्स दिखाता है)
val emailIntent = Intent(Intent.ACTION_SENDTO, Uri.fromParts("mailto", recipientEmail, null))
emailIntent.putExtra(Intent.EXTRA_SUBJECT, "HTML ईमेल विषय")
// HTML कंटेंट बनाएं
val htmlContent = """
<p><b>नमस्ते,</b></p>
<p>यह एक <b>HTML</b> फॉर्मेटेड ईमेल है।</p>
<p><i>इटैलिक टेक्स्ट</i> और <u>अंडरलाइन</u> भी समर्थित हैं।</p>
<p><a href=\"https://www.example.com\">लिंक पर क्लिक करें</a></p>
<small><p>धन्यवाद, Android टीम</p></small>
""".trimIndent()
// API 24+ के लिए Html.fromHtml(html, FROM_HTML_MODE_LEGACY) उपयोग करें
emailIntent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(htmlContent, Html.FROM_HTML_MODE_LEGACY))
// चॉइसर के साथ शुरू करें
startActivity(Intent.createChooser(emailIntent, "ईमेल भेजें..."))
}
}
चरण 4 - AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
package="com.example.htmlemail">
<application ...>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
ऐप चलाएं
ऐप चलाएं। "HTML ईमेल भेजें" बटन दबाएं। ईमेल ऐप चॉइसर खुलेगा (Gmail, Outlook, आदि)। प्राप्तकर्ता, विषय और HTML बॉडी प्री-फिल्ड होगी।
महत्वपूर्ण नोट्स:
ACTION_SENDTOके साथmailto:केवल ईमेल ऐप्स दिखाता है (बेहतर UX)Html.fromHtml()सभी HTML टैग्स का समर्थन नहीं करता (केवल बुनियादी: b, i, u, a, p, br, div, span, आदि)- CSS स्टाइलिंग समर्थित नहीं है
- अटैचमेंट के लिए
ACTION_SENDयाACTION_SEND_MULTIPLEउपयोग करें
आधुनिक API (API 24+):Html.fromHtml(html, Html.FROM_HTML_MODE_COMPACT)याFROM_HTML_MODE_LEGACYका उपयोग करें।