白里白 2016-01-10 02:46 采纳率: 100%
浏览 1920
已采纳

Android来电来信以及挂断接通的广播事件

鄙人想开发一个来电来信闪光的软件。网上这两个广播事件讲的不清不楚的。请大神告诉我,还有相应的权限

  • 写回答

1条回答 默认 最新

  • 音符跳跃思念每天 2016-01-10 04:22
    关注

    Android中电话通信的简单流程
    使用代码拨打电话
    1>创建隐式意图
    Intent intent=new Intent();
    intent.setAction(Intent.ACTION_CALL);
    intent.setData(Uri.parse("tel:13555555555"));
    2>启动Activity
    context.startActivity(intent);
    3>添加拨打电话的权限
    android.permission.CALL_PHONE

    如何监听呼入电话
    1> 编写一个类,扩展自PhoneStateListener。
    2>获取系统服务:TelephonyManager
    3>调用manager.listen()方法开始监听电话状态。
    4>添加权限:
    android.permission.READ_PHONE_STATE
    监听呼出电话:
    1>创建广播接收器接收系统广播:
    Intent.ACTION_NEW_OUTGING_CALL
    2>在onReceive方法中处理广播
    3>把广播接收器在清单文件中注册。
    4>添加权限

    拦截电话的呼入

    Service绑定:
    客户端:
    conn=new ServiceConnection(){
    serviceConnected(, IBinder binder){
    MyBinder b=(....)binder;
    }
    serviceDisConnected(){}
    };
    bindService(intent, conn, flags);

    Android中短信的收发机制与简单流程

    代码发送短消息

    1>获取发送短信的系统服务:
    SmsManager manager=SmsManager.getDefault();
    2>调用sendTextMessage方法发送短信
    manager.sendTextMessage(
    number, null, body, null, null);
    3>添加权限

    android.permission.SEND_SMS
    

    manager.sendTextMessage(
    number, null, body,
    sentIntent, 当短信发送后执行该PendingIntent
    deliveryIntent 对方是否成功接收PendingIntent
    );

    提示短信是否发送成功
    sentIntent
    提示短信对方成功接收
    deliveryIntent

    发送字数超过限制的短消息
    ArrayList bodies=SmsManger.divideMessage(text);
    for(int i=0; i String body=bodies.get(i);
    sendTextMessage();
    }
    使用代码接收、拦截短消息
    1>编写广播接收器接收系统广播:
    android.provider.Telephony.SMS_RECEIVED
    2>注册
    3>添加拦截短信的系统权限

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!