Overview
The Android Open Network Configuration Policy lets administrators deploy one or more Wi-Fi network profiles to Android devices enrolled in Swif.
The policy uses Google's Open Network Configuration (ONC) format, a JSON-based standard for describing network settings. Swif builds the ONC payload from the values entered in the policy and sends it to Android through the Android Management API.
Use this policy to:
Add managed Wi-Fi networks to Android devices
Configure an open, WEP, or pre-shared-key Wi-Fi network
Automatically connect devices when a configured network is available
Deploy several Wi-Fi profiles in one policy
Use a stable network identifier so a configuration can be updated consistently
This policy configures Wi-Fi profiles. It does not configure Android Private DNS, DNS over TLS, VPN settings, or Wi-Fi allowlists and blocklists.
Requirements
Requirement | Details |
Supported platform | Android |
Minimum version | Android 9 or later |
Device ownership | Company-owned and BYOD |
Device management | The device must be enrolled in Swif through Android Enterprise |
Connectivity | The device must be online to receive the policy |
Network information | The administrator must know the exact SSID, security mode, and applicable passphrase |
Test the policy on each Android version and device model used by your organization before broad deployment.
How the Policy Works
Each entry under Network Configurations represents one Wi-Fi profile. Swif converts the entry into an ONC NetworkConfiguration object and places it in the Android Management API policy.
For each network, Swif configures:
A unique GUID
A user-facing network name
The
WiFinetwork typeThe broadcast SSID
The security mode
A passphrase when required
Auto-connect behavior
Swif automatically sets the top-level ONC type to:
UnencryptedConfiguration
Despite its name, this does not mean that Swif sends the configuration to the device without transport protection. Google requires an ONC configuration inside an Android Management API policy to be omitted or labeled UnencryptedConfiguration because the policy is already encrypted by the service. Google also applies an additional layer of protection to sensitive values such as passphrases and private keys. See Google's network configuration documentation.
Scope and Limitations
The Android Management API supports only a subset of the broader ONC specification. The current Swif policy exposes a smaller set of fields for basic Wi-Fi deployment.
The policy does not currently expose fields for:
Hidden SSIDs
Hexadecimal SSIDs
Manual or PAC proxy configuration
MAC address randomization mode
EAP identities and authentication methods
Server CA or client certificate references
Certificate payloads
The Security menu includes enterprise values such as WPA-EAP, WEP-8021X, and WPA3-Enterprise_192. However, a valid enterprise Wi-Fi profile normally also requires EAP and certificate or credential settings that are not available in this policy form. Do not use those enterprise values unless Swif has added the required fields or Swif Support has confirmed a supported deployment method for your configuration.
For a basic deployment, use this policy for:
NoneWEP-PSK, only when an unavoidable legacy network requires itWPA-PSK
WEP is obsolete and insecure. Migrate legacy WEP networks to WPA2 or WPA3 wherever possible.
Create the Policy
Sign in to the Swif Admin Dashboard.
Go to Device Management > Policies.
Create a new policy.
Select Android Open Network Configuration Policy.
Enter a descriptive policy name, such as
Android Corporate Wi-Fi.Under Network Configurations, add a network entry.
Configure its GUID, name, type, and Wi-Fi settings.
Add any additional networks the device should receive.
Assign the policy to a test device or device group.
Save the policy and allow the device to check in.
Verify that the Wi-Fi profile appears and connects as expected.
Expand the assignment after testing succeeds.
Policy Settings
Network Configurations
Contains the list of Wi-Fi networks delivered by the policy.
You can add multiple network definitions. Each definition must contain:
Network GUID
Network Name
Network Type
Wi-Fi Settings
Use a separate, unique GUID for every network entry.
Network GUID
Provides the unique identifier for the network configuration.
The GUID does not need to match the SSID, but it must be unique within the ONC configuration. A UUID is recommended because it reduces the chance of duplication.
Example:
97295d58-47e7-4ad3-a606-60b85f3d88a5
Keep the same GUID when updating an existing managed network. Changing the GUID can cause Android to treat the entry as a different network configuration.
Do not reuse one GUID for several SSIDs.
Network Name
Specifies the friendly name associated with the Wi-Fi configuration.
For clarity, use the same value as the SSID unless your organization has a reason to use a different display name.
Example:
Company-WiFi
Network Type
Identifies the type of network represented by the entry.
Supported value:
WiFi
Default:
WiFi
Google's Android Management API does not support other ONC network types in openNetworkConfiguration.
SSID
Specifies the exact name broadcast by the wireless network.
The SSID is case-sensitive. Enter it exactly as configured on the wireless access points.
Example:
Company-WiFi
The current Swif policy requires an SSID and does not expose ONC's HexSSID or HiddenSSID fields. It is therefore not suitable for a network that requires those fields.
Security
Specifies the security protocol used by the Wi-Fi network.
Default:
WPA-PSK
The policy displays the following ONC values:
Value | Intended use | Guidance |
| Open network without a passphrase | Avoid for corporate use because traffic and access are not protected by Wi-Fi authentication. |
| Legacy WEP network | Avoid. WEP is insecure and supported only for legacy compatibility. |
| Wi-Fi network using a shared pre-shared key | Recommended for supported basic configurations in this policy. |
| Enterprise Wi-Fi using EAP | Additional EAP settings are required but are not exposed by the current policy form. |
| Legacy enterprise WEP | Additional 802.1X settings are required and WEP is insecure. |
| WPA3 Enterprise 192-bit mode | Requires EAP-TLS and certificate-related settings that are not exposed by the current policy form. |
Selecting a security label alone does not create a complete enterprise authentication configuration.
Passphrase
Specifies the shared credential used to authenticate to the Wi-Fi network.
The field is normally required for:
WPA-PSKWEP-PSK
Leave it empty for None.
For WEP-PSK, Google supports only 40-bit, 10-digit hexadecimal keys or 104-bit, 26-digit hexadecimal keys. The 0x prefix described by the general ONC specification is not required by Android.
Protect access to policies containing shared Wi-Fi credentials. Rotate the passphrase according to your security requirements and update the policy when the network credential changes.
Auto Connect
Controls whether Android enables the managed network for automatic connection.
Default:
Enabled
Value | Behavior |
Enabled | Android enables the saved network and can connect automatically when it is available. |
Disabled | Android saves the network but does not initially enable automatic connection. The user must select it manually once. |
Google notes that after a user manually connects to a profile with AutoConnect set to false, Android treats the network as enabled and may connect automatically later unless the user disables auto-connect for that network.
This policy setting is therefore not a permanent prohibition against automatically reconnecting.
Recommended Configuration
For a basic organization-managed Wi-Fi network:
Setting | Recommended value |
Network GUID | A unique, stable UUID |
Network Name | The corporate SSID or a clear friendly name |
Network Type |
|
SSID | The exact broadcast SSID |
Security |
|
Passphrase | The current approved network passphrase |
Auto Connect | Enabled |
Where possible, use certificate-based WPA Enterprise instead of a shared password for stronger user and device authentication. The current policy form does not expose the necessary EAP and certificate fields, so use a Swif-supported enterprise Wi-Fi workflow when those controls are required.
Configuration Examples
Configure a WPA Pre-Shared-Key Network
Setting | Example value |
Network GUID |
|
Network Name |
|
Network Type |
|
SSID |
|
Security |
|
Passphrase | Your organization's Wi-Fi passphrase |
Auto Connect | Enabled |
Replace the example GUID and network values with your own. Do not publish a real production passphrase in documentation, screenshots, tickets, or chat messages.
Add a Guest Network Without Automatic Connection
Setting | Example value |
Network GUID |
|
Network Name |
|
Network Type |
|
SSID |
|
Security |
|
Passphrase | The guest network passphrase |
Auto Connect | Disabled |
Android saves this network but does not initially connect automatically. A user can select it manually when needed.
Deploy Multiple Wi-Fi Networks
Add a separate entry under Network Configurations for each office, floor, or regional network.
For example:
Network | GUID | Auto Connect |
| A unique UUID for the San Francisco network | Enabled |
| A different UUID for the New York network | Enabled |
| A different UUID for the guest network | Disabled |
Do not reuse a GUID across the three entries.
Verify the Policy
After assigning the policy:
Confirm that the Android device is online in Swif.
Confirm that it runs Android 9 or later.
Confirm that the policy reports as installed or applied.
On the device, open Settings > Network & internet > Internet. Menu names can vary by manufacturer.
Confirm that the configured SSID appears as a saved network.
If Auto Connect is enabled and the network is in range, confirm that the device connects.
Confirm that the device receives an IP address and can reach required internal and external services.
Turn Wi-Fi off and back on, then confirm that automatic reconnection works.
If several networks were configured, verify each one at a location where it is available.
Review the policy report for validation or noncompliance errors.
Test with a device that has another recovery path, such as cellular connectivity or a separately configured Wi-Fi network. An incorrect managed profile can prevent the device from reaching Swif to receive a correction.
Relationship to Android Connection Policy
Use the two policies for different purposes:
Policy | Purpose |
Android Open Network Configuration Policy | Creates and configures Wi-Fi network profiles. |
Android Connection Policy | Controls connectivity behavior, including applicable Wi-Fi restrictions, allowlists, or disallow lists. |
Configuring a network with ONC does not automatically prevent users from joining other networks.
Google supports disabling manual Wi-Fi configuration on fully managed devices. If you use that restriction, make sure at least one valid Wi-Fi network is deployed first. Google warns that disabling user Wi-Fi configuration without declaring a usable managed network can disable Wi-Fi access and leave the device unable to join any wireless network.
What This Policy Does Not Configure
The Android Open Network Configuration Policy does not configure:
Android Private DNS
DNS over TLS or DNS over HTTPS
A device-wide DNS resolver
VPN applications or VPN tunnels
Cellular access
Wi-Fi allowlists or blocklists
Complete EAP or certificate-based enterprise Wi-Fi profiles through the currently exposed fields
Android Private DNS is a global device setting, not a property of an ONC Wi-Fi profile. Do not use this policy to deploy Cloudflare, Google, or another DNS-over-TLS provider.
Security Considerations
Prefer WPA2 or WPA3 security over open or WEP networks.
Avoid WEP even though Android retains legacy support for it.
Treat a pre-shared Wi-Fi passphrase as a credential.
Restrict administrator access to policies containing network secrets.
Rotate shared keys when an employee with access leaves or when exposure is suspected.
Use a separate guest network for unmanaged or visitor devices.
Validate server certificates and domain suffixes when using enterprise EAP authentication through a supported configuration method.
Do not disable all manual Wi-Fi configuration until a tested managed network is present.
Test policy changes before removing a working network profile.
For higher-security deployments, certificate-based authentication avoids distributing one reusable passphrase across the fleet and provides better device-level revocation.
Troubleshooting
The Policy Reports Installed but the Network Does Not Appear
Check the following:
The device runs Android 9 or later.
The device is enrolled and online.
Network GUID, Network Name, Network Type, and Wi-Fi Settings are present.
Network Type is set to
WiFi.The SSID is entered exactly, including capitalization and spaces.
Each network has a unique GUID.
The selected security mode is compatible with the fields configured in the policy.
The device has checked in since the policy was assigned or changed.
Review the policy report for an INVALID_VALUE, API-level, or ONC validation error.
The Device Does Not Connect Automatically
Confirm that:
Auto Connect is enabled.
The SSID is currently in range.
The passphrase is correct.
The access point accepts the selected security mode.
The device is not blocked by MAC filtering, network access control, or another wireless policy.
The network's DHCP service can assign an address.
The user has not disabled auto-connect for that saved network in Android settings.
Android's per-network user setting can affect later connection behavior independently of the ONC AutoConnect value.
Authentication Fails on a WPA-PSK Network
Confirm that Security is
WPA-PSK.Re-enter the current network passphrase.
Check for leading or trailing spaces in the SSID or passphrase.
Confirm that the access point is not configured exclusively for an unsupported authentication mode.
Test the same credential manually on a separate device.
Verify that the account or device is not blocked by network access control.
Do not expose the passphrase in the Swif policy report or a support ticket. Use an approved secret-sharing method if Swif Support needs to reproduce the issue.
An Enterprise Security Mode Does Not Work
WPA-EAP, WEP-8021X, and WPA3-Enterprise_192 require more than a security value. Depending on the network, Android may require an outer EAP method, an inner method, identity information, certificate references, and a non-empty DomainSuffixMatch value.
The current policy form does not expose those fields. Use a supported enterprise Wi-Fi and certificate deployment workflow instead of entering only the enterprise security value.
Google rejects enterprise wireless configurations without a valid domain suffix match because they do not securely validate the authentication server.
A WEP Network Is Rejected
For WEP-PSK, use a supported hexadecimal key length:
10 hexadecimal digits for a 40-bit key
26 hexadecimal digits for a 104-bit key
The 0x prefix is optional on Android. Migrate away from WEP rather than deploying it broadly.
The Device Connects to Other Wi-Fi Networks
This is expected. The ONC policy adds managed network profiles but does not create an allowlist or blocklist.
Use the applicable settings in Android Connection Policy to restrict other network connections. Test restrictions carefully so the device retains a working path to Swif.
The Device Loses Network Access
Check whether:
The SSID or passphrase changed.
The security mode was entered incorrectly.
User Wi-Fi configuration was disabled before a usable managed network was installed.
The network requires a captive portal, EAP configuration, client certificate, proxy, or other setting not exposed by this policy.
DHCP, DNS, firewall, or network access control is blocking connectivity.
If possible, restore connectivity through cellular service or a known working Wi-Fi network so the device can receive a corrected policy.
Updating the Policy Creates a Second Network
Confirm that the existing network's Network GUID was preserved. Changing the GUID can cause Android to interpret the updated entry as a new configuration.
Use a stable GUID for the life of each managed network profile.
Change or Remove the Policy
To change a managed Wi-Fi network:
Edit the existing policy.
Preserve the network's GUID.
Update the SSID, passphrase, security mode, or auto-connect value as required.
Save the policy.
Allow assigned devices to check in.
Verify connectivity before expanding the change.
To stop managing the configuration:
Remove the policy assignment or delete the policy.
Allow the device to check in.
Confirm whether the managed profile is removed from the device.
Verify that the device still has an approved network path.
Do not remove a working network profile from remotely managed devices until an alternative connection is available.
Notes
Android 9 or later is required.
Company-owned and BYOD devices are supported.
The policy can contain multiple network configurations.
Every network requires a unique GUID, name, type, and Wi-Fi settings object.
WiFiis the only supported network type.WPA-PSKis the default security mode.Auto Connect is enabled by default.
Swif automatically builds the ONC payload and sets its top-level type to
UnencryptedConfiguration.An empty or incomplete enterprise Wi-Fi definition may be rejected by Android.
The policy does not configure Android Private DNS or encrypted DNS.
Use Android Connection Policy for applicable network restrictions and allowlist or disallow-list controls.
Summary
The Android Open Network Configuration Policy provides a centralized way to add basic managed Wi-Fi profiles to Android devices enrolled in Swif.
For a reliable deployment:
Use a unique and stable GUID for every network.
Enter the SSID exactly as broadcast.
Select a security mode that the current policy fields can fully configure.
Avoid open and WEP networks.
Enable Auto Connect for required corporate networks.
Test on a small device group with a backup connectivity path.
Use Android Connection Policy when additional network restrictions are required.
Use a supported enterprise Wi-Fi workflow when EAP or certificates are required.