Android 正确路由非互联网Wifi插座&;移动互联网请求(安卓L&;M)

Android 正确路由非互联网Wifi插座&;移动互联网请求(安卓L&;M),android,sockets,networking,android-5.0-lollipop,android-6.0-marshmallow,Android,Sockets,Networking,Android 5.0 Lollipop,Android 6.0 Marshmallow,是否可以将WiFi网络(用于无法访问互联网的设备)专用于应用程序中的插座,并将蜂窝网络作为Android设备(以及来自应用程序的其他网络请求)的默认互联网连接?(安卓5和6) 我可以在应用程序内轻松地在WiFi和手机间切换,但主要问题是当WiFi启动时,应用程序和设备上已运行的所有应用程序(即流媒体音乐、网络浏览器等)无法再访问互联网 我曾尝试将Wifi网络绑定到进程或套接字,但我找不到任何方法来激活网络(此时Android只是尝试将所有互联网流量路由到设备…) 我的理解是,Android 5和

是否可以将WiFi网络(用于无法访问互联网的设备)专用于应用程序中的插座,并将蜂窝网络作为Android设备(以及来自应用程序的其他网络请求)的默认互联网连接?(安卓5和6)

我可以在应用程序内轻松地在WiFi和手机间切换,但主要问题是当WiFi启动时,应用程序和设备上已运行的所有应用程序(即流媒体音乐、网络浏览器等)无法再访问互联网

我曾尝试将Wifi网络绑定到进程或套接字,但我找不到任何方法来激活网络(此时Android只是尝试将所有互联网流量路由到设备…)

我的理解是,Android 5和6提供了更大的灵活性,可以同时将流量路由到多个网络,但我认为我在这里遗漏了一些东西…

根据:

或者,如果您希望通过移动网络将部分应用程序流量路由到Wi-Fi设备,将部分应用程序流量路由到Internet:

  • 对于可以使用的HTTP请求,请直接将请求路由到此网络
  • 对于低级套接字通信,请打开套接字并呼叫,或者使用

我已经知道这些文档,但我认为我在某些方面做错了什么,无法解决一些问题:1-如果我手动添加网络,手机会连接,并且:-如果智能交换机处于活动状态,会打开一个弹出窗口。我可以在这里强制网络连接(或断开网络连接)-连接到网络,但此时没有应用程序能够使用蜂窝网络2-尝试以编程方式添加/删除网络,但:-我启用网络后仍会弹出智能网络-我不想在应用程序中创建和删除网络我想你真的应该阅读整篇博文因为它涉及获取已配置网络的列表或以完全独立于智能交换机的编程方式添加网络。只要您调用addnetwork(networkId,true),甚至在您调用WifimaManager.reconnect()之前,手机就会切换到WiFi,并为其他应用程序(如Chrome)禁用手机。如果网络在手机上保持配置且WiFi处于活动状态,则手机将连接到此网络并阻止通过手机网络访问互联网。。。似乎是棉花糖(或三星)特有的,它在另一款手机(京瓷加棒棒糖)上效果更好。