1

我使用此方法从我的应用程序启用移动数据网络:

    private void setMobileDataEnabled(Context context, boolean enabled) throws Exception  
{
    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);
}

但是,除非我通过按住主页按钮并将其从最近的应用程序列表中删除来完全关闭应用程序,否则我无法手动禁用它。有什么办法可以解决这个问题?为什么android系统的数据包数据按钮在我的应用程序关闭后仍然附着在我的应用程序上?为什么我要完全关闭它才能再次手动禁用数据?

4

0 回答 0