我在kiwidoc.com上使用函数setBackgroundDataSetting创建了这个类。
我只需要为我的应用程序使用此功能。
但是就像网站上说的那样:"This class is not part of the public API."
。我不能在我的IDE中使用它。
所以我google搜索这个iConnectivityManager,但我只是找不到它只有更多的文件。
我应该忘记它(我也不想要)或者有没有办法让这堂课?
谢谢,
DeDanny。
答案 0 :(得分:1)
我应该忘记它(我不想)或有没有办法让这堂课?
标准SDK应用程序无法保留更改后台数据设置所需的权限。因此,无论你是否能上这门课,都可能是无关紧要的。
答案 1 :(得分:1)
您可以通过ConnectivityManager获取iConnectivityManager的实例,请参阅以下内容: -
final ConnectivityManager conman = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
Class conmanClass conmanClass = Class.forName(conman.getClass().getName());
final java.lang.reflect.Field iConnectivityManagerField = conmanClass.getDeclaredField("mService");
iConnectivityManagerField.setAccessible(true);
final Object iConnectivityManager = iConnectivityManagerField.get(conman);
final Class iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName());
现在,您可以从此类调用任何方法或字段,实际上此类不再存在,但这是访问此类的后门方式,例如。您想要访问此类中的任何方法,请说setMobileDataEnabledMethod(),
所以
final方法setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod(“setMobileDataEnabled”,Boolean.TYPE);
类似于任何其他领域,
final java.lang.reflect.Field iConnectivityManagerField = iConnectivityManagerClass.getDeclaredField("xyz");
我希望这会清楚查询留下您的评论更多...