تماس ها

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

اساطیر زبان

اندروید؛ اپلیکیشن های داخلی برای تماس های تلفنی فراهم آورده است؛ در برخی از موقعیت ها، ممکن است نیاز داشته باشیم که از طریق اپلیکیشن مان؛ یک تماس تلفنی ایجاد کنیم. این امر می تواند به سادگی با استفاده از اینتنت های ضمنی با 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:\Users\mohammad\Downloads\eclipse_run.jpg کلیک کنید که در قسمت نوار ابزار قرار گرفته است. دستگاه موبایل خود را به عنوان یک گزینه انتخاب کنید و سپس دستگاه موبایل تان را بررسی کنید که صفحه نمایش زیر را نشان می دهد:

C:\Users\mohammad\Downloads\call12.jpg

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

C:\Users\mohammad\Downloads\call2.jpg

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

1 دیدگاه. ارسال دیدگاه جدید

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

    پاسخ

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست