• android 通话状态


    引用:http://blog.chinaunix.net/uid-25370280-id-2941384.html

    思路:就是一个监听,很简单
    代码如下你自己试试:
    private class EndCallListener extends PhoneStateListener {
                boolean flag =false ;
            @Override
            public void onCallStateChanged(int state, String incomingNumber) {
                    //铃声状态
                    AudioManager aui =(AudioManager) CallActivity.this.getSystemService(Context.AUDIO_SERVICE);
                    
                    switch(state)
                    {
                    case TelephonyManager.CALL_STATE_IDLE://闲置或结束电话
                            aui.setMode(AudioManager.RINGER_MODE_NORMAL);
                            if(flag){
                                    flag= false ;
                                    Toast.makeText(CallActivity.this, "通话结束", Toast.LENGTH_LONG).show();
                                    
                            }else{
                                    Toast.makeText(CallActivity.this, "闲置", Toast.LENGTH_LONG).show();
                            }
                            break;
                    case TelephonyManager.CALL_STATE_OFFHOOK://通话中
                            flag= true ;
                            Toast.makeText(CallActivity.this, "通话中", Toast.LENGTH_LONG).show();
                            break ;
                    case TelephonyManager.CALL_STATE_RINGING://来电
                            
                            Toast.makeText(CallActivity.this, "来电", Toast.LENGTH_LONG).show();
                            call_incom(incomingNumber,aui);
                            break;
                    
                    }
            }

    在activity的onCreate中:
    EndCallListener callListener = new EndCallListener();
                    TelephonyManager mTM = (TelephonyManager)CallActivity.this.getSystemService(Context.TELEPHONY_SERVICE);
                    mTM.listen(callListener, PhoneStateListener.LISTEN_CALL_STATE);

  • 相关阅读:
    Python——GUI编程 控件及常用信号
    Python——PYQT:控件基本使用
    Android 自己定义圆圈进度并显示百分比例控件(纯代码实现)
    Parallel and Perpendicular
    策略模式(Strategy Pattern)
    Linux Framebuffer驱动剖析之中的一个—软件需求
    Java知识总结---整合SpringMVC+Mybatis+Spring(二)
    wav音频文件头解析
    【EasyUi DataGrid】批量删除
    Spark SQL Catalyst源代码分析之UDF
  • 原文地址:https://www.cnblogs.com/sode/p/2992241.html
Copyright © 2020-2023  润新知