android 拨号器 目录,Android 电话拨号器

安卓系统一般自带有:电话,邮件,浏览器功能;

本文章简单,讲解电话自带的电话拨号功能进行,电话拨号。

电话拨号器的:逻辑很简单

首先获取输入的电话号码

然后在点击按钮的时候,发送一个隐式的Intent的给系统

系统去寻找自带的拨号Activity启动,然后拨打号码

在查看Android原始的电话应用,获取拨号的Activity如下:

f16fc59b3000

这里写图片描述

可以看到我们所需要的隐式条件三个满足其一即可启动该Activity;

java代码如下:

import android.content.Intent;

import android.net.Uri;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

public class PhoneCallActivity extends AppCompatActivity {

private EditText phone_call_edittext;

private Button phone_call_button;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_phone_call);

phone_call_edittext = (EditText) findViewById(R.id.phone_call_edittext);

phone_call_button = (Button) findViewById(R.id.phone_call_button);

phone_call_button.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

try {

String phoneNumber = phone_call_edittext.getText().toString();

if("".equals(phoneNumber)){

Toast.makeText(PhoneCallActivity.this,"电话号码不能为空",Toast.LENGTH_LONG).show();

return;

}

Intent intent = new Intent();

//需要权限:android.permission.CALL_PHONE

intent.setAction("android.intent.action.CALL");

// intent.addCategory("android.intent.category.DEFAULT");所以这一行可以省略

intent.setData(Uri.parse("tel:" + phoneNumber));

//方法内部会自动为Intent添加类别:android.intent.category.DEFAULT

startActivity(intent);

}catch (Exception e){

Toast.makeText(PhoneCallActivity.this,"输入有误",Toast.LENGTH_LONG).show();

}

}

});

}

}

XML布局代码:

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

tools:context="com.example.administrator.foundationdemo.PhoneCallActivity">

android:id="@+id/phone_call_edittext"

android:layout_width="match_parent"

android:layout_height="50dp"

android:singleLine="true"

android:inputType="number|phone"

android:hint="请输入电话号码"/>

android:id="@+id/phone_call_button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="拨打号码"/>

注意:

在调用安卓拨号功能时需要在AndroidManifest添加权限“android.permission.CALL_PHONE”

这里的电话号码不只是手机号

注意控制 号码String的内容只能是数字

XML布局样图:

f16fc59b3000

这里写图片描述

希望对你们有帮助!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值