zoukankan      html  css  js  c++  java
  • android之监听手机来电状态

        //获得相应的系统服务

        TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);

        //使用TelephonyManager对象的listen(PhoneStateListener listener, int events)

        第一个参数需要实现PhoneStateListener listener并实现相应的方法,第二个参数是PhoneStateListener的静态常量,此处由于是监听电话状态,所以需要传             入LISTEN_CALL_STATE,而同时也需要在AndroidManifest中注册相应的权限<uses-permission android:name="android.permission.READ_PHONE_STATE" />

        //实现PhoneStateListener listener并实现相应的方法

        public class MyPhoneCallListener extends PhoneStateListener
        {

        @Override
        public void onCallStateChanged(int state, String incomingNumber)
        {

        switch (state)
        {
        case TelephonyManager.CALL_STATE_OFFHOOK:                   //电话通话的状态
        Toast.makeText(Main.this, "正在通话...", Toast.LENGTH_SHORT)
        .show();
        break;

        case TelephonyManager.CALL_STATE_RINGING:                   //电话响铃的状态
        Toast.makeText(Main.this, incomingNumber,
        Toast.LENGTH_SHORT).show();
        break;

        }
        super.onCallStateChanged(state, incomingNumber);
        }

  • 相关阅读:
    c++11 可变参数模板类
    c++11 可变参数模板函数
    c++11 函数模板的默认模板参数
    c++11 模板的别名
    超声波模块SRF05
    Eclipse中快捷键的使用
    移动互联网教育领域或将出现新的风口?
    java Date 和 javascript Date
    linux下安装node.js
    J2EE之初识JSP
  • 原文地址:https://www.cnblogs.com/lee0oo0/p/2393812.html
Copyright © 2011-2022 走看看