Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.

Menyiapkan CTS

Untuk menjalankan CTS, pertama-tama siapkan lingkungan fisik, mesin desktop, dan perangkat Android yang Anda gunakan untuk pengujian.

Lingkungan fisik

Beacon Bluetooth LE

Jika perangkat yang diuji (DUT) mendukung Bluetooth LE, tempatkan setidaknya tiga beacon Bluetooth LE dalam jarak 5 meter dari DUT untuk pengujian pemindaian Bluetooth LE. Beacon tersebut tidak perlu dikonfigurasi atau memancarkan sesuatu yang spesifik, dan dapat berupa apa saja, termasuk iBeacon, Eddystone, atau bahkan perangkat yang mensimulasikan beacon BLE.

Kamera

Saat menjalankan CTS kamera, gunakan kondisi pencahayaan normal dengan bagan pola uji (seperti pola kotak-kotak). Tempatkan bagan pola uji sesuai dengan jarak fokus minimum DUT untuk memastikan bahwa itu tidak terlalu dekat dengan lensa.

Arahkan sensor kamera untuk adegan dengan pencahayaan yang cukup untuk memungkinkan sensor diuji untuk mencapai dan tetap berada di maksimum dikonfigurasi sasaran frame per detik (FPS) sebagaimana ditentukan dalam CONTROL_AE_TARGET_FPS_RANGE . Hal ini berlaku untuk semua sensor kamera dilansir getCameraIdList sebagai iterates tes atas perangkat dan langkah-langkah yang tercantum kinerja individual.

Jika DUT mendukung kamera eksternal, seperti webcam USB, colokkan kamera eksternal saat menjalankan CTS. Jika tidak, tes CTS gagal.

GPS/GNSS

Jika DUT mendukung fitur sistem penentuan posisi global/sistem satelit navigasi global (GPS/GNSS), berikan sinyal GPS/GNSS ke DUT pada tingkat sinyal yang sesuai untuk penerimaan dan penghitungan lokasi GPS. Bagian GPS harus sesuai dengan ICD-GPS-200C. Jika tidak, sinyal GPS/GNSS dapat berupa apa saja, termasuk simulator satelit atau repeater GPS/GNSS dari sinyal luar ruangan, atau Anda dapat menempatkan DUT cukup dekat ke jendela sehingga dapat langsung menerima sinyal GPS/GNSS yang cukup.

Wi-Fi dan IPv6

Tes CTS memerlukan jaringan Wi-Fi yang mendukung IPv6, memiliki koneksi internet, dan dapat memperlakukan DUT sebagai klien yang terisolasi. Klien yang terisolasi mengacu pada konfigurasi di mana DUT tidak memiliki visibilitas ke pesan broadcast/multinetwork pada subnetwork tersebut. Ini terjadi dengan konfigurasi Wi-Fi AP atau dengan menjalankan DUT pada subjaringan yang terisolasi tanpa perangkat lain yang terhubung.

Jika Anda tidak memiliki akses ke jaringan IPv6 asli, jaringan operator IPv6, atau VPN untuk lulus beberapa pengujian tergantung pada IPv6, Anda dapat menggunakan titik akses Wi-Fi dan terowongan IPv6. Lihat Wikipedia daftar IPv6 broker terowongan .

Wi-Fi RTT

Android termasuk API Wi-Fi RTT untuk Wi-Fi round trip kali (RTT) kemampuan. Hal ini memungkinkan perangkat untuk mengukur jaraknya ke titik akses dengan akurasi 1 hingga 2 meter, yang secara signifikan meningkatkan akurasi lokasi dalam ruangan. Dua perangkat direkomendasikan mendukung Wi-Fi RTT adalah Google Wifi dan jalur akses fitlet2 Compulab ini (set dengan bandwidth 40 MHz pada 5 GHz).

Jalur akses harus dihidupkan, tetapi tidak memerlukan koneksi jaringan. Titik akses tidak perlu berada di sebelah perangkat pengujian tetapi disarankan berada dalam jarak 40 kaki dari DUT. Satu jalur akses biasanya cukup.

Pengaturan mesin desktop

ADB dan AAPT

Sebelum menjalankan CTS, pastikan bahwa Anda telah menginstal versi terbaru dari kedua Debug Bridge Android (adb) dan Android Asset Packaging Tool (AAPT) dan menambahkan lokasi alat tersebut ke jalur sistem mesin Anda.

Untuk menginstal ADB, download Android SDK Tools paket untuk sistem operasi Anda, membukanya, dan ikuti petunjuk dalam file README yang disertakan. Untuk informasi pemecahan masalah, lihat Memasang Stand-alone SDK Tools .

Pastikan adb dan aapt berada di jalur sistem anda. Perintah berikut mengasumsikan bahwa Anda telah membuka arsip paket di direktori home Anda:

export PATH=$PATH:$HOME/android-sdk-linux/build-tools/version

Kit Pengembangan Java untuk Ubuntu

Menginstal versi yang tepat dari Java Development Kit (JDK) .

  • Untuk Android 11, instal OpenJDK11.
  • Untuk Android 9 dan Android 10, instal OpenJDK9.
  • Untuk Android 7.0, 7.1, 8.0 dan 8.1, instal OpenJDK8.

Untuk rincian, lihat persyaratan JDK .

file CTS

Download dan membuka paket CTS dari Uji Kompatibilitas Suite Download pencocokan versi Android perangkat Anda dan semua interface biner aplikasi (ABI) bahwa perangkat Anda mendukung.

Download dan buka versi terbaru dari file media CTS .

Deteksi perangkat

Ikuti langkah untuk mengatur sistem anda untuk mendeteksi perangkat Anda .

Batas memori

Anda mungkin ingin meningkatkan memori maksimum yang tersedia selama uji coba di cts-tradfed naskah. Mengacu pada contoh CL untuk informasi lebih lanjut.

Pengaturan perangkat Android

Buatan pengguna

Perangkat yang kompatibel didefinisikan sebagai perangkat dengan build yang ditandatangani pengguna/kunci rilis. Perangkat Anda harus menjalankan gambar sistem berdasarkan diketahui pengguna membangun kompatibel (Android 4.0 atau lebih tinggi) dari codenames, Tag, dan Nomor Build .

Properti build level API pertama

Persyaratan CTS tertentu bergantung pada build yang awalnya disertakan dengan perangkat. Misalnya, perangkat yang awalnya dikirimkan dengan versi sebelumnya mungkin dikecualikan dari persyaratan sistem yang berlaku untuk perangkat yang dikirimkan dengan versi yang lebih baru.

Untuk membuat informasi ini tersedia untuk CTS, produsen perangkat bisa didefinisikan membangun-waktu properti ro.product.first_api_level . Nilai properti ini adalah API level pertama yang digunakan perangkat untuk diluncurkan secara komersial.

Produsen perangkat dapat menggunakan kembali implementasi dasar umum untuk meluncurkan produk baru sebagai peningkatan dari produk yang sudah ada dalam grup perangkat yang sama. Produsen perangkat opsional dapat mengatur tingkat API dari produk yang sudah ada untuk ro.product.first_api_level , sehingga peningkatan persyaratan diterapkan untuk CTS dan Treble / VTS.

Produsen perangkat dapat menambahkan PRODUCT_PROPERTY_OVERRIDES ke mereka device.mk berkas untuk mengatur properti ini, seperti yang ditunjukkan dalam contoh berikut:

#ro.product.first_api_level indicates the first api level that the device has
been commercially launched on.
PRODUCT_PROPERTY_OVERRIDES +=\
ro.product.first_api_level=21

Level API pertama untuk Android 9 atau lebih tinggi

Untuk perangkat diluncurkan dengan Android 9 atau lebih tinggi, mengatur ro.product.first_api_level properti untuk nilai yang valid dari codenames, Tag, dan Nomor Build .

Level API pertama untuk Android 8.x atau lebih rendah

Untuk perangkat diluncurkan pada 8.x Android atau lebih rendah, unset (remove) yang ro.product.first_api_level properti untuk membangun pertama dari produk. Untuk semua berikutnya membangun, set ro.product.first_api_level dengan nilai tingkat API yang benar. Hal ini memungkinkan properti untuk mengidentifikasi produk baru dengan benar dan menyimpan informasi tentang level API pertama produk tersebut. Jika bendera tidak disetel, Android memberikan Build.VERSION.SDK_INT ke ro.product.first_api_level .

Paket CTS Shim

Android 10 atau lebih tinggi termasuk format paket bernama APEX . Untuk menjalankan tes CTS untuk API manajemen APEX (seperti memperbarui ke versi baru atau pelaporan apexes aktif) Anda harus preinstall sebuah CtsShimApex paket pada /system partisi.

APEX shim uji validasi memverifikasi pelaksanaan CtsShimApex .

ro.apex.updatable persyaratan

  • Jika ro.apex.updatable properti diatur ke true , CtsShimApex diperlukan untuk semua perangkat yang mendukung APEX manajemen paket.

  • Jika ro.apex.updatable properti yang hilang atau tidak diatur, CtsShimApex tidak diperlukan untuk terinstal pada perangkat.

APEX shim uji validasi memverifikasi pelaksanaan CtsShimApex .

CtsShim telah menginstal dan memuatnya

Dimulai dengan Android 11, CtsShimApex berisi dua aplikasi prebuilt (dibangun dari sumber membangun ), yang tidak mengandung kode apapun kecuali untuk manifes. CTS menggunakan aplikasi ini untuk menguji hak istimewa dan izin.

Jika perangkat tidak mendukung APEX manajemen paket (yaitu, ro.apex.updatable properti yang hilang atau tidak diatur), atau jika perangkat menjalankan versi 10 atau lebih rendah, dua aplikasi prebuilt harus terinstal di sistem secara terpisah.

Versi Perangkat Pra-instal
(jika APEX didukung)
Pramuat
LENGAN x86 LENGAN x86
Android 12 android12-lengan-release
di bawah /system/apex/com.android.apex.cts.shim.apex
android12-x86-rilis
di bawah /system/apex/com.android.apex.cts.shim.apex
android12-arm-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android12-arm-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

android12-x86-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android12-x86-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

Android 11 android11-lengan-rilis
di bawah /system/apex/com.android.apex.cts.shim.apex
rilis android11-x86
di bawah /system/apex/com.android.apex.cts.shim.apex
android11-arm-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android11-arm-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

android11-x86-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android11-x86-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

Android 10 rilis android10
di bawah /system/apex/com.android.apex.cts.shim.apex
android10-arm-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android10-arm-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

android10-x86-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

android10-x86-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

Android 9, O, dan O-MR1 T/A T/A arm-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

arm-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

x86-CtsShim.apk
di bawah /system/app/CtsShimPrebuilt.apk

x86-CtsShimPriv.apk
di bawah /system/priv-app/CtsShimPrivPrebuilt.apk

Untuk lulus pengujian, pramuat aplikasi ke direktori yang sesuai pada citra sistem tanpa menandatangani ulang aplikasi.

Contoh Applet

Android 9 memperkenalkan Open Mobile API. Untuk perangkat yang melaporkan lebih dari satu elemen aman, CTS menambahkan kasus uji untuk memvalidasi perilaku Open Mobile API. Kasus uji ini memerlukan instalasi satu kali dari applet sampel ke dalam Elemen Aman (eSE) yang disematkan pada DUT atau ke dalam kartu SIM yang digunakan oleh DUT. The sampel applet ESE dan sampel applet SIM dapat ditemukan di AOSP.

Lihat CTS Uji Secure Element untuk informasi lebih lanjut rinci tentang Open Mobile uji API kasus dan Access Control uji kasus.

Persyaratan penyimpanan

Media CTS menekankan tes memerlukan klip video untuk berada di penyimpanan eksternal ( /sdcard ). Sebagian klip adalah dari Big Buck Bunny , yang merupakan hak cipta oleh Blender Foundation di bawah Creative Commons Attribution 3.0 lisensi .

Ruang yang diperlukan tergantung pada resolusi pemutaran video maksimum yang didukung oleh perangkat. Lihat bagian 5 di dokumen Definition Android Kompatibilitas untuk versi platform resolusi yang dibutuhkan.

Berikut adalah persyaratan penyimpanan berdasarkan resolusi pemutaran video maksimum:

  • 480x360: 98 MB
  • 720x480: 193 MB
  • 1280x720: 606 MB
  • 1920x1080: 1863 MB

Layar dan penyimpanan

  • Perangkat apa pun yang tidak memiliki layar tersemat harus disambungkan ke layar.
  • Jika perangkat memiliki slot kartu memori, colokkan kartu SD kosong. Gunakan kartu SD yang mendukung bus ultra high speed (UHS) dengan kapasitas SDHC atau SDXC atau yang memiliki kecepatan minimal kelas 10 atau lebih tinggi untuk memastikan dapat lulus CTS.

  • Jika perangkat memiliki slot kartu SIM, colokkan kartu SIM yang diaktifkan ke setiap slot. Jika perangkat mendukung SMS, setiap kartu SIM harus diisi kolom nomornya sendiri. Untuk perangkat yang menjalankan Android 12 atau lebih tinggi, semua kartu SIM harus memiliki dukungan untuk menyimpan nomor panggilan yang disingkat (ADN). Kartu GSM dan USIM dengan telekomunikasi khusus berkas (DF Telecom) memenuhi persyaratan ini.

Pengembang UICC

Untuk menjalankan CTS tes operator API, perangkat harus menggunakan SIM dengan hak operator CTS memenuhi persyaratan yang ditentukan dalam Mempersiapkan UICC yang .

Konfigurasi perangkat Android

  1. Data pabrik ulang perangkat: Pengaturan> Backup & ulang> Factory data reset.

  2. Mengatur bahasa perangkat Anda ke Bahasa Inggris (Amerika Serikat): Pengaturan> Bahasa & masukan> Bahasa.

  3. Jika dukungan perangkat menyesuaikan font default, mengatur default sans-serif font yang keluarga untuk Roboto (default sans-serif keluarga font yang digunakan dalam AOSP membangun).

  4. Aktifkan setelan lokasi jika ada GPS atau / fitur jaringan selular Wi-Fi pada perangkat: Setelan> Lokasi> On.

  5. Menghubungkan ke jaringan Wi-Fi yang mendukung IPv6, dapat mengobati DUT sebagai klien terisolasi (lihat Lingkungan fisik di atas), dan memiliki koneksi internet: Pengaturan> Wi-Fi.

  6. Pastikan bahwa tidak ada pola kunci atau password ditetapkan pada perangkat: Pengaturan> Keamanan> Kunci layar> Tidak ada.

  7. Aktifkan USB debugging pada perangkat Anda: Setelan> Opsi Pengembang> USB debugging.

  8. Mengatur waktu untuk format 12 jam: Pengaturan> Tanggal & waktu> Gunakan format 24-jam> Off.

  9. Mengatur perangkat untuk tetap terjaga: Pengaturan> Opsi pengembang> Tetap Terjaga> On.

  10. Dalam 5.x Android dan 4.4.x saja, mengatur perangkat untuk memungkinkan lokasi mock: Pengaturan> Opsi pengembang> Izinkan lokasi palsu> On.

  11. Dalam Android 4.2 atau lebih tinggi, matikan USB verifikasi aplikasi: Setelan> Opsi Pengembang> Verifikasi aplikasi melalui USB> Off.

  12. Luncurkan browser dan tutup layar pengaktifan/pengaturan apa pun.

  13. Hubungkan mesin desktop yang akan digunakan untuk menguji perangkat dengan kabel USB.

Instalasi berkas

Instal dan konfigurasikan aplikasi pembantu di perangkat.

  1. Siapkan perangkat Anda sesuai dengan versi CTS Anda:

    • CTS versi 2.1 R2 melalui 4,2 R4: Siapkan perangkat Anda (atau emulator) untuk menjalankan tes aksesibilitas dengan: abd install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk

      Pada perangkat, memungkinkan delegasi: Pengaturan> Aksesibilitas> Aksesibilitas> Mendelegasikan Aksesibilitas Service.

    • Versi CTS 6.x atau menurunkan: Pada perangkat yang mendeklarasikan android.software.device_admin , mengatur perangkat Anda untuk menjalankan tes administrasi perangkat menggunakan: adb install -r android-cts/repository/testcases/CtsDeviceAdmin.apk`

      Di Settings> Security> Pilih administrator perangkat, memungkinkan kedua android.deviceadmin.cts.CtsDeviceAdminReceiver* perangkat administrator. Pastikan bahwa android.deviceadmin.cts.CtsDeviceAdminDeactivatedReceiver dan setiap administrator perangkat preloaded lainnya tetap dinonaktifkan.

  2. Salin file media CTS ke perangkat sebagai berikut:

    1. Arahkan ( cd ) ke jalan di mana file media di-download dan membuka ritsleting.
    2. Mengubah hak akses file: chmod u+x copy_media.sh

    3. Salin file yang diperlukan:

      • Untuk menyalin klip hingga resolusi 720x480, jalankan:

        ./copy_media.sh 720x480
        
      • Jika Anda tidak yakin dengan resolusi maksimum, salin semua file:

        ./copy_media.sh all
        
      • Jika ada beberapa perangkat di bawah adb, tambahkan opsi serial ( -s ) dari perangkat tertentu sampai akhir. Misalnya, untuk menyalin hingga 720x480 ke perangkat dengan serial 1234567, jalankan:

        ./copy_media.sh 720x480 -s 1234567