Class VpnHoodIosApp
Provides the app on iOS, from the init params of every platform and the two iOS facts. The Network Extension is a binary of its own and never runs it.
public class VpnHoodIosApp : Singleton<VpnHoodIosApp>
- Inheritance
-
VpnHoodIosApp
- Inherited Members
Methods
Dispose(bool)
Releases the instance; with disposing and when it is the registered one, unregisters it.
protected override void Dispose(bool disposing)
Parameters
Init(IosInitParams)
Starts the app, once; a second call gives the app started already.
public static VpnHoodIosApp Init(IosInitParams initParams)
Parameters
initParamsIosInitParamsThe init params.
Returns
- VpnHoodIosApp
The app.
Remarks
It keeps what must not travel with a backup in a folder beside the storage, which it marks for iOS not to back up; a mark that cannot be set is logged. On tvOS, which may empty every folder an app writes, it keeps the storage in the app's defaults. An ad provider that names countries both to include and to exclude fails the start.
Exceptions
- ArgumentNullException
The init params' app name is null.
- OverflowException
A duration in a built-in access key is out of range.
- InvalidDataException
A built-in access key decodes to JSON
null.- JsonException
A built-in access key holds no valid access key.
- NotSupportedException
A built-in access key's version is not one the app reads.
- FormatException
A built-in access key is no valid Base64, or an endpoint or a duration in it is not valid.
- ArgumentException
The init params' app name is empty.
- InvalidOperationException
The init params name no storage folder, or an App Group without a container, as where the entitlements lack it; the platform has no local app data folder; or the app's storage has no parent folder.