我正在使用此代码:
try {
TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
Class<?> c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
com.android.internal.telephony.ITelephony telephonyService = (ITelephony) m.invoke(tm);
telephonyService = (ITelephony) m.invoke(tm);
// telephonyService.silenceRinger();
telephonyService.answerRingingCall();
} catch (Exception e) {
e.printStackTrace();
}
此代码需要Modify_phone_state权限折旧。自动接听来电的其他替代方法?
默认情况下不允许这样做,因为modify_phone_state权限不适用于第三方应用程序。
但是,您可以使用反射来调用未暴露的电话API,但这可能导致意外行为,因为这些API会随着每个Android释放而发生变化。
在此处检查此答案:如何在Android 5.0(Lollipop)中以编程方式回答传入的呼叫?