بسم الله الرحمن الرحيم
تدوينة سهلة وخفيفة, في كيفية برمجة أو صنع اكتفتي خاص لنموذج بريد إلكتروني من أجل ارسال رسالة, ويهتم بعض التطبيقات التابعة لشركة أو مؤسسة إلخ.
فكرة التطبيق سهلة جداً , وأعتقد أن الجميع أصبح يستطيع قرائته برمجياً إذا تابع معنا الدروس السابقة, والفكرة هي مثل مشاركة النصوص, ولكن هنا نجعلك انتا تكتب النصوص التي تريد مشاركتها, أي تكتب النصوص والتطبيق برمجياً يرسلها إلى ( التطبيقات بداخل الجوال التي تدعم فتح بيانات من نوع email .
في البداية قم بتصميم النموذج الذي يناسبك لإرسال إيميل, ما يهمنا هو فقط العناصر التي سوف نستخدمها تعطيها معرفات id خاصة بها من أجل ان نتعامل معها برمجياً .
وما سوف نحتاجه هو عناصر من نوع (EditText) واحد للمستلم وآخر لعنوان الرسالة وآخر للرسالة نفسها. وبالتأكيد سوف نحتاج إلى زر ليقوم بإرسالها.
وهذا نموذج بسيط يمكنك استخدامه :
main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <EditText android:id="@+id/editTextTo" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0.9" android:ems="10" android:inputType="textEmailAddress" > <requestFocus /> </EditText> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0.1" android:text="إلى :" android:textAppearance="?android:attr/textAppearanceLarge" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" > <EditText android:id="@+id/editTextSubject" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0.9" android:ems="10" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="0.1" android:text="العنوان :" android:textAppearance="?android:attr/textAppearanceLarge" /> </LinearLayout> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="right" android:text="الرسالة :" android:textAppearance="?android:attr/textAppearanceLarge" /> <EditText android:id="@+id/editTextMessage" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="top" android:inputType="textMultiLine" android:lines="5" /> <LinearLayout android:layout_width="match_parent" android:layout_height="0dip" android:layout_weight="1" android:gravity="center|bottom" android:orientation="vertical" > <Button android:id="@+id/buttonSend" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="ارسال" /> </LinearLayout> </LinearLayout>
ما سوف نتعامل معه كما ذكرنا سابقاً :
ثلاث عناصر من نوع EditText وعنصر من نوع Button.
ووضعنا لها المعرفات التالية :
اعتقد واضحة جداً, والآن نذهب برمجياً ونعرفها ونربطها بـ main.xml وبعدها نعطي أوامر للزر أن يأخذ النصوص التي يضعها المستخدم بداخل EditText ليشاركها مع أية تطبيق في الجوال يدعم استقبال انتنت من نوع ايميل.
حاول قدر الإمكان وضع سطور التعليقات لكي تفهم الأكواد ولكنه جداً سهل وقد تكرر معنا في دروس سابقة.
Main.java
package com.andrody.test; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class Main extends Activity { Button buttonSend; EditText textTo; EditText textSubject; EditText textMessage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); buttonSend = (Button) findViewById(R.id.buttonSend); textTo = (EditText) findViewById(R.id.editTextTo); textSubject = (EditText) findViewById(R.id.editTextSubject); textMessage = (EditText) findViewById(R.id.editTextMessage); buttonSend.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // الاوامر بداخل اون كليك هي ما يفعلها الزر عند النقر عليه // عرفنا متغيرات سترنج لاحتوائها على النصوص التي يكتبها المستخدم String to = textTo.getText().toString(); String subject = textSubject.getText().toString(); String message = textMessage.getText().toString(); // انتنت جديد لارسال السترنج الذي عرفناه في الاعلى Intent email = new Intent(Intent.ACTION_SEND); // سترنج المستلم وتستطيع وضع اكثر من خانة لايميل المستلم إذا اردت email.putExtra(Intent.EXTRA_EMAIL, new String[]{ to}); email.putExtra(Intent.EXTRA_SUBJECT, subject); email.putExtra(Intent.EXTRA_TEXT, message); //هذا الأمر تحتاجه فقط مع التعامل مع تطبيقات الايميل .. البريد الإلكتروني وهي اساسية لنظام اندرويد email.setType("message/rfc822"); // وهذا الأمر الذي يفعله الزر .. قم بإرسال الانتنت الذي صنعناه قبل قليل startActivity(Intent.createChooser(email, "اختر التطبيق الذي تريد ارسال الرسالة عن طريقه :")); } }); } }
معاينة للدرس :
نتمنى نشر الدروس لأكبر من الذين يستفيدون من هذا المجال .. وشكراً لكم جميعاً 🙂
انتظرونا بكل جديد ومفيد وحصري .. والسلام عليكم ~