Android实现监听电话呼叫状态的方法
本文实例讲述了Android实现监听电话呼叫状态的方法。分享给大家供大家参考。具体如下:
在清单文件AndroidManifest.xml中添加权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
java代码如下:
// 取得电话服务 TelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); //监听电话的状态 telManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE); PhoneStateListener listener = new PhoneStateListener(){ @Override public void onCallStateChanged(int state, String incomingNumber) { switch (state){ case TelephonyManager.CALL_STATE_IDLE: /* 无任何状态时 */ break; case TelephonyManager.CALL_STATE_OFFHOOK: /* 接起电话时 */ break; case TelephonyManager.CALL_STATE_RINGING: /* 电话进来时 */ break; default: break; } super.onCallStateChanged(state, incomingNumber); } };
希望本文所述对大家的Android程序设计有所帮助。
相关推荐
-
Android编程实现监听EditText变化的方法
本文实例讲述了Android编程实现监听EditText变化的方法.分享给大家供大家参考,具体如下: 监听EditText中的内容的变化.在EditText没有找到一个setOnxxxx的方法.百度了一下,原来在EditText中有一个方法addTextChangedListner(TextWatcher watcher)方法,用他可以时时监听EditText的内容变化.TextWatcher是一个接口类,所以必须实现TextWatcher里的抽象方法: 当EditText里面的内容有变化的时候
-
Android 实现监听的四种方法详解实例代码
直接上代码,大家可以参考下 (1)自身类作为事件监听器 package cn.edu.gdmec.s07150745.work5; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivit
-
android中使用Activity实现监听手指上下左右滑动
用Activity的onTouchEvent方法实现监听手指上下左右滑动 应用了Activity的ontouchEvent方法监听手指点击事件,手指滑动的时候会先按下,滑倒另一个地方再抬起,我们就可以根据按下的坐标和抬起的坐标算出用户是往哪一个方向滑动了. package com.example.testtt; import android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; impor
-
全面解析Android中对EditText输入实现监听的方法
在 Android design support 包中提供了一种在输入不合适字符时一直显示的提示方式来显示,现在已经开始在更多的应用上被使用了:这些 Android app 在显示他们的错误提示时采用的不同的方式常常让人感觉非常的不和谐. 即这个一直显示的错误消息是在 TextInputLayout 中的 EditText 周围的.这也是,作为一个奖励,提供了材料设计风格中,活泼的浮动标签在一个 APP 的用户体验中常常是最无聊的部分. 这里来讨论如何在你的输入表单上去创建一个通用的.可重用的组
-
Android中实现监听ScrollView滑动事件
时候我们需要监听ScroView的滑动情况,比如滑动了多少距离,是否滑到布局的顶部或者底部.可惜的是SDK并没有相应的方法,不过倒是提供了一个 复制代码 代码如下: protected void onScrollChanged(int x, int y, int oldx, int oldy) 方法,显然这个方法是不能被外界调用的,因此就需要把它暴露出去,方便使用.解决方式就是写一个接口, 复制代码 代码如下: package com.example.demo1; public inter
-
Android EditText 实现监听实例
我们要实现:当EditText的Text改变时,我们希望得到通知,但是可惜的是Android并没有这个监听器,也就无从得知变化了,但我们可以使用TextWatcher类可以帮助我们来实现这个功能. 现有一个id = edit的EditText. 1.定义一个TextWatcher的实例. private TextWatcher watcher = new TextWatcher(){ @Override public void afterTextChanged(Editable s) { //
-
Android广播接实现监听电话状态(电话的状态,拦截)
首先我们来理解下监听器的机制. Android的事件处理机制有两种:监听和回调. A基于监听的事件处理 主要涉及三类对象:EventSource(事件源),Event(事件),EventListener(事件监听器) 监听机制处理事件的流程图如下(委派式:Delegation): 1:需要在AndroidManifest.xml清单中添加权限 <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS&q
-
Android实现监听电话呼叫状态的方法
本文实例讲述了Android实现监听电话呼叫状态的方法.分享给大家供大家参考.具体如下: 在清单文件AndroidManifest.xml中添加权限: 复制代码 代码如下: <uses-permission android:name="android.permission.READ_PHONE_STATE"/> java代码如下: // 取得电话服务 TelephonyManager telManager = (TelephonyManager) getSystemServ
-
android获取监听SD Card状态的方法
本文实例讲述了android获取监听SD Card状态的方法.分享给大家供大家参考.具体分析如下: 1. 注册StorageEventListener来监听SD卡状态即onStorageStateChanged()方法,当sd卡状态改变时,调用该方法. 复制代码 代码如下: public void onStorageStateChanged(String path,String oldState,String newState){ if (newState.equals(Environment.
-
Android编程监听网络连接状态改变的方法
本文实例讲述了Android编程监听网络连接状态改变的方法.分享给大家供大家参考,具体如下: BroadcastReceiver public class MyReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub //Toast.makeText(context, intent
-
Android获取监听SD卡状态
项目简介: 该项目监听SD卡状态 详细介绍: 部署该应用后,当SD卡状态发送改变时,系统会发出吐司通知用户 该应用涉及到的知识有: 1.Android的四大组件之一:广播接收者的使用 2.SD卡状态的广播 注意: 1.只有在 2.x 模拟器上才能对SD卡进行操作,所以该应用应当部署在 2.x 的模拟器上 2.一个广播接收者是可以接受多个广播的,直接添加多个action就可以了 3.SD卡不同的状态有不同的广播,主要有三种: <action android:name="android.int
-
js实时监听文本框状态的方法
复制代码 代码如下: <div id="msg"></div> <input type="text" name="txt" id="txt"/> <script> //当状态改变的时候执行的函数 function handle() { document.getElementById('msg').innerHTML = document.getElementById('txt')
-
Vue使用Proxy监听所有接口状态的方法实现
在开发项目过程中几乎所有接口都需要知道它的返回状态,比如失败或者成功,在移动端通常后台会返回结果,而我们只需要一个弹窗来弹出来结果就可以了.但是这个弹窗如果在整个项目里需要手动去每一个都定义,那是非常庞大的代码量,而且维护起来非常的麻烦.通常做法就是绑定在原型上一个公共方法,比如this.message('后台返回接口信息'). 这样看似省力了很多其实还是很麻烦. 如果使用了proxy做一个全局代理,那么就完全不一样了.不管任何一个api都会将状态传递个这个代理中心,并且由代理中心直接反应结果.
-
android音乐播放器监听电话状态实现代码
如下代码是监听电话的状态,代码简单不做介绍直接看代码: 复制代码 代码如下: private boolean mResumeAfterCall = false; private PhoneStateListener mPhoneStateListener = new PhoneStateListener() { @Override public void onCallStateChanged(int state, String incomingNumber) { if (state ==
-
Android 监听软键盘状态的实例详解
Android 监听软键盘状态的实例详解 近日遇到要检测软键盘是否显示或隐藏的问题,搜了一下网上,最后找到一个很简单的,记录一下. activityRoot是activity的根view,就是xml里面的第一个view,给它设置一个id. final View activityRootView = findViewById(R.id.activityRoot); activityRootView.getViewTreeObserver().addOnGlobalLayoutListener(ne
-
Android 利用广播监听usb连接状态(变化情况)
废话不多说了,直接给大家贴代码了,具体代码如下所示: package com.lgs.test.testcode.receiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.widget.Toast; /** * Create
随机推荐
- jsp hibernate 数据保存操作的原理
- 基于JavaScript创建动态Dom
- 每天一个linux命令(61):wget命令详解
- 有趣的bootstrap走动进度条
- php中header跳转使用include包含解决参数丢失问题
- 处理驱动器和文件夹
- C#中label内容显示不全、不完整的解决方法
- MySQL无法启动几种常见问题小结
- Go语言服务器开发之客户端向服务器发送数据并接收返回数据的方法
- 用js获取元素属性的代码
- ubuntu (linux)修改网卡名称命令
- jQuery插件imgPreviewQs实现上传图片预览
- Bootstrap CSS组件之大屏幕展播
- C#利用正则判断输入是否为纯数字、容器类
- java实现会反弹的小球示例
- How do I change MySQL timezone?
- C#与C++与互操作实例讲解
- SpringMVC+EasyUI实现页面左侧导航菜单功能
- 使用layer.msg 时间设置不起作用的解决方法
- 浅析使用JDBC操作MySQL需要添加Class.forName("com.mysql.jdbc.Driver")