目录

Getting Started with Network Navigator

Overview

The NetCopeilot function is supported since API version 20. Currently, it is only supported on phones and tablets.

Before app launch, developers usually need to optimize and verification app performance across diverse network conditions. For instance, after optimizing an app for smooth short video streaming during subway commutes, developers must verify whether stuttering issues have actually been resolved—but this requires testing in real-world scenarios.

Network Navigator, also known as netcopilot, provides comprehensive network simulation capabilities that enable developers to rapidly validate app user experience across typical network scenarios. This significantly improves testing efficiency and reduces verification costs. For example, developers can verify high-speed rail optimization effects without actually boarding a train.

In addition, NetCopeilot provides suggestions on data transmission optimization in these network scenarios. Your app can access Huawei Network Boost Kit to implement cross-layer collaboration between the app and the OS, improving the Internet access smoothness of the app.

For example, when transitioning between WLAN and mobile data networks while entering or exiting elevators, the app rapidly senses network interface changes and promptly redirects high-priority data requests to the new connection, ensuring seamless network switching without interruptions. When the network performance deteriorates, Network Boost Kit reports quality of service (QoS) data to assist the app in optimizing transmission scheduling.

Using Preset Network Simulation Scenarios

Network Navigator provides two access methods: the Settings interface and hdc command-line interface (CLI).

The following describes how to use NetCopilot through the settings screen. For details about how to use NetCopilot through the HDC command line, see NetCopilot Tool.

When you use this function for the first time, enable the developer mode on the device by referring to Enabling Developer Options. Then, go to Settings > System > Developer options > Network Pilot to access the Network Pilot screen.

Network Navigator has preset the following common network simulation scenarios. You can use them to quickly test app user experience.

How to Start a Network Simulation Scenario

To start network simulation, click any network simulation scenario you need from Available simulations. For example, after clicking In & out of elevator, the simulation scenario will be activated and you can view it in Active simulations.

You can also view the network simulation details in the device's live window.

How to Exit a Network Simulation Scenario

To stop a network simulation scenario, tap on the right and exit the simulation.

The following table lists the prerequisites and phases for the preset network simulation scenarios.

Network Simulation Scenario Prerequisites Scenario and Phase Description
In & out of elevator Connect to WLAN and enable mobile data switch. Simulates the scenario in which a user enters and exits elevator with network switching between WLAN and mobile network. This scenario consists of six phases, runs for 5 minutes total, and executes cyclically.
Leave home WLAN range Connect to WLAN and enable mobile data switch. Simulates the scenario in which a user leaves home, disconnecting from WLAN and switching to mobile network. This scenario consists of four phases, lasts for 3 minutes, and executes cyclically.
Enter home WLAN range Connect to WLAN and enable mobile data switch. Simulates the scenario in which a user moves from outdoor to indoor area, connecting to WLAN and disconnecting from mobile network. This scenario consists of three phases, lasts for 3 minutes, and executes cyclically.
Busy cafeteria Connect to WLAN or mobile network. Simulates a network with many connected devices, featuring high contention, low bandwidth, and high latency. This scenario consists of three phases, lasts for 5 minutes, and executes cyclically.
Parking Connect to WLAN or mobile network. Simulates a poor-quality network with weak signal, low bandwidth, and high latency. This scenario consists of three phases, lasts for 5 minutes, and executes cyclically.
Riding the subway Connect to WLAN or mobile network. Simulates a network with varying conditions, with strong signal at stations, and weak signal between stations. This scenario consists of five phases, lasts for 5 minutes, and executes cyclically.
Riding high-speed train Insert dual SIM cards and enable mobile data switch. Simulates a network with varying conditions, with frequent switching between cell towers, and intermittent loss of service. This scenario consists of five phases, lasts for 10 minutes, and executes cyclically.
Highway driving Connect to WLAN or mobile network. Simulates a network with varying conditions, with strong signal in urban areas and weak signal in tunnels. This scenario consists of five phases, lasts for 5 minutes, and executes cyclically.

For more details about the phases and network conditions, see Appendix.

Configuring a Customized Network Simulation Scenario

If the preceding preset network simulation scenarios cannot meet your development requirements, you can click Add Customized Network Scenario at the bottom of the Network Navigator page to add the required network configuration.

The value ranges of the parameters are as follows. After you enter a value for a parameter, the unit is automatically added. The parameter configuration of the customized scenario will be applied to the default network during startup. You are advised to use this function when the network environment is stable.

Parameters and options Value Range Unit
Upstream bandwidth 100 - 500000 Kbps
Downlink bandwidth. 100 - 2000000 Kbps
UL Packet Loss Rate 0.0 - 20.0 %
DL Packet Loss Rate 0.0 - 20.0 %
Uplink latency 1 - 1000 ms
Downlink delay 1 - 1000 ms

Currently, custom scenarios are not supported by Network Boost Kit. If you want to simulate the registration of the callback in a network scenario, you can use the preset network simulation scenarios.

Network Optimization Recommendations

With Network Navigator, you can monitor network changes in real time through the live window. You can also click the live window to view network simulation details. In addition, you can view network parameters and network coding best practices by clicking the respective link in the window.

Code Optimization Recommendations

Network Navigator intelligently simulates network QoS changes when activating specified scenarios, helping developers quickly build target network environments. Through this feature, developers can proactively discover app compatibility issues in different network environments and perform targeted optimization based on the best practices in this section.

Code Optimization Scenarios

Currently, eight network simulation scenarios are supported. For details, see Appendix. The network characteristics can be classified into three types: network switching, network fluctuation, and poor network quality. The following table lists the scenario characteristics and code development suggestions.

Network Switching

Poor Network Quality

Information Collection

When you use Network Navigator, your app usage records will be collected. We may contact you through the contact information linked to your HUAWEI ID for user feedback surveys, to help us further optimize this feature.

The data that will be collected includes:

Appendix

QoS in Different Network Scenarios

In & out of elevator

This scenario lasts for 5 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Waiting for the elevator 0-30s WLAN 60-140Mbps random 30-60Mbps random 0-20ms random 0.00%-0.01% random
Entering an elevator 30-90s WLAN 90-50Mbps linearDecrease 30-8Mbps linearDecrease 2-20ms linearIncrease 0.00%-0.21% random
Elevator door closing 90-100s WLAN 1-0Mbps random 1-0Mbps random 0-200ms random 0.00%-0.00% random
Elevator door closing 100-110s WLAN 1-0Mbps linearDecrease 1-0Mbps linearDecrease 200-1000ms linearIncrease 0.00%-8.00% linearIncrease
Elevator door closing 110-120s Cellular 20-50Mbps random 5-15Mbps random 0-20ms random 0.00%-0.20% random
Elevator going up 120-180s Cellular 20-50Mbps random 5-15Mbps random 0-30ms random 0.01%-0.20% random
Elevator door opening 180-210s Cellular 30-100Mbps linearIncrease 15-50Mbps linearIncrease 30-0ms linearDecrease 0.01%-0.10% random
Exiting elevator 210-240s Cellular 100-300Mbps linearIncrease 50-100Mbps linearIncrease 0-10ms random 0.00%-0.01% random
Exiting elevator 240-300s WLAN 60-140Mbps random 30-60Mbps random 10-20ms random 0.00%-0.01% random

Leave home WLAN range

This scenario lasts for 3 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
At home 0-60s WLAN 60-140Mbps random 30-60Mbps random 0-15ms random 0.00%-0.00% random
At the door 60-90s WLAN 100-50Mbps linearDecrease 40-10Mbps linearDecrease 5-15ms linearIncrease 0.00%-0.00% random
Walking away 90-110s WLAN 5-0Mbps random 5-0Mbps random 0-200ms random 0.00%-0.00% random
Walking away 110-120s WLAN 5-0Mbps linearDecrease 5-0Mbps linearDecrease 200-1000ms linearIncrease 0.00%-8.00% linearIncrease
Walking away 120-150s Cellular 200-400Mbps random 30-70Mbps random 0-35ms random 0.00%-0.00% random
On a footpath 150-180s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random

Enter home WLAN range

This scenario lasts for 3 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
In the hallway 0-60s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
At the door 60-90s Cellular 200-400Mbps random 30-70Mbps random 0-35ms random 0.00%-0.00% random
At the door 90-120s WLAN 30-50Mbps random 10-30Mbps random 10-40ms random 0.00%-0.00% random
Entering home 120-180s WLAN 60-140Mbps random 30-60Mbps random 0-20ms random 0.00%-0.00% random

Busy cafeteria

This scenario lasts for 5 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Entering cafeteria 0-60s WLAN 60-140Mbps random 30-60Mbps random 0-20ms random 0.00%-0.00% random
Queuing for food 60-120s WLAN 0-5Mbps random 0-5Mbps random 10-100ms random 0.00%-2.4% random
Sitting down to eat 120-240s WLAN 15-60Mbps random 10-20Mbps random 0-55ms random 0.00%-0.2% random
Leaving cafeteria 240-300s WLAN 60-140Mbps random 30-60Mbps random 0-20ms random 0.00%-0.00% random

Parking lot with weak signals

This scenario lasts for 5 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Heading to the parking garage 0-60s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
In a parking garage 60-240s Cellular 0-10Mbps random 0-10Mbps random 30-100ms random 0.00%-0.50% random
Exiting parking garage 240-300s Cellular 300-500Mbps random 50-100Mbps random 0-35ms random 0.00%-0.00% random

Riding the subway

This scenario lasts for 5 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Waiting for the train at the subway platform 0-30s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
Train is moving 30-150s Cellular 0-10Mbps random 0-10Mbps random 0-35ms random 0.00%-0.50% random
The train has entered the station 150-180s Cellular 300-500Mbps random 50-100Mbps random 0-35ms random 0.00%-0.00% random
Train is moving 180-270s Cellular 0-10Mbps random 0-10Mbps random 0-35ms random 0.00%-0.50% random
The train has entered the station 270-300s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random

Riding high-speed train

This scenario lasts for 10 minutes and executes cyclically.

Sub-phase Duration (min:sec) Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Waiting at a high-speed railway platform 0-60s Cellular (SIM 1) 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
The train runs on the outskirts of the city 60-120s Cellular (SIM 1) 100-250Mbps random 20-50Mbps random 0-35ms random 0.00%-0.50% random
The train is traveling in a mountainous area 120-240s Cellular (SIM 1) 0-8Mbps random 0-8Mbps random 300-2000ms random 0.00%-5.00% random
The train is traveling in a mountainous area 240-360s Cellular (SIM 2) 30-50Mbps random 10-30Mbps random 300-2000ms random 0.00%-5.00% random
The train has arrived at the station on the outskirts of a city 360-480s Cellular (SIM 1) 200-400Mbps random 30-70Mbps random 0-35ms random 0.00%-0.50% random
Exiting the train station 480-600s Cellular (SIM 1) 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random

Highway driving

This scenario lasts for 5 minutes and executes cyclically.

Sub-phase Duration Network interface. Downlink bandwidth. Downlink Bandwidth Distribution Upstream bandwidth Uplink Bandwidth Distribution Latency Delay Distribution Packet loss Packet Loss Distribution
Vehicle traveling in an urban area 0-60s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
Vehicle entering a tunnel 60-120s Cellular 0-2Mbps random 0-2Mbps random 300-2000ms random 0.00%-5.00% random
Vehicle traveling in an urban area 120-180s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random
Driving on the elevated road 180-240s Cellular 0-10Mbps random 0-10Mbps random 0-35ms random 0.00%-0.00% random
Vehicle traveling in an urban area 240-300s Cellular 300-500Mbps random 50-100Mbps random 0-25ms random 0.00%-0.00% random