android - 原生 C++ WiFi P2P 网络可以在 Android 设备上使用吗?
问题描述
我当前的 Android 项目需要能够使用某种 WiFi(例如 WiFi、WiFi Direct、WiFi Aware 等)在相邻设备上设置“本地”p2p 网络。
尝试了 Android API(并且无法找到任何支持 Aware 的设备)后,我未能提供能够自动检测相邻设备并建立可用 p2p 网络的可靠应用程序。
我尝试过的方法包括“使用 Wi-Fi Direct 创建 P2P 连接”、“无线连接设备”和“附近连接”
这些方法(或任何组合)都没有为自动建立 p2p 网络提供可靠、可重复的方法。
我不认为这是一个困难的问题空间,我不明白为什么在相邻设备之间建立可靠的 p2p 网络似乎是不可能的。
我一直在寻找替代方法,其中一种是使用本机 C++ 代码来实现所需的结果。
由于我没有使用 Android NDK 的经验,因此这个决定具有挑战性。
我找不到任何 Android C++ WiFi 示例/教程等。
是否可以在 Android 上为 WiFi 应用程序使用 C++?
我是否被迫使用高级 Android WiFi API?
解决方案
不,没有通过 NDK 到您设备的 WiFi 功能的快捷方式,除非您可以获得 root 权限。即使那样,潜在的问题也不会消失,只会变得更糟。与您正在谈论的不同供应商支持的风格相比,WiFi 的 C++ 实现在设备和平台版本之间的标准化程度甚至更低。
推荐阅读
- swift - 在 Swift 中替换索引处的字符
- c - Arduino代码不处理串行输出
- nginx - nginx: [emerg] "location" 指令在 /etc/nginx/nginx.conf:16 中是不允许的
- spring - 运行两个 Spring Boot 实例
- formula - Netsuite - 保存的搜索:显示可用的套件
- airflow - 如何将气流日志写入 Elasticsearch?
- ruby-on-rails - Rails 5 - 无法验证 CSRF 令牌的真实性 - 只有有时
- android - 当我尝试将数据从一个活动传递到另一个活动时,我的应用程序崩溃了
- node.js - 将 req.body 中的空字符串 ''" 替换为 null/undefined
- java - 将 main 方法中的变量与另一个 Java 方法连接起来