Android拦截外拨电话程序示例

拦截监听外拨的电话,并进行处理:

向外拨打电话时系统会发出一个有序广播,虽然该广播最终会被拔号器里的广播接收者所接收并实现电话拔打,但我们可以在广播传递给拔号广播接收者之前先得到该广播,然后清除传递给拔号广播接收者的电话号码,在拔号广播接收者接收到该广播时,由于电话号码为null,因此取消电话拔打。

代码如下:

Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:110"));
                startActivity(intent);

代码如下:

public class OutCallReceiver extends BroadcastReceiver {
     public void onReceive(Context context, Intent intent) {
           setResultData(null); //清除电话,广播被传给系统的接收者后,因为电话为null,取消电话拔打
          // 同样如果你想修改外拔的电话号码,可以这样做
          // String phone = getResultData();//得到外拔电话
          // setResultData(“12593”+ phone);//在电话前面加上12593
     }
}

接收外拔电话广播Intent,在AndroidManifest.xml文件中的<application>节点里订阅此Intent:


代码如下:

<receiver android:name=".OutgoingCallReceiver">
    <intent-filter android:priority="1">
         <action android:name="android.intent.action.NEW_OUTGOING_CALL"/>
    </intent-filter>
</receiver>

并且要进行权限声明:

代码如下:

<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>

(0)

相关推荐

  • Android开发四大组件之实现电话拦截和电话录音

    一.问题描述 使用BordercastReceiver和Service组件实现下述功能: 1.当手机处于来电状态,启动监听服务,对来电进行监听录音. 2.设置电话黑名单,当来电是黑名单电话,则直接挂断. 当拨打电话或电话状态发生改变时,系统就会发出有序广播,因此我们可以使用BordercastReceiver接受广播,因BordercastReceiver执行时间短不能执行耗时任务也不能使用子线程,因此我们应启动一个Service来监听电话并进行处理 二.加入AIDL文件 Android没有对外

  • Android 滑动拦截实例代码解析

    废话不多说了,直接给大家贴代码了,具体代码如下所示: package demo.hq.com.fby; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.view.MotionEvent; import android.widget.LinearLayout; /** * Created by huqing on 2016/12/7.

  • Android编程实现拦截短信并屏蔽系统Notification的方法

    本文实例讲述了Android编程实现拦截短信并屏蔽系统Notification的方法.分享给大家供大家参考,具体如下: 拦截短信有几个关键点: 1.android接收短信时是以广播的方式 2.程序只要在自己的Manifest.xml里加有"接收"SMS的权限 <uses-permission android:name="android.permission.RECEIVE_SMS"> </uses-permission> <uses-p

  • Android实现图片左右滑动效果

    关于滑动效果,在Android中用得比较多,本示例实现的滑动效果是使用ViewFlipper来实现的,当然也可以使用其它的View来实现.接下来就让我们开始实现这种效果. 接下来我们看一下程序结构图: MainActivity文件中代码: package com.android.flip; import android.app.Activity; import android.os.Bundle; import android.view.GestureDetector; import andro

  • Android使用ViewPager实现无限滑动效果

    前言 其实仔细想一下原理还是挺简单的.无非是当我们滑动到最后一页,再向后滑动时定位到第一页;当我们滑动到第一页,再向前滑动时定位到最后一页. 但是,相信很多朋友都遇到过这个问题:视图的过度效果不自然. 小编也是通过百度和谷歌查找了很多解决方案,实验了很多方法,总结了一个相对不错的方法,接下来给各位分享下滑动效果.实现细节以及一些踩过的坑. 1.无限滑动效果(左右无限滑动) 事先准备好2张滑动图片(有想试验的小伙伴,自备图片啊,小编就不提供了...) 运行效果图(左右无限循环): 为了显示更加直观

  • Android实现图片自动轮播并且支持手势左右无限滑动

    废话不多说了,先给大家上左右无限滑动的代码了. 1.左右无限滑动 public class MainActivity extends AppCompatActivity { private static ViewPager viewPager; private RadioGroup group; //图片资源,实际项目需要从网络获取 private int[] imageIds = {R.drawable.ym1, R.drawable.ym2, R.drawable.ym3, R.drawab

  • Android的OkHttp包中的HTTP拦截器Interceptor用法示例

    OkHttp(GitHub:https://github.com/square/okhttp) 的 Interceptor 就如同名称「拦截器」一样,拦截你的 Request 做一些你想做的事情再送出去.例如: 1.自动加上使用者目前使用的语言送出去取得对应语言的回传内容. 2.将 Request 计算出这个 Request 的 sigunature 再附加上送出去. 在 okHttp 中分成 Application Interceptor 和 Network Interceptor 两种. A

  • android短信拦截的实现代码

    短信拦截的实现主要是使用了广播接收者来实现. BroadcastReceiver  广播接收者   必须指定要接收的广播类型.必须明确的指定action 广播:事件.普通广播: 是异步的.会广播接收者同时接收,不能被中断sendBroadcast()有序广播: 是同步的.会根据广播接收的优先级进行接收,是可以中断   短信到来广播 sendOrderBroadcast()priority的范围是:-1000 ~ 1000如果有序广播明确的指定了广播接收者,他是无法被中断的. 代码实现如下: 1.

  • Android拦截外拨电话程序示例

    拦截监听外拨的电话,并进行处理: 向外拨打电话时系统会发出一个有序广播,虽然该广播最终会被拔号器里的广播接收者所接收并实现电话拔打,但我们可以在广播传递给拔号广播接收者之前先得到该广播,然后清除传递给拔号广播接收者的电话号码,在拔号广播接收者接收到该广播时,由于电话号码为null,因此取消电话拔打. 复制代码 代码如下: Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:110"));               

  • Android实现的简单蓝牙程序示例

    本文实例讲述了Android实现的简单蓝牙程序.分享给大家供大家参考,具体如下: 我将在这篇文章中介绍了的Android蓝牙程序.这个程序就是将实现把手机变做电脑PPT播放的遥控器:用音量加和音量减键来控制PPT页面的切换. 遥控器服务器端 首先,我们需要编写一个遥控器的服务器端(支持蓝牙的电脑)来接收手机端发出的信号.为了实现这个服务器端,我用到了一个叫做Bluecove(专门用来为蓝牙服务的!)的Java库. 以下是我的RemoteBluetoothServer类: public class

  • Android开发实现的电话窃听和拦截应用

    本文实例讲述了Android开发实现的电话窃听和拦截应用.分享给大家供大家参考,具体如下: 今天学习了进程间Service的通信-->AIDL,基于前几天学习的广播机制,我做了一个简单的电话窃听和录音应用.现将具体实现方法附在下面,供大家参考,希望大家提供一些宝贵的意见. 业务需求分析: 1.当手机处于开机状态,监听服务就要启动,对来电进行监听录音. 2.设置电话黑名单,当来电是黑名单电话,则直接挂断. 实现步骤: 首先我们要定义一个电话监听的服务,对来电进行监听录音和拦截.具体代码如下: Ph

  • android电话窃听器(示例代码)

    在我上篇文章android短信监听工具(示例代码),开发了一个"短信监听工具",是基于广播接收者实现的,有一些缺陷(例如:不能隐藏的很深,不能开机自动运行...) 在本实例中,将使用新的技术"服务"来解决这些缺陷. 复制代码 代码如下: package cn.itcast.phone; import java.io.File;import java.io.OutputStream;import java.io.PushbackInputStream;import j

  • Android路由框架ARouter的使用示例

    目录 一.添加依赖和初始化框架 1.添加依赖 1.1.java版本的依赖 1.2.kotlin版本的依赖 2.初始化SDK 二.ARouter的简单使用 1.界面跳转 1.1.Activity界面跳转 1.2.获取fragment实例 1.3.注意事项 2.携带基本参数的界面跳转 3.携带对象的界面跳转 3.1.携带序列化对象的界面跳转 3.2.携带无序列化对象的界面跳转 3.3.携带集合和数组的界面跳转 4.界面跳转回调 5.未用到的知识点 一.添加依赖和初始化框架 1.添加依赖 在需要使用A

  • Android 事件分发详解及示例代码

    事件分发是Android中非常重要的机制,是用户与界面交互的基础.这篇文章将通过示例打印出的Log,绘制出事件分发的流程图,让大家更容易的去理解Android的事件分发机制. 一.必要的基础知识 1.相关方法 Android中与事件分发相关的方法主要包括dispatchTouchEvent.onInterceptTouchEvent.onTouchEvent三个方法,而事件分发一般会经过三种容器,分别为Activity.ViewGroup.View.下表对这三种容器分别拥有的事件分发相关方法进行

  • Android监听手机电话状态与发送邮件通知来电号码的方法(基于PhoneStateListene实现)

    本文实例讲述了Android监听手机电话状态与发送邮件通知来电号码的方法.分享给大家供大家参考,具体如下: 在android中可以用PhoneStateListener来聆听手机电话状态(比如待机.通话中.响铃等).本例是通过它来监听手机电话状态,当手机来电时,通过邮件将来电号码发送到用户邮箱的例子.具体程序如下: import android.app.Activity; import android.content.Intent; import android.os.Bundle; impor

  • Android使用GridView实现日历功能示例(详细代码)

    Android使用GridView实现日历功能示例,代码有点多,发个图先: 如果懒得往下看的,可以直接下载源码吧,最近一直有人要,由于时间太久了,懒得找出来整理,今天又看到有人要,正好没事就整理了一下 源码下载.... 布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/an

  • C#开发Android百度地图手机应用程序(多地图展示)

    一.简介 地图控件自v2.3.5版本起,支持多实例,即开发者可以在一个页面中建立多个地图对象,并且针对这些对象分别操作且不会产生相互干扰. 文件名:Demo04MultiMapView.cs 简介:介绍多MapView的使用 详述:在一个界面内,同时建立四个TextureMapView控件: 二.示例 1.运行截图 在x86模拟器中的运行效果如下: 在上一节例子的基础上,只需要再增加下面的步骤即可. 2.添加demo05_multimap.axml文件 在layout文件夹下添加该文件,将其改为

  • Android webview转PDF的方法示例

    1.网上找了好多没有显示出来效果不错,后来看到调用手机打印预览,看了效果还不错,就打算使用系统打印服务预览下载 2.'webView.createPrintDocumentAdapter()'得到打印的PrintDocumentAdapter有了该类就可以使用onWrite方法写入制定的文件,但是这个方法需要传入回调这个悲剧的是这个回调方法是hiden的我们没办法调用 3,字怎么解决呢,有连个方法 3.1 使用此开源库替换自己的sdk 中的android.jar文件,就可以使用了 https:/

随机推荐