android应用-->睡眠助手实现挂电话和回复短信的功能

要实现自动挂电话,要调用系统的挂电话。

在src文件夹下创建包com.android.internal.telephony,在包下建一个文件ITelephony.aidl

文件内容如下:

package com.android.internal.telephony; interface ITelephony{ boolean endCall(); void answerRingingCall(); }
点保存之后就会在gen目录下自动生成一个ITelephony.java文件。

可以通过调用endCall()方法来实现挂电话的功能。

class MyPhoneListener extends PhoneStateListener { @Override public void onCallStateChanged(int state, String incomingNumber) { switch(state) { case TelephonyManager.CALL_STATE_RINGING: ITelephony iTelephony = getITelephony(HelperMain.this); try { //挂断来电并发短信给来电号码 if(mEndCall) { //通知用户有未接来电 mNotification(incomingNumber); //挂段电话 iTelephony.endCall(); //自动发送短信给来电号码 SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(incomingNumber, null, "睡眠助手提醒您:" + replyContent, null, null); } } catch (RemoteException e) { e.printStackTrace(); } break; } super.onCallStateChanged(state, incomingNumber); } }
//开启助手 public void openHelper() { mEndCall = true ; am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), alarmIntent); TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); MyPhoneListener myPhoneListener = new MyPhoneListener(); tm.listen(myPhoneListener, PhoneStateListener.LISTEN_CALL_STATE); setPhoneMode(); }


到这里就实现了自动挂电话的功能。


接下来是实现挂电话之后发送给来电号码一条短信,告之对方记住正在睡觉。

//自动发送短信给来电号码 SmsManager sms = SmsManager.getDefault(); sms.sendTextMessage(incomingNumber, null, "睡眠助手提醒您:" + replyContent, null, null);
到这里就实现了回复短信的功能



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值