/
NetworkReachability.xml
460 lines (457 loc) · 26.5 KB
/
NetworkReachability.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
<Type Name="NetworkReachability" FullName="SystemConfiguration.NetworkReachability">
<TypeSignature Language="C#" Value="public class NetworkReachability : IDisposable, ObjCRuntime.INativeObject" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit NetworkReachability extends System.Object implements class ObjCRuntime.INativeObject, class System.IDisposable" />
<TypeSignature Language="DocId" Value="T:SystemConfiguration.NetworkReachability" />
<TypeSignature Language="F#" Value="type NetworkReachability = class
 interface INativeObject
 interface IDisposable" />
<AssemblyInfo>
<AssemblyName>Xamarin.iOS</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>ObjCRuntime.INativeObject</InterfaceName>
</Interface>
<Interface>
<InterfaceName>System.IDisposable</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>Used to detect the reachability of the network and to get notifications on network reachability changes.</summary>
<remarks>
<para>You instantiate this class with a hostname or an IP address, and then use the <see cref="M:SystemConfiguration.NetworkReachability.TryGetFlags(SystemConfiguration.NetworkReachabilityFlags@)" /> to get the reachability status. </para>
<para>To be notified of changes in the reachability of the specified host, you use the <see cref="M:SystemConfiguration.NetworkReachability.SetNotification(SystemConfiguration.NetworkReachability.Notification)" /> method to register a callback that will be invoked when there is a network reachability event and then call one of the <see cref="M:SystemConfiguration.NetworkReachability.Schedule(CoreFoundation.CFRunLoop,System.String)" /> methods to start the event delivery. Additionally, <see cref="M:SystemConfiguration.NetworkReachability.SetDispatchQueue(CoreFoundation.DispatchQueue)" /> can be used to configure the queue upon which the notification is invoked.</para>
<para>
You can detect the ad-hoc WiFi network using the IP address 169.254.0.0 and the general network availability with 0.0.0.0. </para>
<example>
<code lang="csharp lang-csharp"><![CDATA[// Track the reachability to a specific host
void Setup ()
{
reachability = new NetworkReachability ("www.google.com");
// Need to probe before we queue, or we wont get any meaningful values
// this only happens when you create NetworkReachability from a hostname
reachable = reachability.TryGetFlags (out flags);
reachability.SetNotification (OnChange);
reachability.Schedule (CFRunLoop.Current, CFRunLoop.ModeDefault);
}
void OnChange (NetworkReachabilityFlags flags)
{
Console.WriteLine ("New state for host: " + flags);
}
]]></code>
</example>
</remarks>
<related type="sample" href="https://github.com/xamarin/ios-samples/tree/master/ReachabilitySample/">reachability</related>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public NetworkReachability (System.Net.IPAddress ip);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Net.IPAddress ip) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.#ctor(System.Net.IPAddress)" />
<MemberSignature Language="F#" Value="new SystemConfiguration.NetworkReachability : System.Net.IPAddress -> SystemConfiguration.NetworkReachability" Usage="new SystemConfiguration.NetworkReachability ip" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="ip" Type="System.Net.IPAddress" />
</Parameters>
<Docs>
<param name="ip">The IP address. Only IPV4 is supported.</param>
<summary>Creates a network reachability class based on an IP address.</summary>
<remarks>In addition to probing general hosts on the Internet, you can detect the ad-hoc WiFi network using the IP address 169.254.0.0 and the general network availability with 0.0.0.0. </remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public NetworkReachability (string address);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string address) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.#ctor(System.String)" />
<MemberSignature Language="F#" Value="new SystemConfiguration.NetworkReachability : string -> SystemConfiguration.NetworkReachability" Usage="new SystemConfiguration.NetworkReachability address" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="address" Type="System.String" />
</Parameters>
<Docs>
<param name="address">A host name.</param>
<summary>Creates a network reachability object from a hostname.</summary>
<remarks>The hostname is resolved using the current DNS settings.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public NetworkReachability (System.Net.IPAddress localAddress, System.Net.IPAddress remoteAddress);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Net.IPAddress localAddress, class System.Net.IPAddress remoteAddress) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.#ctor(System.Net.IPAddress,System.Net.IPAddress)" />
<MemberSignature Language="F#" Value="new SystemConfiguration.NetworkReachability : System.Net.IPAddress * System.Net.IPAddress -> SystemConfiguration.NetworkReachability" Usage="new SystemConfiguration.NetworkReachability (localAddress, remoteAddress)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="localAddress" Type="System.Net.IPAddress" />
<Parameter Name="remoteAddress" Type="System.Net.IPAddress" />
</Parameters>
<Docs>
<param name="localAddress">Local address to monitor, this can be null if you are not interested in the local changes.</param>
<param name="remoteAddress">Remote address to monitor, this can be null if you are not interested in the remote changes.</param>
<summary>Creates a network reachability object from a local IP address and a remote one.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Dispose">
<MemberSignature Language="C#" Value="public void Dispose ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void Dispose() cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Dispose" />
<MemberSignature Language="F#" Value="abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit" Usage="networkReachability.Dispose " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.IDisposable.Dispose</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Releases the resources used by the NetworkReachability object.</summary>
<remarks>
<para>The Dispose method releases the resources used by the NetworkReachability class.</para>
<para>Calling the Dispose method when the application is finished using the NetworkReachability ensures that all external resources used by this managed object are released as soon as possible. Once developers have invoked the Dispose method, the object is no longer useful and developers should no longer make any calls to it. For more information on releasing resources see ``Cleaning up Unmananaged Resources'' at https://msdn.microsoft.com/en-us/library/498928w2.aspx</para>
</remarks>
</Docs>
</Member>
<Member MemberName="Dispose">
<MemberSignature Language="C#" Value="protected virtual void Dispose (bool disposing);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void Dispose(bool disposing) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Dispose(System.Boolean)" />
<MemberSignature Language="F#" Value="abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit" Usage="networkReachability.Dispose disposing" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="disposing" Type="System.Boolean" />
</Parameters>
<Docs>
<param name="disposing">
<para>If set to <see langword="true" />, the method is invoked directly and will dispose manage and unmanaged resources; If set to <see langword="false" /> the method is being called by the garbage collector finalizer and should only release unmanaged resources.</para>
</param>
<summary>Releases the resources used by the NetworkReachability object.</summary>
<remarks>
<para>This Dispose method releases the resources used by the NetworkReachability class.</para>
<para>This method is called by both the Dispose() method and the object finalizer (Finalize). When invoked by the Dispose method, the parameter disposing <paramref name="disposing" /> is set to <see langword="true" /> and any managed object references that this object holds are also disposed or released; when invoked by the object finalizer, on the finalizer thread the value is set to <see langword="false" />. </para>
<para>Calling the Dispose method when the application is finished using the NetworkReachability ensures that all external resources used by this managed object are released as soon as possible. Once developers have invoked the Dispose method, the object is no longer useful and developers should no longer make any calls to it.</para>
<para> For more information on how to override this method and on the Dispose/IDisposable pattern, read the ``Implementing a Dispose Method'' document at https://msdn.microsoft.com/en-us/library/fs2xkftw.aspx</para>
</remarks>
</Docs>
</Member>
<Member MemberName="Finalize">
<MemberSignature Language="C#" Value="~NetworkReachability ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void Finalize() cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Finalize" />
<MemberSignature Language="F#" Value="override this.Finalize : unit -> unit" Usage="networkReachability.Finalize " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Finalizer for the NetworkReachability object</summary>
<remarks>
</remarks>
</Docs>
</Member>
<Member MemberName="GetFlags">
<MemberSignature Language="C#" Value="public SystemConfiguration.StatusCode GetFlags (out SystemConfiguration.NetworkReachabilityFlags flags);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype SystemConfiguration.StatusCode GetFlags([out] valuetype SystemConfiguration.NetworkReachabilityFlags& flags) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.GetFlags(SystemConfiguration.NetworkReachabilityFlags@)" />
<MemberSignature Language="F#" Value="member this.GetFlags : -> SystemConfiguration.StatusCode" Usage="networkReachability.GetFlags flags" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>SystemConfiguration.StatusCode</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="flags" Type="SystemConfiguration.NetworkReachabilityFlags" RefType="out" />
</Parameters>
<Docs>
<param name="flags">Returned value of the current reachability for the specified host.</param>
<summary>Method used to get the current reachability flags for this host.</summary>
<returns>Returned value of the current reachability for the specified host.</returns>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Handle">
<MemberSignature Language="C#" Value="public IntPtr Handle { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance native int Handle" />
<MemberSignature Language="DocId" Value="P:SystemConfiguration.NetworkReachability.Handle" />
<MemberSignature Language="F#" Value="member this.Handle : nativeint" Usage="SystemConfiguration.NetworkReachability.Handle" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:ObjCRuntime.INativeObject.Handle</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.IntPtr</ReturnType>
</ReturnValue>
<Docs>
<summary>Handle (pointer) to the unmanaged object representation.</summary>
<value>A pointer</value>
<remarks>This IntPtr is a handle to the underlying unmanaged representation for this object.</remarks>
</Docs>
</Member>
<Member MemberName="Schedule">
<MemberSignature Language="C#" Value="public bool Schedule ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Schedule() cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Schedule" />
<MemberSignature Language="F#" Value="member this.Schedule : unit -> bool" Usage="networkReachability.Schedule " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Schedules the delivery of the events (what is set with SetCallback) on the current loop.</summary>
<returns>True if the operation succeeded, false otherwise.</returns>
<remarks>This schedules using the <see cref="P:CoreFoundation.CFRunLoop.Current" /> and the <see cref="P:CoreFoundation.CFRunLoop.ModeDefault" />.</remarks>
</Docs>
</Member>
<Member MemberName="Schedule">
<MemberSignature Language="C#" Value="public bool Schedule (CoreFoundation.CFRunLoop runLoop, string mode);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Schedule(class CoreFoundation.CFRunLoop runLoop, string mode) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Schedule(CoreFoundation.CFRunLoop,System.String)" />
<MemberSignature Language="F#" Value="member this.Schedule : CoreFoundation.CFRunLoop * string -> bool" Usage="networkReachability.Schedule (runLoop, mode)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="runLoop" Type="CoreFoundation.CFRunLoop" />
<Parameter Name="mode" Type="System.String" />
</Parameters>
<Docs>
<param name="runLoop">The run loop where the reachability callback is invoked.</param>
<param name="mode">The run loop mode.</param>
<summary>Schedules the delivery of the events (what is set with SetCallback) on the given run loop.</summary>
<returns>True if the operation succeeded, false otherwise.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetDispatchQueue">
<MemberSignature Language="C#" Value="public bool SetDispatchQueue (CoreFoundation.DispatchQueue queue);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool SetDispatchQueue(class CoreFoundation.DispatchQueue queue) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.SetDispatchQueue(CoreFoundation.DispatchQueue)" />
<MemberSignature Language="F#" Value="member this.SetDispatchQueue : CoreFoundation.DispatchQueue -> bool" Usage="networkReachability.SetDispatchQueue queue" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="queue" Type="CoreFoundation.DispatchQueue" />
</Parameters>
<Docs>
<param name="queue">The queue on which the notification will be posted. Pass <see langword="null" /> to disable notifications on the specified queue.</param>
<summary>Specifies the <see cref="T:CoreFoundation.DispatchQueue" /> to be used for callbacks.</summary>
<returns>True on success, false on failure.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetNotification">
<MemberSignature Language="C#" Value="public SystemConfiguration.StatusCode SetNotification (SystemConfiguration.NetworkReachability.Notification callback);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance valuetype SystemConfiguration.StatusCode SetNotification(class SystemConfiguration.NetworkReachability/Notification callback) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.SetNotification(SystemConfiguration.NetworkReachability.Notification)" />
<MemberSignature Language="F#" Value="member this.SetNotification : SystemConfiguration.NetworkReachability.Notification -> SystemConfiguration.StatusCode" Usage="networkReachability.SetNotification callback" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>SystemConfiguration.StatusCode</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="callback" Type="SystemConfiguration.NetworkReachability+Notification" />
</Parameters>
<Docs>
<param name="callback">The method to invoke on a network reachability change.</param>
<summary>Configures the method to be invoked when network reachability changes.</summary>
<returns>True if the operation succeeded, false otherwise.</returns>
<remarks>The notification is invoked on either the runloop configured in the call to <see cref="M:SystemConfiguration.NetworkReachability.Schedule(CoreFoundation.CFRunLoop,System.String)" />, or dispatched on the queue specified with <see cref="M:SystemConfiguration.NetworkReachability.SetDispatchQueue(CoreFoundation.DispatchQueue)" /></remarks>
</Docs>
</Member>
<Member MemberName="TryGetFlags">
<MemberSignature Language="C#" Value="public bool TryGetFlags (out SystemConfiguration.NetworkReachabilityFlags flags);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool TryGetFlags([out] valuetype SystemConfiguration.NetworkReachabilityFlags& flags) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.TryGetFlags(SystemConfiguration.NetworkReachabilityFlags@)" />
<MemberSignature Language="F#" Value="member this.TryGetFlags : -> bool" Usage="networkReachability.TryGetFlags flags" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="flags" Type="SystemConfiguration.NetworkReachabilityFlags" RefType="out" />
</Parameters>
<Docs>
<param name="flags">Returned value of the current reachability for the specified host.</param>
<summary>Method used to get the current reachability flags for this host.</summary>
<returns>Detailed status flag.</returns>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Unschedule">
<MemberSignature Language="C#" Value="public bool Unschedule ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Unschedule() cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Unschedule" />
<MemberSignature Language="F#" Value="member this.Unschedule : unit -> bool" Usage="networkReachability.Unschedule " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Removes the NetworkRechability from the given run loop.</summary>
<returns>True if the operation succeeded, false otherwise.</returns>
<remarks>This unschedules the notifications from the <see cref="P:CoreFoundation.CFRunLoop.Current" /> and the <see cref="P:CoreFoundation.CFRunLoop.ModeDefault" />.</remarks>
</Docs>
</Member>
<Member MemberName="Unschedule">
<MemberSignature Language="C#" Value="public bool Unschedule (CoreFoundation.CFRunLoop runLoop, string mode);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance bool Unschedule(class CoreFoundation.CFRunLoop runLoop, string mode) cil managed" />
<MemberSignature Language="DocId" Value="M:SystemConfiguration.NetworkReachability.Unschedule(CoreFoundation.CFRunLoop,System.String)" />
<MemberSignature Language="F#" Value="member this.Unschedule : CoreFoundation.CFRunLoop * string -> bool" Usage="networkReachability.Unschedule (runLoop, mode)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyName>Xamarin.iOS</AssemblyName>
</AssemblyInfo>
<AssemblyInfo>
<AssemblyName>Xamarin.Mac</AssemblyName>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="runLoop" Type="CoreFoundation.CFRunLoop" />
<Parameter Name="mode" Type="System.String" />
</Parameters>
<Docs>
<param name="runLoop">The run loop where the object was previously scheduled.</param>
<param name="mode">The mode used.</param>
<summary>Removes the NetworkRechability from the given run loop.</summary>
<returns>True on success.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>