الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية ارسال رساله Sms عن طريق تطبيق الاندرويد لرقم موبيل

بدأه Mahmoud Kelany في 1 أكتوبر 2012 · 0 رد · 3,834 مشاهدة · في Android
مشاركة: واتساب X فيسبوك تيليجرام
#1

السلام عليكم ورحمه الله وبركاته

كيفيكم يا اخوانى اتمنى ان تكونوا بخير ان شاء الله

اليوم سوف نقوم بشرح شىء بسيط جدا وهو كيفيه ارسال رساله sms من كود الـ Android

قد تكون سهله وبسيطه ولكن ممكن ان تستخدمها فى تطبيقك

اذا كنت تريد ان تقوم بالتواصل او فى حاله سرقة موبيلك

او اى شىء كانت فكره التطبيق ان تقوم بارسال رساله الى رقم كنت مخزنه قبل كدا

الطريقه طبعا هتكون كود ضمنى لكن دعنا نقوم ببناء واجهه تقوم باخذ رقم الموبيل ونص الرساله ومن ثم تقوم بارسالها للرقم

post-217802-027705100 1349048275_thumb.p

وطبعا كلنا يعرف ان بناء واجهه layout مثل هذه سهل ولا يحتاج الى شرح

وهذا هو الكود send_sms.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:weightSum="100">
	<ScrollView 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:layout_weight="90"
	>
		<LinearLayout
			android:orientation="vertical"
			android:layout_width="fill_parent" 
			android:layout_height="wrap_content"
			>
			<TextView  
				android:layout_width="fill_parent" 
				android:layout_height="wrap_content" 
				android:text="@string/phone_number"
			/>
			<EditText 
				android:layout_width="fill_parent"
				android:layout_height="wrap_content"
				android:id="@+id/phone_number"
				android:phoneNumber="true"
			/>

			<TextView 
				android:layout_width="fill_parent"
				android:layout_height="wrap_content"
				android:text="@string/sms_body"
			/>
			<EditText 
				android:layout_width="fill_parent"
				android:inputType="textMultiLine"
				android:id="@+id/sms_body"
			android:layout_height="300dp"/>
		</LinearLayout>
	</ScrollView>
	<Button 
		android:layout_weight="10"
		android:text="@string/send" 
		android:id="@+id/send_button"
		android:layout_width="fill_parent" 
		android:layout_height="wrap_content"/>
</LinearLayout>

ثم بعد ذلك نقوم ببناء الـ Activity الذى يقوم بالتعامل مع هذا الـ layout

التطبيق سهل جدا

سوف نقوم بعمل مرجعيه للمتغيرات مثل حقل رقم الموبيل وحقل نص الرساله و زرار الارسال

وفى الحدث الخاص بزرار الارسال نقوم بفحص هل حقل الموبيل او نص الرساله فارغ ام لا

ومن ثم بعدها نقوم بارسال الرساله عن طريق الكود البسيط التالى

					SmsManager smsManager = SmsManager.getDefault();
					smsManager.sendTextMessage(phoneNumber, null, smsBody,null, null);

تقوم بالحصول على مدير الرسايل ومن ثم تقوم بوضع مكونات الرساله وهو ما يهمنا هنا هو الرقم ونص الرساله

phoneNumber , smsBody وبعد استدعاء الداله sendTextMessage وارسال لها البيانات سوف يقوم الموبيل بارسال الرساله للرقم

لكن يبقى شىء بسيط وهو طلب الاذن من الاندرويد بارسال الرساله

وهذا يكون عن طريق الـ permission الخاص بذلك وسوف نقوم بوضعه فى الـ AndroidManifest.xml

لكى تتمكن من ارسال الرسايل

<uses-permission android:name="android.permission.SEND_SMS" />

post-217802-045580000 1349048561_thumb.p

وللتأكد انه تم ارسال الرساله فهذا خصم لثمن الرساله من الموبيل ROFL.gif

post-217802-067821100 1349048601_thumb.p

الكود الخاص بالـSendSMSActivity.java

package com.jkelany.sms;

import android.app.Activity;
import android.telephony.SmsManager;
import android.view.View;
import android.os.Bundle;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class SendSMSActivity extends Activity implements View.OnClickListener {
	private EditText phoneEditText, msgEditText;
	private Button sendSmsButton;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.send_sms);
		init();
	}

	private void init() {
		phoneEditText = (EditText) findViewById(R.id.phone_number);
		msgEditText = (EditText) findViewById(R.id.sms_body);
		sendSmsButton = (Button) findViewById(R.id.send_button);
		sendSmsButton.setOnClickListener(this);
	}

	@Override
	public void onClick(View v) {
		if (v.getId() == R.id.send_button) {
			if (phoneEditText != null
					&& phoneEditText.getText().toString().trim().length() > 0) {
				if (msgEditText != null
						&& msgEditText.getText().toString().trim().length() > 0) {
					String phoneNumber = phoneEditText.getText().toString()
							.trim();
					String smsBody = msgEditText.getText().toString().trim();

					SmsManager smsManager = SmsManager.getDefault();
					smsManager.sendTextMessage(phoneNumber, null, smsBody,
							null, null);
					showToastMessage("Sending sms...");
				} else {
					showToastMessage("Missing SMS body.");
				}
			} else {
				showToastMessage("Missing phone number.");
			}
		}
	}

	private void showToastMessage(String text) {
		Toast.makeText(this, text, Toast.LENGTH_SHORT).show();
	}
}

لتحميل البروجكت

Send SMS.zip

بالتوفيق ان شاء الله

المرفقات
device-2012-10-01-013744.pngdevice-2012-10-01-013244.pngdevice-2012-10-01-013253.png
1

Software Developer
Mahmoudkelany.com


 

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…