相关疑难解决方法(0)

什么是反思,为什么它有用?

什么是反思,为什么它有用?

我对Java特别感兴趣,但我认为在任何语言中原则都是一样的.

java reflection terminology

2011
推荐指数
19
解决办法
85万
查看次数

为什么ITelephony.aidl有效?

我看到一些SO帖子讨论了如何以程序方式结束电话,例如,这个.是的,人们专注于结果,但没有人真正解释它为什么起作用的原因

我尝试了代码,效果很好.但是我想了解更多关于底下发生的事情的细节?为什么通过创建ITelephony.aidl,ITelephony我们的项目中暴露了android隐藏的内部接口?我们如何创建ITelephony.aidl和自动生成的java(/gen/ITelephony.java)链接到 android的ITelephony界面?是否只是因为名称匹配(包名和援助文件名)?

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

Class c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);

//Why does the android internal ITelephony interface is exposed after created the ITelephony.aidl?
com.android.internal.telephony.ITelephony telephonyService = (ITelephony) m.invoke(tm);
telephonyService.endCall(); 
Run Code Online (Sandbox Code Playgroud)

performance android aidl android-intent telephonymanager

28
推荐指数
1
解决办法
1万
查看次数


如何在Android 8.0 Oreo上以编程方式结束来电

截至到Android 7.1,有可能最终通过来电ITelephony.endCall()方法,并给予您的应用程序的权限android.permission.CALL_PHONEandroid.permission.READ_PHONE_STATE.

在做同样的事情时Android 8.0 Oreo (API 26),我得到这个错误

12-09 18:11:25.195 16833-16833/li.doerf.leavemealone E/TelephonyServiceCallHangup:缺少权限MODIFY_PHONE_STATE,无法挂断电话

由于MODIFY_PHONE_STATE是受保护的权限,我的应用无法获取.有没有办法以编程方式结束来电Android 8.0+

android telephony android-permissions android-8.0-oreo

14
推荐指数
1
解决办法
3388
查看次数

如何以编程方式在android中转发语音邮件

我不知道如何在android中以编程方式转发语音邮件?

android voicemail phone-call

9
推荐指数
1
解决办法
2443
查看次数

在Android 6.0中回答来电

有没有办法在没有root权限的情况下以编程方式回答Android 6.0中的来电?我尝试了以下方法:

  1. 内部ITelephony.aidl方法 - 有了这个我能够结束通话.但是接听电话需要android.permission.MODIFY_PHONE_STATE在Android 6.0中未提供给第三方应用.
  2. 耳机KeyCode意图方法.这根本不起作用.

android android-permissions android-6.0-marshmallow

8
推荐指数
2
解决办法
8036
查看次数