Android Wifi Direct:连接到已知对等方时避免用户接受

在使用WiFi Direct连接到对等端时,需要用户的许可。 我知道,如果没有用户从不授予权限,就无法build立连接,并且有这种function的function请求: https : //code.google.com/p/android/issues/detail?id=30880

但是我不需要这个function,要求在第一个连接上的权限是OK的(也更安全)。 有没有什么方法只是第一次被要求许可? 而当以后尝试连接到相同的对等,权限不是必需的。

Solutions Collecting From Web of "Android Wifi Direct:连接到已知对等方时避免用户接受"

从P2P规范中,我们可以find一个名为“持久性P2P组”的东西,它意在重新build立一个组,而不需要用户干预。

在持久性P2P组中,组所有者存储组的凭证,以便在任何组成员的请求下可以在将来重新build立组而不需要用户干预。

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

编辑:请参阅问题的答案是否可以在Wi-Fi Direct中更改持久组中的组所有者?

由于我在Ubuntu上使用Wi-Fi Direct,因此我使用wpa_cli (随wpa_supplicant )创build了一个持久组,如p2p_readme文件中所指定的p2p_readme

Wi-Fi Directfunction最接近的一点是,我已经pipe理的服务发现与传统模式相结合,即当连接应该发生时,不使用WifiP2pManager.connect(),而使用WifiManager.enableNetwork )来代替。

我是一个非常简单的P2P堆栈的作者,它可以自动化所有的魔法,你可以在https://github.com/croconaut/wifon-mini上查看一个例子,看看它是如何工作的(还有一些文档) 。

不幸的是,目前还没有。 也许在将来,或者如果你写自己的ROM。

我使用两个HTC One V以及一个HTC One X +。 我一直在运行由Android给出的WifiDirectDemo。 除了直接打开Wifi直接,不需要其他设置。 我只需按下应用程序中的searchbutton,即可列出相应的对象。

我首先想到的是我需要另外一个设备权限,正如你所描述的那样,每次我在我的设备上安装应用程序时都需要重新启用它。 但是这是在我注意到应用程序中的searchbutton之前,并且意识到这不是必需的。

你能和我犯同样的错误吗?

它可能通过reflection方法。