Melakukan Panggilan Telepon (Call) pada Device Android Menggunakan Java

Pada prinsipnya  panggilan telepon (call) adalah sebuah ‘Activity’ bawaan Android, sehingga cara termudah untuk melakukan panggilan telepon adalah dengan memanfaatkan Activity internal tersebut.  Ada dua cara memanfaatkan sebuah Activity Android, yakni secara eksplisit dan implisit. Karena Activity ‘call’ ini berada di luar aplikasi kita (karena milik sistem operasi Android)  maka opsi kedua yang akan kita pakai. Secara umum, mengaktifkan sebuah Activity eksternal  secara implisit dilakukan dengan cara mengirim ‘action’ dan ‘data’ yang bersesuaian melalui ‘Uri’. Namun sebelumnya kita harus ‘meminta ijin’ (permission) pada sistem operasi untuk menggunakan activity tersebut dengan mendeklarasikan permission ‘CALL_PHONE’ pada  file AndroidManifest.xml

Berikut ini adalah contoh program ‘Call’ sederhana yang ditulis dalam bahasa Java, menggunakan IDE Eclipse.

  1. Buka IDE Eclipse dan buat project android baru melalui menu File|New|Android Application Project. Ikuti wizard sampai selesai, dan beri nama project sesuai selera (misalnya ‘callsederhana’)
  2. Buka file activity_main.xml di folder /res/layout, ambil komponen ‘EditText’ dan ‘Button’ yang masing-masing berada di pallete ‘Text Fields’ dan ‘Form Widgets’. Atur peletakan kedua komponen seperti gambar di bawah
  3. Untuk mengubah label/tulisan pada komponen Button1 ada dua cara, bisa langsung mengubah di properti ‘Text’ di jendela Properties (hardcode) atau melalui file strings.xml di folder /res/value. Dalam pemrograman Android, eksternalisasi resource/value seperti metode yang kedua lebih diutamakan daripada hardcode. Buka file strings.xml di folder res/value dan modifikasi script menjadi seperti berikut 
  4. Kemudian buka file activity_main.xml di folder /res/layout dan modifikasi sedikit pada bagian properti button sebagai berikut. Perhatikan cara pengesetan tulisan/label pada komponen Button melalui properti ‘text’. Pada baris terakhir script di bawah artinya tulisan/label/teks pada komponen button1 akan mengacu pada file strings.xml pada string yang didefinisikan dengan nama ‘call’
  5. Berikutnya adalah deklarasi permission di file AndroidManifest.xml yang bertujuan untuk ‘meminta ijin’ sistem operasi untuk menggunakan activity internal ‘CALL_PHONE’
  6. Dan yang terakhir adalah menulis program utamanya di file MainActivity.java sebagai berikut :
public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button button1=(Button) findViewById (R.id.button1); 
button1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
EditText teksedit = (EditText) findViewById (R.id.editText1);
Intent intent= new Intent(Intent.ACTION_CALL,
Uri.parse("tel:"+teksedit.getText()));
startActivity(intent);

}
});

}

Penjelasan script di atas :

Baris 8 : menciptakan objek turunan dari class Button dengan nama ‘button1’ dan mendefinisikannya dengan komponen button dengan nama button1 yang ada di layout

Baris 9 : menulis handle untuk menangani event onClick pada objek button1

Baris 12 sd 16 : aksi yang akan dilakukan jika tombol button1 ditekan yakni mengambil nomor yang akan dipanggil (baris 13) dan melakukan panggilan dengan menciptakan intent baru dengan melewatkan parameter melalui Uri (baris 15). Selanjutnya adalah mengaktifkan intent tersebut dengan script ‘startActivity’ (baris 16)

Hubungkan device Android Anda dengan PC dan kemudian running program di atas (Ctrl-F11). Seharusnya akan muncul tampilan program sebagai berikut

Saat pertama kali running

Isikan nomor yang akan di telepon

Tekan tombol ‘Call’

Cukup sederhana bukan? Demikian tutorial kali ini, semoga bermanfaat bagi yang mempelajarinya. Ohya, program di atas dapat di download gratis di sini

0 0 votes
Article Rating

Leave a Reply

6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
heni

mas saya ikutin dari awal kok gak bisa ya .
ada error pas di yang terakhir.

Button button1=(Button) findViewById (R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
EditText teksedit = (EditText) findViewById (R.id.editText1);
Intent intent= new Intent(Intent.ACTION_CALL,
Uri.parse(“tel:”+teksedit.getText()));

supriyadi

makasih ilmunya,
yang saya mau tanyakan, kalau dalam program yg berbeda, yg mana program itu sudah di buat, dengan data no hp, bisakah langsung menekan ke no hp tersebut tanpa ada button, dan otomatis akan langsung menghunbungi no tersebut. mohon bisa bantu detail mana saja yg perlu di tambahkan….

ardi

mas kalo telfon misal ke *123# ko pagarnya ilang ya?

6
0
Would love your thoughts, please comment.x
()
x