【问题标题】:Getting status of 'Mobile network', status of autoconnect 3g after wifi drops获取“移动网络”状态,wifi 掉线后自动连接 3g 的状态
【发布时间】:2011-11-30 22:04:43
【问题描述】:

我只是 Java 的初学者,正在为我的安卓手机开发这个应用程序。

我正在寻找的是在 wifi 开启时获取移动网络自动连接的状态。

我已经检查了 wifi 是否启用,我可以检查 3g 是否打开,但 3g 被禁用,因为 wifi 是连接的“主”并接管/禁用 3g。 我的应用程序有可能关闭 wifi。但是关闭wifi后,3g就出现了。如果在设备或其他东西中设置了自动连接到 3g,我想要状态。之后我想关闭 3g 连接,但这将是下一章。此状态可在设置无线和网络 -> 移动网络 [复选框]

中找到

在这里和谷歌进行了大量搜索,但没有运气。也许在这里问...

更新: 现在查看系统偏好。找出状态是否存储在那里。

【问题讨论】:

    标签: java android status 3g


    【解决方案1】:

    找到上述问题的解决方案:

     public Boolean isMobileDataEnabled(){
        Object connectivityService = getSystemService(CONNECTIVITY_SERVICE); 
        ConnectivityManager cm = (ConnectivityManager) connectivityService;
    
        try {
            Class<?> c = Class.forName(cm.getClass().getName());
            Method m = c.getDeclaredMethod("getMobileDataEnabled");
            m.setAccessible(true);
            return (Boolean)m.invoke(cm);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    

    【讨论】:

    • 谢谢,解决了我的问题。它是正确的方法 oppsite "setMobileDataEnabled"。
    猜你喜欢
    • 1970-01-01
    • 2015-04-05
    • 2011-08-27
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    • 1970-01-01
    • 2017-03-11
    • 2019-04-22
    相关资源
    最近更新 更多