利用反射来关闭开启GPRS

来源:互联网 发布:天翼飞young mac 编辑:程序博客网 时间:2024/05/29 11:09
private void setMobileDataEnabled(Context context, boolean enabled)throws ClassNotFoundException, SecurityException,NoSuchFieldException, IllegalArgumentException,IllegalAccessException, NoSuchMethodException,InvocationTargetException {final ConnectivityManager conman = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);final Class conmanClass = Class.forName(conman.getClass().getName());final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService");iConnectivityManagerField.setAccessible(true);final Object iConnectivityManager = iConnectivityManagerField.get(conman);final Class iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName());final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE);setMobileDataEnabledMethod.setAccessible(true);setMobileDataEnabledMethod.invoke(iConnectivityManager, enabled);}

原创粉丝点击