1

我现在正在实施一个将使用 NEHotspotHelper API 的项目。通过 Xamarin。

我知道这个 API 需要得到苹果的批准。所以我已经发送了我的请求并等待回复。

但我想先编写代码并在我的设备中进行测试。

那可能吗?

谢谢!

以下步骤是我所做的。

  1. 申请特别批准。

  2. 修改provisioning profile并添加到Keychain(没有最新批准,选择我们需要的能力)【访问WiFi信息/热点/网络扩展/无线配件配置】

  3. 更新 Entitlement.plist

3.1 将“com.apple.developer.networking.HotspotHelper”设置为true

3.2 启用“访问WiFi信息、热点、网络扩展和无线附件配置”。

  1. 更新信息.plist

4.1 使用值“network-authentication”设置“必需的后台模式”

完成以上所有操作后。我仍然得到“(0xE8008016)”可执行文件的签名无效。

4

2 回答 2

1

不,我认为在您获得 Apple 的特殊权利之前,您不能在真实设备上进行测试。

正如文件所说:

在使用之前NEHotspotHelper,您必须首先获得 Apple 授予的特殊权利 (com.apple.developer.networking.HotspotHelper)。

您得到的 error( The executable was signed with invalid entitlment) 告诉您您的权利无效的原因。

请参阅:how-can-i-get-available-wifi-list-with-nehotspothelper-ios热点网络子系统编程指南。

于 2020-05-04T09:02:32.847 回答
0

是的,你可以编译它,但我建议你等待苹果的回应。

从历史上看,他们在安全性方面非常认真,尤其是在批准使用请求方面NEHotspotHelper。甚至一些明显的应用程序使用,如物联网设备、智能家居应用程序等也被拒绝。

引用官方文档

NEHotspotHelper 仅对热点集成有用。存在技术和业务限制,使其无法用于其他任务,例如配件集成或基于 Wi-Fi 的位置。

有关 Wi-Fi 管理 API 的有用信息 -常见问题解答

编辑:关于部署到设备的一些注意事项:

  1. 您可以部署到模拟器,但什么都不会发生 - 不会调用扫描命令,代码只会注册帮助程序,仅此而已。
  2. 但是,您无法部署到真实设备,因为要做到这一点,您需要将这些权利“嵌入”到配置文件中。在您获得 Apple 的许可后,您可以修改您的配置文件,它将在底部有另一个字段用于“特殊权利”。

像这样: 在此处输入图像描述

于 2020-05-03T09:53:41.380 回答