`
1846396994
  • 浏览: 76037 次
社区版块
存档分类
最新评论

Android(AIDL)自动重复拨号及挂断/接听电话

阅读更多

 

Android默认没有提供挂断/接听电话的api,需要伪装com/android/internal/telephony/ITelephony.aidl的接口来欺骗系统。而自动重复拨号可以通过(BroadcastReceiver)监听电话状态(android.intent.action.PHONE_STATE)来实现。

 

<strong>1、Android挂断和接听电话的接口</strong>

<code lang='java' width='auto' height='auto'>

public static void endCall(Context cx) { //挂断电话

TelephonyManager telMag = (TelephonyManager) cx

.getSystemService(Context.TELEPHONY_SERVICE);

Class<TelephonyManager> c = TelephonyManager.class;

Method mthEndCall = null;

try {

mthEndCall = c.getDeclaredMethod("getITelephony", (Class[]) null);

mthEndCall.setAccessible(true);

ITelephony iTel = (ITelephony) mthEndCall.invoke(telMag,

(Object[]) null);

iTel.endCall();

} catch (Exception e) {

e.printStackTrace();

}

}

 

原文:Android(AIDL)自动重复拨号及挂断/接听电话 | http://orgcent.com/android-aidl-call-end-phone/


分享到:
评论

相关推荐

    android > AIDL 以及挂断电话

    总结来说,AIDL是Android进程间通信的关键技术,它使得服务端可以提供跨进程调用的接口,而“EndCall”和“AIDLService”则是具体应用场景的实例,分别展示了如何使用AIDL创建服务以及如何实现挂断电话的功能。...

    Android service aidl编写示例(Android Studio/eclipse)

    在Android应用开发中,Service和AIDL(Android Interface Definition Language)是两个重要的组件。Service用于在后台执行长时间运行的任务,而AIDL则用于进程间通信(IPC, Inter-Process Communication)。下面将...

    AndroidAIDL

    当一个客户端尝试调用服务中的AIDL接口方法时,Android系统会自动处理以下过程: - 编译AIDL文件:Android编译器会将AIDL文件转换为对应的Java接口和辅助类。 - 创建Stub:服务端会生成一个实现了该接口的Stub代理类...

    wps for android AIDL调用

    2. **编译AIDL**:Android Studio会自动编译`.aidl`文件,生成对应的Java接口。这个接口将作为客户端和服务端通信的桥梁。 3. **实现服务端**:在WPS应用中,你需要实现`IMOfficeService`接口,并注册到Android系统...

    Android的AIDL以及挂断电话

    总的来说,Android的AIDL使得应用程序能够轻松地进行进程间通信,而挂断电话的功能则需要结合权限管理,确保用户有权限执行此类操作。通过理解AIDL的工作原理和正确使用,开发者可以构建出功能强大的跨进程交互应用...

    android aidl dome下载

    Android AIDL(Android Interface Definition Language)是Android系统提供的一种接口定义语言,用于实现不同应用程序进程间的通信(IPC,Inter-Process Communication)。AIDL允许我们定义服务和服务客户端之间交互...

    android aidl 不同进程间通信

    Android Aidl(Android Interface Definition Language)是Android提供的一种强大的IPC机制,它允许两个不同进程之间的服务进行接口调用,实现了类似远程方法调用(RPC,Remote Procedure Call)的效果。下面将详细...

    Android aidl Binder框架浅析

    当我们编写一个.aidl文件时,Android编译器会自动生成对应的Java接口和Stub类,这些类实现了跨进程通信的必要逻辑。 例如,假设我们有一个简单的`IService.aidl`文件: ```aidl interface IService { void send...

    Android Studio编写AIDL文件后如何实现自动编译生成

    在目录src/main 下新建了aidl 文件夹之后,在aidl文件夹中也创建了相同的包路径, 创建AIDL文件 XXX.aidl 如果XXX.aidl引用了一个java下的model例如引用了a.b.c.Model; 则需要在XXX.aidl文件中声明import a.b.c....

    android AIDL 完整DEMO

    Android AIDL(Android Interface Definition Language)是Android系统中用于实现进程间通信(IPC,Inter-Process Communication)的一种机制。在Android应用开发中,当需要在不同进程之间共享数据或调用服务时,...

    Android AIDL demo (Android Studio)

    Android Studio会自动根据AIDL文件生成对应的Java接口和辅助类。在编译后,你会在`gen/com/example/AidlDemo`目录下看到这些生成的文件。 4. **在服务中实现AIDL接口**: 在`MyService`类中,实现`IMyInterface`...

    android aidl 复杂数据类型 传图片

    在Android应用开发中,AIDL(Android Interface Definition Language)是一种强大的工具,用于实现跨进程通信(IPC,Inter-Process Communication)。当我们需要在一个Activity中调用另一个进程中服务的方法时,AIDL...

    Android AIDL使用例子

    在Android系统中,AIDL(Android Interface Definition Language)是一种用于实现进程间通信(Inter-Process Communication, IPC)的工具。AIDL使得不同进程间的组件能够相互通信,即便它们运行在不同的应用程序或...

    Android AIDL 简易demo

    2. **生成Binder类**:当构建项目时,Android编译器会自动生成对应的Java binder类,位于`build/generated/source/aidl/release/com/example/AIDLTest`目录下。这个类实现了接口,并处理了跨进程通信的细节。 3. **...

    Android Aidl

    在Android系统中,AIDL(Android Interface Definition Language)是一种接口定义语言,用于实现不同进程间的通信,即远程进程通讯。AIDL使得服务(Service)和活动(Activity)这两个独立的APK之间能够相互通信,...

    AIDL Demo

    **Android Interface Definition Language (AIDL) 入门指南** 在Android开发中,有时我们需要在不同的应用程序组件之间进行进程间通信(IPC,Inter-Process Communication)。这时,Android Interface Definition ...

    Android aidl实现传递对象

    而Android Interface Definition Language(AIDL)是Google提供的一种用于处理进程间通信的语言,它允许应用程序之间透明地交换数据。当我们需要在不同的应用之间传递复杂的对象时,AIDL就显得尤为重要。本文将深入...

    android AidlDemo(简单aidl的例子)

    在Android开发中,AIDL(Android Interface Definition Language)是一种用于进程间通信(Inter-Process Communication, IPC)的工具,使得不同应用之间的服务可以共享数据和功能。本示例"android AidlDemo(简单aidl...

    Android Aidl 测试Demo

    2. **编译AIDL**:Android Studio会自动生成对应的Java代码,位于`gen`目录下(或者在现代版本中是`build/generated/source/aidl`)。这个生成的类定义了服务端和客户端交互的 Binder 对象。 3. **实现服务端接口**...

    android AIDL demo讲解

    当编译AIDL文件时,Android编译器会自动生成相应的Java代码,这些代码实现了跨进程通信所需的代理类和Stub类。客户端通过代理类与服务端的Stub类进行交互,实现数据传递和方法调用。 1. **客户端**:调用代理类的...

Global site tag (gtag.js) - Google Analytics