【问题标题】:Android Wifi Direct: Avoiding user acceptance when connecting to a known peerAndroid Wifi Direct:连接到已知对等方时避免用户接受
【发布时间】:2012-12-05 13:58:50
【问题描述】:

使用 WiFi Direct 连接到对等点时,需要用户许可。我知道如果没有用户从未给予许可,就无法建立连接,并且对这种功能有功能请求: https://code.google.com/p/android/issues/detail?id=30880

但我不需要这个功能,在第一次连接时请求许可就可以(也更安全)。是否有任何方法可以仅在第一次请求许可?并且稍后尝试连接到同一个对等方时,不需要权限。

【问题讨论】:

  • 是否可以在未经用户同意的情况下直接连接wifi。是否有任何可用的清单权限?
  • 是的,有一种方法可以绕过,它有效! stackoverflow.com/a/45673308/6681300可能重复

标签: android user-permissions wifi-direct


【解决方案1】:

很遗憾,目前不是。也许在将来,或者如果您编写自己的 ROM。

【讨论】:

    【解决方案2】:

    我正在使用两个 HTC One V 和一个 HTC One X+。我一直在运行Android给出的WifiDirectDemo。除了打开 Wifi Direct 之外,不需要其他设置。我只需在应用程序中按一个搜索按钮,就会列出同行。

    我起初确实认为我需要另一个设备权限,正如您所描述的,每次我在设备上安装应用程序时都需要重新启用它。但这是在我注意到应用程序中的搜索按钮之前,并意识到这不是必需的。

    你会不会犯和我一样的错误?

    【讨论】:

      【解决方案3】:

      从 P2P 规范中,我们可以找到一种叫做“持久 P2P 组”的东西,它旨在在没有用户干预的情况下重新建立一个组。

      在持久 P2P 组中,组所有者存储组的凭据,以便将来可以根据任何组成员的请求重新建立组,而无需用户干预。

      这样的组可以通过在使用命令行连接时指定持久性来形成(参见wpa_supplicant的P2P并搜索p2p_connect命令https://android.googlesource.com/platform/external/wpa_supplicant_8/+/ics-plus-aosp/wpa_supplicant/README-P2P)。但我不知道该选项是否适用于当前设备。

      编辑: 查看问题的答案Can I change the group owner in a persistent group in Wi-Fi Direct?

      由于我在 Ubuntu 上使用 Wi-Fi Direct,因此我使用 wpa_cli(与 wpa_supplicant 一起提供)创建了一个在 p2p_readme 文件中指定的持久组。

      【讨论】:

        【解决方案4】:

        可以通过反射法实现。

        【讨论】:

        • 您能进一步解释一下吗?
        • 有趣,没有解释但获得了 +50 赏金?怎么了?
        【解决方案5】:

        我管理的最接近没有提示的 Wi-Fi Direct 功能是使用服务发现与传统模式相结合,即当连接应该发生时,你不使用 WifiP2pManager.connect() 但 WifiManager .enableNetwork() 代替。

        我是一个非常简单的 P2P 堆栈的作者,它可以自动执行所有魔法,您可以查看 https://github.com/croconaut/wifon-mini 上的示例,了解它的工作好坏(以及一些文档)。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2015-04-22
          • 2012-11-03
          • 1970-01-01
          • 2023-03-12
          • 2012-09-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多