`

拨打电话简单Demo

阅读更多
package com.amaker.call;

import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

/**
 * 1,打电话测试
 *,2,从联系人中获取电话号码,拨打
 * ZZL
 */
public class MainActivity extends Activity {
	private Button btn_select;
	private Button btn_call;
	private EditText et_number;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		btn_select = (Button) findViewById(R.id.button1);
		btn_call = (Button) findViewById(R.id.button2);
		et_number = (EditText) findViewById(R.id.editText1);

		btn_select.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				select();
			}
		});

		btn_call.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				call();
			}
		});
	}
	
	@Override
	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
		super.onActivityResult(requestCode, resultCode, data);
			Uri uri = data.getData();
			String[] strs = {"number"};
			Cursor c = managedQuery(uri, strs, null, null, null);
			c.moveToFirst();
			String number = c.getString(c.getColumnIndexOrThrow("number"));
			et_number.setText(number);
			
		
		
	}
	//查找联系人
	void select(){
		Intent intent = new Intent();
		String action = Intent.ACTION_GET_CONTENT;
		String type = "vnd.android.cursor.item/phone";
		intent.setAction(action);
		intent.setType(type);
		startActivityForResult(intent, 0);
		
	}
	//打电话
	void call(){
		String action = Intent.ACTION_CALL;
		String number = et_number.getText().toString();
		Uri data = Uri.parse("tel:"+number);
		Intent intent = new Intent();
		intent.setAction(action);
		intent.setData(data);
		startActivity(intent);
		
	}
}


main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:orientation="vertical"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent">
	<TextView
		android:layout_width="fill_parent"
		android:layout_height="wrap_content"
		android:text="请输入电话号码:" />
	<EditText
		android:id="@+id/editText1"
		android:phoneNumber="true"
		android:layout_width="match_parent"
		android:layout_height="wrap_content" />
	<Button
		android:text="查询电话号码"
		android:id="@+id/button1"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content" />
	<Button
		android:text="CALL"
		android:id="@+id/button2"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content" />
</LinearLayout>


AndroidManifest.xml:
注意里面权限的添加:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.amaker.call"
      android:versionCode="1"
      android:versionName="1.0">
    <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".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>
分享到:
评论

相关推荐

    拨打电话demo

    在Android平台上,开发一个拨打电话的Demo涉及到许多关键知识点,对于初学者来说,这是一个很好的实践项目,可以帮助理解Android系统的权限管理、Intent机制以及系统服务的使用。以下将详细阐述这些内容。 首先,...

    H5 简单demo示例模板

    在H5中,前端开发不仅限于简单的静态页面展示,而是能够实现更丰富的动态效果和应用程序。 一、H5的新特性 1. **离线存储(Offline Storage)**:通过`Application Cache`和`IndexedDB`等技术,H5允许开发者将部分...

    Android拨打电话Demo

    非常简单的示例,供新手学习参考。

    拨打电话Demo

    在Android开发中,实现“拨打电话Demo”涉及到了与系统通信和权限管理的关键知识点。首先,我们需要理解Android的Intent机制,这是Android应用间交互的一种方式,可以用来启动其他应用程序组件,比如拨号器。以下是...

    pjsip网络电话demo

    2. **示例应用**:一个简单的Android应用,展示如何集成PJSIP库并实现基本的通话功能,如注册到SIP服务器、拨打电话、接听来电等。 3. **配置文件**:可能包含SIP配置文件,定义了服务器地址、用户名、密码等信息。 ...

    安卓调用系统控件实现拨打电话源码,纯净Demo

    在软件中经常会要集成拨打电话的功能,点击一个按钮,实现拨打电话。整个工程里只有这一个功能,简单易学,易于看懂。 下面是我的讲解的博客地址 http://blog.csdn.net/u013465022/article/details/21550803

    ios callkit号码识别最简单demo

    **iOS CallKit 数号识别最简单Demo解析** 在iOS开发中,CallKit是一个重要的框架,它为第三方通信应用提供了与系统电话功能深度集成的能力。CallKit 提供了类似原生电话应用的用户界面,使应用能够显示来电界面、...

    安卓电话拨打器

    这个简单的DEMO展示了一个基础的电话拨打器应用的工作原理和实现步骤。 首先,理解Android系统的权限机制至关重要。在Android 6.0(API级别23)及以上版本,应用需要在运行时请求`Manifest.permission.CALL_PHONE`...

    first_tapi_demo.zip_DEMO_tapi_tapi demo

    描述中提到"这是一款通过TAPI实现的通信小程序,适合初学者使用和学习",意味着这个压缩包包含了一个简单的应用,该应用利用TAPI的功能来处理电话通信任务。初学者可以通过它了解如何在实际项目中应用TAPI,掌握基本...

    TextView超简单实现电话短信网址超链接实例

    当我们在应用中展示信息时,有时需要将特定的文本(如电话号码、短信地址或网址)设置为可点击的超链接,使用户可以直接拨打电话、发送短信或跳转到网页。本文将详细介绍如何在TextView中实现电话、短信和网址的...

    LinPhoneDemo.rar

    主要集成了linphone的官网sdk,再结合官网的demo实现了简单的拨打sip电话功能,解决了网上linphone集成复杂,官网demo运行不了,官网引用下载失败等原因,操作方便,代码简单,运行即可直接使用拨打

    Android和H5 js交互Demo

    - **网页点击拨打电话**:当用户在网页上点击电话号码时,Android应用可以捕获这一事件,通过`Intent`启动电话拨号界面,调用`startActivity()`来拨打电话。 5. **安全与兼容性**: - **安全考虑**:注入的...

    安卓手机sip电话客户端 Siphone

    1、支持sip直拨网络电话,手机需要能...2、呼叫方法超级简单,跟平时打电话的习惯是一样的,调用通讯录、或者通话记录、或者直接输入号码都可以。 3、两个dao99号码之间可以无限免费通话,跟qq、skype即时通讯一样。

    android快捷拨号demo

    在Android系统中,快捷拨号功能允许用户快速地拨打常用联系人的电话,无需每次都通过联系人列表进行查找。这个“android快捷拨号demo”很可能是为了演示如何在Android应用中实现这一功能而编写的示例代码。下面我们...

    android 发短信Demo(类似爱短信)

    这个Demo旨在提供一种发送短信、拨打电话、显示短信和展示通讯录的功能,为了演示效果,建议在模拟环境中预填充至少六个联系人。 首先,我们要了解Android的权限管理。发送短信和拨打电话是受限制的操作,需要在...

    webRTC-demo

    3. **RTCDTMFSender**:用于发送双音多频(DTMF)信号,即电话按键音,可以实现通过WebRTC通话系统拨打数字的功能。 4. **RTCDataChannel**:提供了低延迟的数据传输通道,可以用来传输任意类型的数据,不仅仅是音...

    Android开发各类简单功能小demo合集-eclipse版本

    1. **打电话**:在Android应用中,调用电话功能是通过Intent来实现的。开发者可以使用`Intent.ACTION_CALL`或者`Intent.ACTION_DIAL`来启动拨号界面或直接拨打指定号码。需要注意的是,使用`ACTION_CALL`需要申请`...

    【Android】Android开发初学者实现拨打电话的功能,拨打电话app应用,电话拨号器

    调用拨打电话程序示例源代码,android实现,下载导包,开发者模式打开安装,就能用,界面效果:直接跳转到拨号界面。 好啦,本文到这里就结束啦,很简单的一个Demo有需要的朋友拿去自行修改,我这里没有用UI就没有写UI...

    twilio-delphi-demo-master(最简单的发送短信单元)

    【标题】:“Twilio-Delphi-Demo-Master”是一个基于Delphi开发的简单示例项目,用于演示如何使用Twilio API发送短信。这个项目的核心是利用Twilio的服务来实现跨平台的通信功能,特别是短信服务,对于那些需要在...

    用osip2、eXosip2、ortp和mediastreamer写的linux下简易软电话带代码

    根据描述,这款软电话是命令行界面的,这意味着用户通过输入命令来执行各种操作,如注册到SIP服务器、拨打电话、接听呼叫等。虽然功能相对简单,但它实现了软电话的基本功能,可以作为学习和理解VoIP技术的一个起点...

Global site tag (gtag.js) - Google Analytics