您的位置:首页 > 移动开发 > Android开发

Android 调用打电话和发短信功能

2012-09-06 12:05 477 查看


Android 调用打电话和发短信功能

1.打电话

可以自己写界面,在button的单击事件中添加如下代码即可:

Intent intent = new Intent();

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

intent.setData(Uri.parse("tel:"+ mobile));//mobile为你要拨打的电话号码,模拟器中为模拟器编号也可

startActivity(intent);

需要添加打电话权限:

<uses-permission Android:name="android.permission.CALL_PHONE" />

2.发短信

和打电话差不多,在button的单击事件中添加如下代码:

SmsManager smsManager = SmsManager.getDefault();

ArrayList<String> texts = smsManager.divideMessage(content);//拆分短信,短信字数太多了的时候要分几次发

for(String text : texts){

smsManager.sendTextMessage(mobile, null, text, null, null);//发送短信,mobile是对方手机

}

对应发短信权限:

<uses-permissionAndroid:name="android.permission.SEND_SMS" />

附:调用系统 发送短信 和 已发送短信界面

1. 调用系统发送短信界面(并指定短信接收人和短信内容

Uri smsToUri = Uri.parse("smsto:10086");

Intent mIntent = new Intent( android.content.Intent.ACTION_SENDTO, smsToUri );

mIntent.putExtra("sms_body", "The SMS text");

startActivity( mIntent );

2. 调用系统已发送短信界面

Uri smsUri = Uri.parse("smsto:106900867734");

Intent intent = new Intent(Intent.ACTION_MAIN, smsUri)

intent.setType("vnd.android-dir/mms-sms");

startActivity(intent);

这里我们使用action_main 根据api显示提示

android.content..ACTION_MAIN = "android.intent.action.MAIN"

public static finalACTION_MAIN

Since:

Activity Action: Start as a main entry point, does not expect to receive data.

Input: nothing

Output: nothing

Constant Value:"android.intent.action.MAIN"

下面这种操作其实不推荐,因为传递的smsto并无法接收。

Uri smsUri = Uri.parse("smsto:106900867734");

Intent intent = new Intent(Intent.ACTION_VIEW,smsUri)

intent.setType("vnd.android-dir/mms-sms");

startActivity(intent);

根据api提示:

android.content..ACTION_VIEW = "android.intent.action.VIEW"

public static finalACTION_VIEW

Since:

Activity Action: Display the data to the user. This is the most common
action performed on data -- it is the generic action you can use on a piece of data to get the most reasonable thing to occur. For example, when used on a contacts entry it will view the entry; when used on a mailto: URI it will bring up a compose window filled
with the information supplied by the URI; when used with a tel: URI it will invoke the dialer.

Input:is URI from which to retrieve data.

Output: nothing.

Constant Value:"android.intent.action.VIEW"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: