Android 无法从类型上下文对非静态方法getSystemService(String)进行静态引用
我是android新手。我已经授予了所有权限。请告诉我如何使用TelephonyManager实例Android 无法从类型上下文对非静态方法getSystemService(String)进行静态引用,android,Android,我是android新手。我已经授予了所有权限。请告诉我如何使用TelephonyManager实例 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TelephonyManager telephonyManager= (TelephonyManager) Conte
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TelephonyManager telephonyManager= (TelephonyManager) Context.getSystemService(Context.TELEPHONY_SERVICE);
Class clazz = Class.forName(telephonyManager.getClass().getName());
Method method = clazz.getDeclaredMethod("getITelephony");
method.setAccessible(true);
ITelephony telephonyService = (ITelephony) method.invoke(telephonyManager);
telephonyService.endCall();
}
正如这条消息告诉您的那样,
getSystemService()
不是一个静态方法,因此您需要一个Context
实例来使用该方法
调用Context.getSystemService()
尝试静态访问它
如果要在活动中执行此操作,只需调用getSystemService()
或this.getSystemService()
,因为活动是上下文
如果您试图在片段中执行此操作,则可以调用
getContext().getSystemService()
您试图实现什么?TelephonyManager类@DiegoTorresMilanoi的实例我需要创建TelephonyManager类的实例。建议如果你做了我告诉你要做的一个更改,你现有的代码就可以工作了。