همانطور که می دانیم، می توانیم در اپلیکشن های اندروید دسترسی به تماس تلفنی را فعال، و با ایجاد یک دکمه یا یک فیلد، کاربر را قادر به برقراری تماس از طریق اپلیکشن خود کنیم. این برای مواقعی مفید می باشد که شما برای نمونه می خواهید کاربر با کلیک بر روی شماره شرکت شما، بتواند به راحتی با شما تماس بگیرد.
در این مطلب ما با استفاده از برنامه نویسی اندروید (جاوا) این قابلیت را برای اپلیکیشن خود ایجاد خواهیم کرد. شما به راحتی می تواند موجود را در پروژه های خود استفاده نمایید.
یک پروژه ایجاد و فایل activity_main.xml را مطابق زیر تغییر دهید:
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".DeviceFeatures.DeviceFeaturesActivity2">
<EditText
android:id="@+id/pnEdt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="100dp"
android:hint="Phone Number"
android:textColor="#000000"
app:layout_constraintTop_toTopOf="parent"/>
<Button
android:id="@+id/callBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorAccent"
android:textColor="#ffffff"
android:text="Call"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@id/pnEdt"/>
</androidx.constraintlayout.widget.ConstraintLayout>
همانطور که می بینید در کد بالا ما یک eidtText برای دریافت شماره موبایل از کاربر و یک دکمه برای برقراری تماس قرار داده ایم.
حال فایل MainActivity.java را نیز بصورت زیر تغییر دهید:
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import com.bluapp.androidview2.R;
public class DeviceFeaturesActivity2 extends AppCompatActivity {
private EditText pnEdt;
private Button callBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_device_features2);
pnEdt = (EditText) findViewById(R.id.pnEdt);
callBtn = (Button) findViewById(R.id.callBtn);
callBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String phonenumber = pnEdt.getText().toString();
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:"+phonenumber));
startActivity(intent);
}
});
}
}
در این بخش نیز گفته ایم که با کلیک بر روی دکمه callBtn یک intent از نوع Intent.ACTION_CALL ایجاد و سپس با استفاده از متد etData() شماره موبایل را از editText گرفته و با متد startActivity این فعالیت را شروع کرده ایم.
در نهایت برای ایجاد دسترسی کد زیر را در فایل AndroidManifest.xml پروژه ی خود قرار دهید:
<uses-permission android:name="android.permission.CALL_PHONE" />
درصورتی که سوالی یا پیشنهادی دارید از بخش نظرات برای ما ارسال کنید.:)
برای اطلاع از پاسخ به نظر شما می توانید ایمیل یا شماره موبایل خود را وارد نمایید. *
ایمیل و شماره موبایل شما کاملا مخفی خواهد ماند و در سایت نمایش داده نخواهد شد. *