Menguji cara aplikasi menangani perubahan perilaku

Pratinjau Developer Wear OS 5 didasarkan pada Android 14 (level API 34), yang merupakan versi yang lebih baru dibandingkan dengan versi yang digunakan Wear OS 4 (Android 13, atau API level 33). Jadi, saat menyiapkan aplikasi Wear OS untuk digunakan pada Pratinjau Developer Wear OS 5, Anda harus menangani perubahan perilaku sistem yang memengaruhi semua aplikasi di Android 14, serta perubahan untuk aplikasi yang menargetkan Android 14.

Perubahan Wear OS 5 yang memengaruhi semua aplikasi

Perubahan perilaku berikut memengaruhi kasus penggunaan dan library yang khusus untuk Wear OS. Perubahan ini memengaruhi semua aplikasi yang berjalan di Wear OS 5, apa pun versi SDK target.

Dasbor privasi

Pratinjau Developer Wear OS 5 menambahkan dukungan untuk dasbor privasi, yang awalnya diluncurkan di perangkat seluler di Android 12.

Dasbor privasi menawarkan tampilan terpusat setiap penggunaan data aplikasi kepada pengguna, termasuk detail berikut:

  • Jenis data yang sedang diakses, seperti lokasi dan mikrofon.
  • Kapan jenis data tersebut diakses.

Dengan akses ke informasi ini, pengguna dapat membuat keputusan yang lebih tepat terkait aplikasi yang harus tetap memiliki akses ke data pribadi mereka. Untuk menjaga kepercayaan pengguna, gunakan data secara bertanggung jawab dan bersikaplah transparan saat mengumpulkan serta menggunakan data pengguna.

Sebagian besar sumber data detail memerlukan penggunaan Format Tampilan Jam

Dalam versi Wear OS mendatang, termasuk Pratinjau Developer Wear OS 5, tampilan jam harus menggunakan Format Tampilan Jam untuk mendukung detail yang berisi data pengguna. Sebaiknya perbarui tampilan jam untuk menggunakan Format Tampilan Jam. Pelajari lebih lanjut perubahan pada detail ini.

Menonaktifkan sementara perubahan untuk tujuan pengujian

Fitur ini diaktifkan secara default. Untuk menonaktifkan tombol fitur yang sesuai dengan perubahan ini untuk tujuan pengujian, gunakan perintah berikut:

adb shell device_config put wear_services \
  com.google.wear.services.infra.flags.restrict_complications_flag false && \
  adb reboot

Perubahan Wear OS 5 yang memengaruhi aplikasi yang menargetkan Android 14

Perubahan berikut memengaruhi aplikasi hanya jika Anda mengupdate versi SDK target ke Android 14, versi yang menjadi dasar Pratinjau Developer Wear OS 5.

Aplikasi yang selalu aktif dapat dipindahkan ke latar belakang

Mulai Pratinjau Developer Wear OS 5, sistem akan memindahkan aplikasi yang selalu aktif ke latar belakang setelah terlihat dalam mode standby selama jangka waktu tertentu. Pengguna dapat mengonfigurasi waktu tunggu di setelan sistem.

Jika aplikasi yang selalu aktif menampilkan informasi tentang tugas pengguna yang sedang berlangsung—seperti pemutaran musik atau sesi olahraga—Anda mungkin ingin mempertahankan aktivitas berkelanjutan hingga tugas berakhir. Untuk melakukannya, gunakan Ongoing Activity API untuk memposting notifikasi berkelanjutan yang ditautkan ke aktivitas yang selalu aktif.

Agar sistem dapat mengenali aktivitas berkelanjutan, intent sentuh notifikasi berkelanjutan harus mengarah ke aktivitas yang selalu aktif, seperti yang ditunjukkan dalam cuplikan kode berikut:

// Create a pending intent that point to your always-on activity
val touchIntent =
    PendingIntent.getActivity(
        context,
        0,
        Intent(context, MyAlwaysOnActivity::class.java),
        PendingIntent.FLAG_MUTABLE or PendingIntent.FLAG_UPDATE_CURRENT
    )

val notificationBuilder =
    NotificationCompat.Builder(this, CHANNEL_ID)
    // ...
    .setOngoing(true)

val ongoingActivity =
    OngoingActivity.Builder(
        applicationContext, NOTIFICATION_ID, notificationBuilder
    )
    // ...
    .setTouchIntent(touchIntent)
    .build()

ongoingActivity.apply(applicationContext)

notificationManager.notify(
    NOTIFICATION_ID,
    notificationBuilder.build()
)

Menonaktifkan sementara perubahan untuk tujuan pengujian

Fitur ini diaktifkan secara default. Untuk menonaktifkan tombol fitur yang sesuai dengan perubahan ini untuk tujuan pengujian, gunakan perintah berikut:

adb shell device_config put wear_frameworks \
  com.google.android.clockwork.systemui.flags.ambiactive_components_expirable \
  false && adb reboot

Aplikasi perekaman olahraga harus mendeklarasikan jenis layanan latar depan

Jika aplikasi Anda merekam olahraga sebagai bagian dari sesi olahraga pengguna, Anda harus menentukan health jenis layanan latar depan di layanan latar depan yang memanggil ExerciseClient. Selain itu, jika aplikasi Anda dapat memantau informasi lokasi selama sesi olahraga, Anda juga perlu menentukan jenis layanan latar depan location:

<manifest ...>
  <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
    <application ...>
      <!-- If your app can also monitor location information, use
           android:foregroundServiceType="health|location" instead. -->
      <service
          android:name=".MyExerciseSessionRecorder"
          android:foregroundServiceType="health">
      </service>
    </application>
</manifest>

Beberapa perangkat yang tidak dipakai di pergelangan tangan tetap terbuka kuncinya lebih lama

Pada perangkat yang didukung yang menjalankan Pratinjau Developer Wear OS 5, sistem akan mendeteksi apakah pengguna memakai perangkat di pergelangan tangan mereka. Jika pengguna menonaktifkan deteksi pergelangan tangan lalu melepaskan perangkat dari pergelangan tangan mereka, sistem akan membuat perangkat tetap terbuka untuk jangka waktu yang lebih lama daripada yang seharusnya.

Jika aplikasi Anda memerlukan tingkat keamanan yang lebih tinggi—seperti saat menampilkan data yang berpotensi sensitif atau pribadi—periksa terlebih dahulu apakah deteksi pergelangan tangan diaktifkan:

val wristDetectionEnabled =
        isWristDetectionAutoLockingEnabled(applicationContext)

Jika nilai yang ditampilkan metode ini adalah false, minta pengguna untuk login ke akun di aplikasi Anda sebelum menampilkan konten khusus pengguna.

Konten yang dapat ditarik mungkin tumpang tindih dengan titik aktivasi gestur sistem

Mulai Pratinjau Developer Wear OS 5, sistem memperlakukan gestur peristiwa gerakan secara terpisah dari navigasi gestur yang digunakan di UI sistem.

Jika UI aplikasi Anda menyertakan ruang besar yang dapat ditarik dan tumpang tindih dengan area gestur sistem, Anda mungkin perlu menambahkan kotak pengecualian gestur sistem untuk tampilan ini. Untuk melakukannya, panggil setSystemGestureExclusionRects() untuk memerintahkan UI sistem agar mengabaikan gestur navigasi di area tertentu. Hal ini mirip dengan cara Anda menangani gestur aplikasi yang bertentangan di aplikasi seluler untuk memberikan pengalaman UI edge-to-edge.

Anda dapat menggunakan setSystemGestureExclusionRects() API agar UI sistem merespons permintaan gestur secara berbeda. Misalnya, UI sistem mungkin menampilkan petunjuk UI tambahan, seperti batang horizontal, untuk mengonfirmasi intent pengguna.

Penskalaan font non-linear

Mulai Pratinjau Developer Wear OS 5, sistem mendukung penskalaan font yang lebih halus, terutama jika pengguna memilih ukuran font yang lebih besar, di komponen UI berbasis tampilan.

Pembatasan ke intent yang implisit dan tertunda

Jika Anda menggunakan kartu di aplikasi, periksa apakah intent Anda terpengaruh oleh batasan untuk intent implisit dan tertunda.

Beberapa notifikasi masih tidak dapat ditutup

Saat menggunakan versi perangkat genggam aplikasi Anda di perangkat yang menjalankan Android 14 (level API 34) atau yang lebih tinggi, pengguna dapat menutup notifikasi yang, pada versi sebelumnya, tidak dapat ditutup.

Namun, di Pratinjau Developer Wear OS 5, notifikasi ini masih tidak dapat ditutup.

Perubahan lain dari Android 14

Perubahan dari Android 14 berikut kemungkinan besar memengaruhi aplikasi Wear OS.

Perubahan Android 14 yang memengaruhi semua aplikasi

Perubahan Android 14 yang memengaruhi aplikasi yang menargetkan API level 34