यह उदाहरण दर्शाता है कि JavaMail API का उपयोग करके Android पर ईमेल कैसे भेजें।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<टेक्स्ट व्यू एंड्रॉइड:टेक्स्ट ="प्राप्तकर्ता ईमेल" एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" /> <एडिटटेक्स्ट एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:लेआउट_हाइट ="wrap_content" android:id="@+id/editTextEmail" />
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ेंपैकेज com.app.sample;import androidx.appcompat.app.AppCompatActivity;import android.view.View;import android.widget.Button;import android.widget.EditText;import java.util.Properties;import javax. mail.PasswordAuthentication;import javax.mail.Session;import android.os.Bundle;सार्वजनिक वर्ग MainActivity AppCompatActivity लागू करता है View.OnClickListener {निजी एडिटटेक्स्ट एडिटटेक्स्टईमेल; निजी संपादन टेक्स्ट संपादित करें टेक्स्ट विषय; निजी संपादन टेक्स्ट संपादित करें टेक्स्ट मैसेज; निजी बटन बटन भेजें; @Override संरक्षित शून्य पर क्रिएट (बंडल सेव किया गया इंस्टेंसस्टेट) {super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); editTextEmail =(EditText) findViewById (R.id.editTextEmail); editTextSubject =(EditText) findViewById (R.id.editTextSubject); EditTextMessage =(EditText) findViewById (R.id.editTextMessage); बटन भेजें =(बटन) findViewById (R.id.buttonSend); buttonSend.setOnClickListener (यह); } निजी शून्य सेंडईमेल () {स्ट्रिंग ईमेल =एडिटटेक्स्टईमेल.गेटटेक्स्ट ()। टूस्ट्रिंग ()। ट्रिम (); स्ट्रिंग विषय =editTextSubject.getText ()। toString ()। ट्रिम (); स्ट्रिंग संदेश =editTextMessage.getText ()। toString ()। ट्रिम (); SendMail sm =नया SendMail (यह, ईमेल, विषय, संदेश); sm.execute (); } @Override सार्वजनिक शून्य पर क्लिक करें (देखें v) { sendEmail (); }}पूर्व>चरण 4 - निम्न कोड को src/Config.java में जोड़ें
<पूर्व>पैकेज com.app.sample;पब्लिक क्लास कॉन्फिग {सार्वजनिक स्थिर अंतिम स्ट्रिंग EMAIL ="your-gmail-username"; सार्वजनिक स्थैतिक अंतिम स्ट्रिंग पासवर्ड ="आपका-जीमेल-पासवर्ड";}
चरण 5 - निम्न कोड को src/SendMail.java में जोड़ें
<पूर्व>पैकेज com.app.sample;import android.app.ProgressDialog;import android.content.Context;import android.os.AsyncTask;import android.widget.Toast;import java.util.Properties;import javax.mail. संदेश; आयात javax.mail.MessagingException; आयात javax.mail.PasswordAuthentication; आयात javax.mail.Session; आयात javax.mail.Transport; आयात javax.mail.internet.InternetAddress; आयात javax.mail.internet.MimeMessage; सार्वजनिक वर्ग SendMail AsyncTask {निजी संदर्भ संदर्भ बढ़ाता है; निजी सत्र सत्र; निजी स्ट्रिंग ईमेल; निजी स्ट्रिंग विषय; निजी स्ट्रिंग संदेश; निजी प्रोग्रेसडिअलॉग प्रोग्रेसडिअलॉग; सार्वजनिक SendMail (संदर्भ संदर्भ, स्ट्रिंग ईमेल, स्ट्रिंग विषय, स्ट्रिंग संदेश) {this.context =संदर्भ; यह ईमेल =ईमेल; यह विषय =विषय; यह संदेश =संदेश; } @Override संरक्षित शून्य onPreExecute() {super.onPreExecute(); प्रोग्रेसडिअलॉग =प्रोग्रेसडिअलॉग.शो (संदर्भ, "संदेश भेजना", "कृपया प्रतीक्षा करें ...", झूठा, झूठा); } @Override संरक्षित शून्य onPostExecute(Void aVoid) {super.onPostExecute(aVoid); प्रोग्रेसडिअलॉग.बर्खास्तगी (); Toast.makeText (संदर्भ, "संदेश भेजा गया", Toast.LENGTH_LONG)। शो (); } @Override संरक्षित Void doInBackground(Void... params) { गुण सहारा =नए गुण (); props.put ("mail.smtp.host", "smtp.gmail.com"); प्रॉप्स.पुट ("mail.smtp.socketFactory.port", "465"); props.put ("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory"); props.put ("mail.smtp.auth", "true"); प्रॉप्स.पुट ("mail.smtp.port", "465"); सत्र =सत्र। getDefaultInstance (प्रॉप्स, नया javax.mail.Authenticator () {संरक्षित पासवर्ड प्रमाणीकरण getPasswordAuthentication () { नया पासवर्ड प्रमाणीकरण (Config.EMAIL, Config.PASSWORD) लौटाएं; }}); कोशिश करें {MimeMessage mm =नया MimeMessage (सत्र); mm.setFrom (नया इंटरनेट पता (Config.EMAIL)); mm.addRecipient(Message.RecipientType.TO, new InternetAddress(email)); mm.setSubject (विषय); mm.setText (संदेश); परिवहन। भेजें (मिमी); } कैच (मैसेजिंग एक्सेप्शन ई) { ई.प्रिंटस्टैकट्रेस (); } वापसी शून्य; }}पूर्व>चरण 6 - निम्न कोड को Manifests/AndroidManifest.xml
में जोड़ें<उपयोग-अनुमति android:name="android.permission.INTERNET"/> <एप्लिकेशन android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android :roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <गतिविधि android:name=".MainActivity"> <इरादे-फ़िल्टर> <कार्रवाई android:name=" android.intent.action.MAIN" /> <श्रेणी android:name="android.intent.category.LAUNCHER" />
आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -