Android 11 veya üstünü çalıştıran cihazlar için Android İletişim Test Paketi (ACTS) , tek ve çoklu cihaz ortamlarına yönelik temel 5G NSA kullanım örneklerini destekler. Bu sayfa, ACTS'nin bir cihazın 5G NSA ağına bağlanmasını nasıl algıladığını ve güvence altına aldığını kapsar ve size test yolu yapısına ilişkin bir genel bakış sunar
Tespit etme
Android 11'den itibaren Android çerçevesi, 5G'yi tespit etmek için API'ler içerir. Daha fazla ayrıntı için bkz. 5G algılama .
Android için Komut Dosyası Katmanı (SL4A), PhoneStateListener
LISTEN_DISPLAY_INFO_CHANGED
olaylarını dinleyerek ve onDisplayInfoChanged()
yöntemini geçersiz kılarak 5G algılamayı destekler. SL4A, 5G için NSA (bağımsız olmayan), mmWave (milimetre dalga) ve SA (bağımsız) bağlantı türlerini ayırt etmek için aşağıdaki değerleri kullanır:
Bağlantı türü | Değerler |
---|---|
5G NSA | TelephonyManager.getDataNetworkType() = LTE |
5G mmDalga | TelephonyDisplayInfo.getOverrideNetworkType() = NR_MMWAVE |
5G SA | TelephonyManager.getDataNetworkType() = NR |
ACTS testleri, cihazın 5G NSA ağına bağlı olduğundan emin olmak için is_current_network_5g_nsa()
yöntemini kullanır
Test yolları ve test yapısı
ACTS'deki tüm telefon testleri (1400+) tel
dizininin bir parçasıdır. 5G testleri tools/test/connectivity/acts\_tests/tests/google/nr/
dizininde bulunur (nr, yeni radyo anlamına gelir). 5G radyo erişim teknolojisinin (RAT) kullanıma sunulmasıyla birlikte 5G testleri, ACTS testlerinin ölçeklenebilir ve bağımsız olmasını sağlamak amacıyla canlı ağ ortamları için 4G, 3G, 2G ve 1x'ten ayrılıyor.
Aşağıda 5G testleri için test sınıfları açıklanmaktadır.
Nsa5gActivationTest
: Tek bir cihazın çeşitli durumlardan 5G NSA'ya doğru şekilde bağlanıp bağlanmadığını doğrular.test_5g_nsa_activation_from_apm test_5g_nsa_activation_from_reboot test_5g_nsa_activation_from_3g
Nsa5gVoiceTest
: Birden fazla cihaz arasındaki sesli arama işlevini doğrular.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
: Tarama, veri duraklaması ve ölçülülük gibi veri işlevlerini doğrular.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
: Birden fazla cihaz arasında SMS mesajlarının gönderilip alındığını doğrular.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
: Birden fazla cihaz arasında MMS mesajı gönderip almayı doğrular.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
: 5G NSA'ya bağlı bir cihaz üzerinden Wi-Fi bağlantısını doğrular.test_5g_nsa_tethering_to_5gwifi test_5g_nsa_tethering_to_2gwifi
Örnek test çıktısı
Bir cihazın 5G NSA'da olduğunu doğrulamak için test_run_info.txt
dosyasında aşağıdaki günlük mesajlarını kontrol edin.
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]
Sorun giderme
Başarısızlık sırasında ACTS testi çalıştırmadan API yanıtını önceliklendirmek için aşağıdaki komutları kullanın:
>> 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}