آموزش تماس های تلفنی در برنامه نویسی اندروید

رتبه: 5 ار 1 رای SSSSS
برنامه نویسی اندروید
نویسنده: میلاد حیدری زمان مطالعه 4 دقیقه
Banner Image

اندروید؛ اپلیکیشن های داخلی برای تماس های تلفنی فراهم آورده است؛ در برخی از موقعیت ها، ممکن است نیاز داشته باشیم که از طریق اپلیکیشن مان؛ یک تماس تلفنی ایجاد کنیم. این امر می تواند به سادگی با استفاده از اینتنت های ضمنی با actionهای مناسب؛ انجام شود. همچنین؛ می توانیم از کلاس های PhoneStateListener و TelephonyManager استفاده کنیم تا تغییرات در برخی از شرایط تلفنی در دستگاه را نظارت نماییم.

این فصل، تمام مراحل ساده ای را فهرست می کند که باید برای ایجاد یک اپلیکیشن که بتواند تماس تلفنی ایجاد کند؛ اتخاذ شود. شما با فراخوانی عملکرد تماس تلفنی داخلی اندروید؛ می توانید از اینتنت اندروید برای ایجاد یک تماس تلفنی استفاده کنید.

عملیات-شیء اینتنت برای ایجاد یک تماس تلفنی

شما از ACTION_CALL برای تریگر کردن عملکرد تماس تلفنی داخلی موجود در دستگاه اندروید استفاده می کنید. سینتکس ساده ی زیر؛ برای ایجاد یک اینتنت با ACTION_CALL به کار می رود:

Intent phoneIntent = new Intent(Intent.ACTION_CALL);

شما می توانید از ACTION_DIAL به جای ACTION_CALL استفاده کنید؛ در این صورت شما گزینه ای خواهید داشت که می توانید شماره تلفن با کد نویسی سخت را پیش از برقراری تماس ، به جای آن که یک تماس مستقیم ایجاد نمایید؛ اصلاح کنید.

نوع/داده اینتنت برای ایجاد یک تماس تلفنی

برای این که یک تماس تلفنی با شماره تلفن داده شده ی ۹۱-۰۰۰-۰۰۰-۰۰۰۰ برقرار کنید؛ باید مانند زیر؛ tel را با استفاده از متد setData() به صورت URI مشخص کنید.

phoneIntent.setData(Uri.parse(“tel:91-000-000-0000”));

 

نکته جالب توجه آن است که برای ایجاد یک تماس تلفنی؛ شما نیازی ندارید که هیچ داده یا نوع داده ی اضافه ای را مشخص نمایید.

مثال

مثال زیر به شما به صورت عملی نشان می دهد که چگونه می توانید از اینتنت اندروید برای ایجاد یک تماس تلفنی با شماره تلفن داده شده؛ استفاده کنید.

برای آزمایش کردن این مثال، شما به یک دستگاه تلفن واقعی نیاز دارید که به آخرین نسخه از سیستم عامل اندروید مجهز شده باشد؛ در غیر این صورت؛ شما احتمالاً با شبیه ساز درگیر می شوید زیرا ممکن است به درستی کار نکند.

مرحله توضیح
۱ شما برای ایجاد یک اپلیکیشن اندروید از استودیو اندرویدIDE استفاده می کنید و آن را تحت بسته ی com.example.saira_000.myapplication به عنوان MyApplication نام گذاری کنید.
۲ اصلاح فایل src/mainActivity.java و اضافه کردن کد مورد نیاز برای مراقبت از برقراری تماس
۳ اصلاح فایل XML صفحه بندی res/layout/activity_main.xml هر مؤلفه GUI مورد نیاز را اضافه می کند. من فقط یک دکمه ساده را برای تماس با شماره ۹۱-۰۰۰-۰۰۰-۰۰۰۰ اضافه کرده ام.
۴ نیازی به تعریف ثابت های رشته ای پیشفرض در res/values/strings.xml نیست. استودیو اندروید از ثابت های پیشفرض مراقبت می کند .
۵ اصلاح AndroidManifest.xml به صورتی که در زیر نشان داده شده است.
۶ اجرای اپلیکیشن برای راه اندازی شبیه ساز اندروید و تأیید این امر که نتیجه تغییرات در اپلیکیشن انجام شده است.

در ادامه می توانید محتوای فایل activity اصلی اصلاح شده src/MainActvity.java را مشاهده کنید:

package com.example.saira_000.myapplication;

import android.Manifest;

import android.content.Intent;

import android.content.pm.PackageManager;

import android.net.Uri;

import android.os.Bundle;

import android.support.v4.app.ActivityCompat;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.Button;

public class MainActivity extends AppCompatActivity {

private Button button;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

button = (Button) findViewById(R.id.buttonCall);

button.setOnClickListener(new View.OnClickListener() {

public void onClick(View arg0) {

Intent callIntent = new Intent(Intent.ACTION_CALL);

callIntent.setData(Uri.parse(“tel:0377778888”));

if (ActivityCompat.checkSelfPermission(MainActivity.this,

Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {

return;

}

startActivity(callIntent);

}

});

}

}

در ادامه نیز می توانید محتوای فایل res/layout/activity_main.xml را مشاهده کنید.

<?xml version=”1.0″ encoding=”utf-8″?>

<LinearLayout xmlns:android=”http://schemas.android.com/apk/res/android”

android:layout_width=”fill_parent”

android:layout_height=”fill_parent”

android:orientation=”vertical” >

<Button

android:id=”@+id/buttonCall”

android:layout_width=”wrap_content”

android:layout_height=”wrap_content”

android:text=”call 0377778888″ />

</LinearLayout>

در بخش زیر محتوای res/values/strings.xml را برای تعریف دو ثابت جدید مشاهده می کنید:

<?xml version=”1.0″ encoding=”utf-8″?>

<resources>

<string name=”app_name”>My Application</string>

</resources>

بخش زیرین محتوای پیشفرض AndroidManifest.cml را نشان می دهد:

<?xml version=”1.0″ encoding=”utf-8″?>

<manifest xmlns:android=”http://schemas.android.com/apk/res/android”

package=”com.example.saira_000.myapplication” >

<uses-permission android:name=”android.permission.CALL_PHONE” />

<application

android:allowBackup=”true”

android:icon=”@drawable/ic_launcher”

android:label=”@string/app_name”

android:theme=”@style/AppTheme” >

<activity

android:name=”com.example.saira_000.myapplication.MainActivity”

android:label=”@string/app_name” >

<intent-filter>

<action android:name=”android.intent.action.MAIN” />

<category android:name=”android.intent.category.LAUNCHER” />

</intent-filter>

</activity>

</application>

</manifest>

بیایید راه اندازی اپلیکیشن My Application شما را امتحان کنیم. فرض می کنیم که شما موبایل اندروید واقعی تان را به کامپیوترخود وصل نموده اید. برای اجرای اپلیکیشن از استودیو اندروید؛ یکی از فایل های activity پروژه خودتان را باز کنید و روی آیکون اجرا C:UsersmohammadDownloadseclipse_run.jpg کلیک کنید که در قسمت نوار ابزار قرار گرفته است. دستگاه موبایل خود را به عنوان یک گزینه انتخاب کنید و سپس دستگاه موبایل تان را بررسی کنید که صفحه نمایش زیر را نشان می دهد:

راه اندازی اپلیکیشن My Application

اکنون از دکمه Call استفاده کنید تا همان طور که در زیر می بینید؛ یک تماس تلفنی ایجاد کنید:

استفاده از دکمه Call

profile name
میلاد حیدری

بخندید کتاب بخونید و خوب باشید تا جامعه مون به آرامش برسه. لطفا ! هر سوالی دارید در بخش نظرات مطرح کنید. ما یا سایر هموطنان عزیز پاسخ خواهیم داد. برای کمک به سایت ما و گسترش آموزش در بین هموطنان، در سایتها، وبلاگ ها و شبکه های اجتماعی لینک سایت ما را درج کنید.

مطالب پیشنهادی برای شما

محصولات مرتبط

مشاهده همه

دیدگاهتان را بنویسید

1 2 3 4 5

1 نظر درباره «آموزش تماس های تلفنی در برنامه نویسی اندروید»

  • 001
    001 آیا این دیدگاه مفید بود ؟

    چطوری میتونیم ورودی بگیریم و در مکان tel قرار بدیم تا داخل برنامه با هر شماره ای وارد کردیم تماس بگیریم ؟
    با چه کدی میشه تعداد تماس هارو با عدد ذخیره کنیم به طوری که عدد تماس های قبلی پاک نشن و تا یک مقداری مثل ۴ یا ۵ عدد ذخیره کنیم ؟ برای مثال
    تماس ۱
    تماس ۲
    تماس ۳
    تماس ۴
    تماس ۵

    پاسخ
مشاهده همه نظرات
سبد خرید
سبد خرید شما خالی است
× جهت نصب روی دکمه زیر در گوشی کلیک نمائید
آی او اس
سپس در مرحله بعد برروی دکمه "Add To Home Screen" کلیک نمائید