gpt4 book ai didi

android - 我可以在 Android 上同时打开 Wi-Fi 和蜂窝网络接口(interface)吗?

转载 作者:IT王子 更新时间:2023-10-28 23:33:03 50 4
gpt4 key购买 nike

我正在开发一个将在手机上运行的应用程序将是专用 Wi-Fi 网络上的一个站点。电话将是一个站,而不是接入点,并且专用 Wi-Fi 网络不到 Internet 的路由。我的应用程序需要与Internet 上的服务器以及本地 Wi-Fi 网络上的设备,所以它需要同时在两个网络上都有连接。我一直在想办法做到这一点。

我一直在尝试讨论中描述的技术谷歌 Android 开发者小组名为“CanAndroid 2.X 同时连接 3G 和 Wifi 数据网络?”,但是它运行不正常。我发现,当我启用通过调用蜂窝网络ConnectivityManager.setNetworkPreference(ConnectivityManager.TYPE_MOBILE),我在 Wi-Fi 网络上打开的所有套接字都已关闭。我没有试过了,但我怀疑同样的事情会发生在 socket 上当我切换回 Wi-Fi 时使用蜂窝网络。

另一个问题是,这些调用在全局范围内运行,改变了网络设置适用于整个手机,而不仅仅是应用程序。切换网络像这样全局设置会干扰任何其他应用程序恰好在手机上运行。即使在我的应用程序退出后,手机继续使用它设置的最后网络配置运行。

我正在寻找一种方法在两个蜂窝网络上都打开连接数据和 Wi-Fi 网络同时进行,不干扰手机上运行的其他应用程序。

  1. 有谁知道怎么做这个?
  2. 有人知道这是否可行吗?

最佳答案

这个话题Android: Force data to be sent over radio vs WiFi提到了解决该问题的两种可能方法。

  1. 在您希望应用使用特定连接时设置网络首选项:

    ConnectivityManager cm = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
    cm.setNetworkPreference(ConnectivityManager.TYPE_MOBILE);
  2. 启用高优先级移动数据连接:

    connectivityManager.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, "enableHIPRI");

对于第二种方法,它特别声明它适用于 Android 2.2,不知道这是否也适用于实际版本。但是据我所知,enableHIPRI 或多或少是一个隐藏的网络设置,所以如果可能的话,我更喜欢第一种方法。

关于android - 我可以在 Android 上同时打开 Wi-Fi 和蜂窝网络接口(interface)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8718434/

50 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com