Android 设备上是否可以使用原生 C++ WiFi P2P 网络?

Is native C++ WiFi P2P networking possible on Android Devices?

我当前的 Android 项目需要能够使用某种 WiFi(例如 WiFi、WiFi Direct、WiFi Aware 等)在相邻设备上设置 "local" p2p 网络。

尝试了 Android API(但无法找到任何支持 Aware 的设备)后,我未能提供可靠的应用程序,该应用程序可以自动检测相邻设备和建立可用的 p2p 网络。

我尝试过的方法包括"Create P2P connections with Wi-Fi Direct"、"Connect devices wirelessly"和"Nearby Connections"

None 这些方法(或任何组合)提供了一种可靠、可重复的自动建立 p2p 网络的方法。

我不认为这是一个难题space,我不明白为什么在相邻设备之间建立可靠的 p2p 网络似乎是不可能的。

我一直在寻找替代方法,其中之一是使用本机 C++ 代码来实现所需的结果。

因为我没有使用 Android NDK 的经验,所以这个决定被证明是具有挑战性的。

我找不到任何 Android C++ WiFi 示例/教程等。

是否可以在 Android 上为 WiFi 应用程序使用 C++?

我是否被迫使用高级 Android WiFi API?

不可以,除非您可以获得 root 权限,否则没有通过 NDK 访问您设备的 WiFi 功能的快捷方式。即使那样,潜在的问题也不会消失,只会更糟。与您正在谈论的不同供应商支持的风格相比,WiFi 的 C++ 实现在设备和平台版本之间的标准化程度甚至更低。