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

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"
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值