apple_bundle/entitlements/
wireless_interfaces.rs

1use serde::{Deserialize, Serialize};
2
3/// Wireless Interfaces
4#[derive(Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq)]
5pub struct WirelessInterfaces {
6    /// A Boolean value indicating whether your app can access information about the
7    /// connected Wi-Fi network.
8    ///
9    /// This key indicates whether your app may use the CNCopyCurrentNetworkInfo function
10    /// to obtain information about the current Wi-Fi network.
11    ///
12    /// To add this entitlement to your app, enable the Access WiFi Information capability
13    /// in Xcode.
14    ///
15    /// ## Availability
16    /// * iOS 12.0+
17    ///
18    /// ## Framework
19    /// * System Configuration
20    #[serde(
21        rename = "com.apple.developer.networking.wifi-info",
22        serialize_with = "crate::serialize_option",
23        skip_serializing_if = "Option::is_none"
24    )]
25    pub access_wifi_information: Option<bool>,
26    /// A Boolean value that indicates whether your app may configure MFi Wi-Fi
27    /// accessories.
28    ///
29    /// This key indicates whether your app may configure third-party hardware accessories
30    /// that use Apple's MFi licensed technology to connect to Apple devices.
31    ///
32    /// To add this entitlement to your app, enable the Wireless Accessory Configuration
33    /// capability in Xcode.
34    ///
35    /// ## Availability
36    /// * iOS 3.0+
37    ///
38    /// ## Framework
39    /// * External Accessory
40    #[serde(
41        rename = "com.apple.external-accessory.wireless-configuration",
42        serialize_with = "crate::serialize_option",
43        skip_serializing_if = "Option::is_none"
44    )]
45    pub wireless_accessory_configuration: Option<bool>,
46    /// A Boolean value indicating whether your app may use Multipath protocols to
47    /// seamlessly transition between Wi-Fi and cellular networks.
48    ///
49    /// This key Indicates whether your app may use Multipath protocols, such as Multipath
50    /// TCP, to smoothly hand over traffic from one interface to another.
51    ///
52    /// To add this entitlement to your app, enable the Multipath capability in Xcode.
53    ///
54    /// ## Availability
55    /// * iOS 3.0+
56    ///
57    /// ## Framework
58    /// * Foundation
59    #[serde(
60        rename = "com.apple.developer.networking.multipath",
61        serialize_with = "crate::serialize_option",
62        skip_serializing_if = "Option::is_none"
63    )]
64    pub multipath: Option<bool>,
65    /// A Boolean value indicating whether your app can use the hotspot manager to
66    /// configure Wi-Fi networks.
67    ///
68    /// This key indicates whether your app may use the NEHotspotConfigurationManager and
69    /// NEHotspotConfiguration classes to configure Wi-Fi networks.
70    ///
71    /// To add this entitlement to your app, enable the Hotspot Configuration capability
72    /// in Xcode.
73    ///
74    /// ## Availability
75    /// * iOS 11.0+
76    ///
77    /// ## Framework
78    /// * Network Extension
79    #[serde(
80        rename = "com.apple.developer.networking.HotspotConfiguration",
81        serialize_with = "crate::serialize_option",
82        skip_serializing_if = "Option::is_none"
83    )]
84    pub hotspot_configuration: Option<bool>,
85    /// The Near Field Communication data formats an app can read.
86    ///
87    /// To add this entitlement to your app, enable the Near Field Communication Tag
88    /// Reading capability in Xcode.
89    ///
90    /// ## Availability
91    /// * iOS 11.0+
92    ///
93    /// ## Framework
94    /// * Core NFC
95    #[serde(
96        rename = "com.apple.developer.nfc.readersession.formats",
97        skip_serializing_if = "Option::is_none",
98        serialize_with = "crate::serialize_vec_enum_option"
99    )]
100    pub near_field_communication_tag_reader_session_formats:
101        Option<Vec<NearFieldCommunicationTagReaderSessionFormats>>,
102}
103
104/// Near Field Communication Tag Reader Session Formats
105#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)]
106pub enum NearFieldCommunicationTagReaderSessionFormats {
107    /// Allows read and write access to a tag using NFCTagReaderSession.
108    #[serde(rename = "TAG")]
109    Tag,
110}