在我的Receiver类中调用此方法,扩展BroadcastReceiver以取消传入的调用。在编译时代码中没有错误,但是当调用此方法时,抛出异常。
异常
空对象引用上的java.lang异常android.content.context.getsystemservice(java.lang.string)'
代码
private void disconnectPhoneItelephony(Context context)
{
ITelephony telephonyService;
TelephonyManager telephony = (TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
try
{
Class c = Class.forName(telephony.getClass().getName());
Method m = c.getDeclaredMethod("getITelephony");
m.setAccessible(true);
telephonyService = (ITelephony) m.invoke(telephony);
telephonyService.endCall();
}
catch (Exception e)
{
e.printStackTrace();
}
}
答案 0 :(得分:1)
确保将Context
正确转发到您的方法。在public abstract void onReceive (Context context, Intent intent)
要正确回答此问题,请展示整个班级,并确保使用正确的disconnectPhoneItelephony()
实例调用Context
。