相关疑难解决方法(0)

强制Android使用没有互联网的Wifi网络

我正在构建一个Android应用程序,需要通过无法访问互联网的WiFi网络进行通信.问题是,即使连接WiFi,当wifi网络上没有连接互联网时,机器人选择使用蜂窝/移动数据.

我已经阅读了许多关于该问题的帖子,其中许多涉及生根设备,但生产应用程序无法实现这一点(根设备不是一种选择).其他解决方案(如我的代码bellow)建议使用bindProcessToNetwork()哪个在我的Sony Z2上完美运行,但在我测试的其他设备上没有(所有运行6.0.1)

private void bindToNetwork() {
    final ConnectivityManager connectivityManager = (ConnectivityManager) mActivity.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkRequest.Builder builder;
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        builder = new NetworkRequest.Builder();
        //set the transport type do WIFI
        builder.addTransportType(NetworkCapabilities.TRANSPORT_WIFI);
        connectivityManager.requestNetwork(builder.build(), new ConnectivityManager.NetworkCallback() {
            @Override
            public void onAvailable(Network network) {
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {


                    connectivityManager.bindProcessToNetwork(null);
                    if (barCodeData.getSsid().contains("screenspace")) {
                        connectivityManager.bindProcessToNetwork(network);
                    }

                } else {
                    //This method was deprecated in API level 23
                    ConnectivityManager.setProcessDefaultNetwork(null);
                    if (barCodeData.getSsid().contains("screenspace")) {

                        ConnectivityManager.setProcessDefaultNetwork(network);
                    }
                }

                connectivityManager.unregisterNetworkCallback(this);
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

networking android wifi access-point iot

29
推荐指数
1
解决办法
7751
查看次数

当Wi-Fi无法访问互联网时,Android Lollipop默认为移动数据?

Android LollipopWi-Fi您连接到没有Internet访问权限时,似乎默认为Mobile Data .有人知道这是否在某处正式记录?

我们有一个应用程序需要连接到Wi-Fi没有Internet的机器.我们的客户现在报告Wi-Fi连接不再起作用,因为手机会自动切换到LTE.

我的理解是手机仍然保持Wi-Fi连接,但LTE除了提供对互联网的访问之外(棒棒糖 - 功能 - 聚光灯 - 机器人 - 现在 - 默认 - 移动 - 数据 - 当-wi-fi-has-no- internet-access-signal-icon-added-a-for-no-connection).

我对这个功能的理解是错误的吗?如果是这样,有没有办法强制使用没有互联网的Wi-Fi?我在开发人员文档中找不到任何相关内容.

任何帮助都非常感谢.

connection android wifi android-5.0-lollipop

18
推荐指数
2
解决办法
8769
查看次数

Android:仅通过WIFI发送数据

我有一个在后台运行并将数据发送到服务器的服务,我想只通过wifi发送这些数据而不是另一种方式(gprs或其他)可能吗?如果是的话,我怎么能实现呢?如果你有样本代码或链接会很棒.谢谢.

service android wifi

0
推荐指数
1
解决办法
2332
查看次数