Pour les appareils exécutant Android 11 ou version ultérieure, Android Comms Test Suite (ACTS) prend en charge les principaux cas d'utilisation de la 5G NSA pour les environnements mono-appareils et multi-appareils. Cette page explique comment ACTS détecte et garantit qu'un appareil est connecté à un réseau 5G NSA et vous donne un aperçu de la structure du chemin de test.
Détection
Depuis Android 11, le framework Android inclut des API pour détecter la 5G. Pour plus de détails, voir Détection 5G .
Scripting Layer For Android (SL4A) prend en charge la détection 5G en écoutant les événements LISTEN_DISPLAY_INFO_CHANGED
de PhoneStateListener
et en remplaçant la méthode onDisplayInfoChanged()
. SL4A utilise les valeurs suivantes pour distinguer les types de connexion NSA (non autonome), mmWave (onde millimétrique) et SA (autonome) pour la 5G :
Type de connexion | Valeurs |
---|---|
5G NSA | TelephonyManager.getDataNetworkType() = LTE |
5G mmWave | TelephonyDisplayInfo.getOverrideNetworkType() = NR_MMWAVE |
5G SA | TelephonyManager.getDataNetworkType() = NR |
Les tests ACTS utilisent la méthode is_current_network_5g_nsa()
pour garantir que l'appareil est connecté à un réseau 5G NSA
Chemins de test et structure de test
Tous les tests de téléphonie (1400+) dans ACTS font partie de l' annuaire tel
. Les tests 5G se trouvent dans le répertoire tools/test/connectivity/acts\_tests/tests/google/nr/
(nr signifie nouvelle radio). Avec l'introduction de la technologie d'accès radio (RAT) 5G, les tests 5G sont distincts des tests 4G, 3G, 2G et 1x pour les environnements réseau en direct afin de permettre aux tests ACTS d'être évolutifs et indépendants.
Ce qui suit décrit les classes de test pour les tests 5G.
Nsa5gActivationTest
: vérifie si un seul appareil se connecte correctement à la 5G NSA à partir de différents états.test_5g_nsa_activation_from_apm test_5g_nsa_activation_from_reboot test_5g_nsa_activation_from_3g
Nsa5gVoiceTest
: vérifie la fonctionnalité d'appel vocal entre plusieurs appareils.test_5g_nsa_call_volte_to_volte test_5g_nsa_call_volte_to_3g test_5g_nsa_call_volte_mo_hold_unhold test_5g_nsa_call_mo_volte_in_active_data_transfer test_5g_nsa_volte_in_call_wifi_toggling
Nsa5gDataTest
: vérifie les fonctionnalités des données telles que la navigation, le blocage des données et la mesure.test_5g_nsa_data_browsing test_5g_nsa_data_stall_recovery test_5g_nsa_metered_cellular test_5g_nsa_metered_airplane test_5g_nsa_metered_wifi
Nsa5gSmsTest
: vérifie l'envoi et la réception de messages SMS entre plusieurs appareils.test_5g_nsa_sms_mo_mt test_5g_nsa_sms_mo_mt_volte test_5g_nsa_sms_mo_mt_in_call_volte test_5g_nsa_sms_mo_mt_iwlan test_5g_nsa_sms_mo_mt_in_call_iwlan
Nsa5gMmsTest
: vérifie l'envoi et la réception de messages MMS entre plusieurs appareils.test_5g_nsa_mms_mo_mt test_5g_nsa_mms_mo_mt_in_call_volte test_5g_nsa_mms_mo_mt_iwlan_apm_off test_5g_nsa_mms_mo_mt_in_call_iwlan test_5g_nsa_mms_mo_mt_in_call_volte_wifi
Nsa5gTetheringTest
: vérifie le partage de connexion Wi-Fi sur un appareil connecté à la 5G NSA.test_5g_nsa_tethering_to_5gwifi test_5g_nsa_tethering_to_2gwifi
Exemple de résultat de test
Pour confirmer qu'un appareil est sur 5G NSA, recherchez les messages de journal suivants dans test_run_info.txt
.
INFO [AndroidDevice|<SERIAL_ID>] Current ModePref for Sub 2 is in
NETWORK_MODE_NR_LTE_GSM_WCDMA [tel_test_utils.py:set_preferred_network_mode_pref:7634]
INFO [AndroidDevice|<SERIAL_ID>] Got expected event {'name': 'DisplayInfoChanged',
'data': {'override': 'NR_NSA', 'network': 'LTE', 'subscriptionId': 2147483647},
'time': 1611094526689} [tel_5g_utils.py:is_current_network_5g_nsa:58]
Dépannage
Pour trier la réponse de l'API sans exécuter de test ACTS en cas d'échec, utilisez les commandes suivantes :
>> python3
>> from acts.controllers.android_device import AndroidDevice; ad = AndroidDevice('<SERIAL_ID>'); a, b = ad.get_droid()
>> a.telephonyStartTrackingDisplayInfoChange()
>> b.start()
>> b.wait_for_event("DisplayInfoChanged", lambda _: True, timeout=30)
{'name': 'DisplayInfoChanged', 'data': 'TelephonyDisplayInfo {network=LTE, override=LTE_CA, 'time': 1586483596907}