Mengupdate versi SDK target aplikasi untuk Wear&OS tersebut 4

Setelah mengupdate aplikasi guna mempersiapkannya untuk Wear OS 4, Anda dapat makin meningkatkan kompatibilitas aplikasi dengan versi Wear OS ini dengan menargetkan Android 13 (level API 33).

Jika Anda mengupdate versi SDK target, tangani perubahan perilaku sistem yang berlaku untuk aplikasi yang menargetkan Android 12 atau yang lebih baru, serta untuk aplikasi yang menargetkan Android 13 atau yang lebih baru. Secara khusus, pertimbangkan perubahan pada izin serta perilaku navigasi dan komponen aplikasi yang akan dijelaskan nanti dalam panduan ini.

Mengupdate file build Anda

Untuk mengupdate versi SDK target, buka file build.gradle atau build.gradle.kts level modul, lalu perbarui dengan nilai untuk Android 13.

Cara Anda memformat nilai dalam file build bergantung pada versi plugin Android Gradle (AGP) yang Anda gunakan.

AGP 7.0.0 atau yang lebih tinggi

Jika Anda menggunakan AGP 7.0.0 atau yang lebih tinggi, update file build.gradle atau build.gradle.kts aplikasi Anda dengan nilai berikut pada Android 13:

Groovy

android {
    compileSdk 33
    ...
    defaultConfig {
        targetSdk 33
    }
}

Kotlin

android {
    compileSdk = 33
    ...
    defaultConfig {
        targetSdk = 33
    }
}

AGP 4.2.0 atau yang lebih rendah

Jika Anda menggunakan AGP 4.2.0 atau yang lebih rendah, update file build.gradle atau build.gradle.kts aplikasi Anda dengan nilai berikut untuk Android 13:

Groovy

android {
    compileSdkVersion "33"
    ...
    defaultConfig {
        targetSdkVersion "33"
    }
}

Kotlin

android {
    compileSdkVersion = "33"
    ...
    defaultConfig {
        targetSdkVersion = "33"
    }
}

Perubahan pada izin

Bagian ini mencantumkan beberapa perubahan pada izin yang memengaruhi aplikasi setelah menargetkan Android 13.

Izin sensor tubuh latar belakang

Untuk mendapatkan informasi dari sensor tubuh umum, seperti detak jantung, di latar belakang, minta izin BODY_SENSORS_BACKGROUND.

Pelajari lebih lanjut dalam panduan untuk meminta akses latar belakang ke data sensor tubuh.

Izin alarm yang tepat

Untuk menggunakan alarm dengan waktu yang tepat—juga dikenal sebagai alarm yang tepat—Anda harus mendeklarasikan izin USE_EXACT_ALARM atau SCHEDULE_EXACT_ALARM.

Jika kemampuan inti aplikasi Anda tidak bergantung pada alarm yang tepat—misalnya untuk aplikasi jam alarm atau aplikasi kalender—gunakan alarm yang tidak tepat sebagai gantinya. Sebagian besar aplikasi dapat menjadwalkan tugas dan acara menggunakan alarm yang tidak tepat.

Pelajari lebih lanjut cara menyetel alarm yang tepat.

Izin media terperinci

Jika aplikasi Anda perlu mengakses file media yang telah dibuat oleh aplikasi lain, Anda harus meminta izin media terperinci yang dimulai dengan READ_MEDIA_*, alih-alih izin READ_EXTERNAL_STORAGE singkat ini. Jika aplikasi Anda sebelumnya diberi izin READ_EXTERNAL_STORAGE, sistem akan memberikan izin media terperinci yang diperlukan secara otomatis.

Pelajari lebih lanjut izin media terperinci.

Perubahan pada komponen dan navigasi aplikasi

Bagian ini mencantumkan beberapa perubahan pada perilaku navigasi dan komponen aplikasi yang memengaruhi aplikasi setelah menargetkan Android 13.

Persyaratan ekspor komponen aplikasi

Jika aplikasi Anda berisi aktivitas, layanan, atau penerima siaran yang menggunakan filter intent, Anda harus secara eksplisit mendeklarasikan atribut android:exported untuk komponen aplikasi ini.

Pelajari lebih lanjut mengekspor komponen yang lebih aman.

Menentukan mutabilitas intent yang tertunda

Anda harus menentukan apakah setiap objek PendingIntent di aplikasi dapat diubah atau tidak dapat diubah. Pada umumnya, gunakan objek PendingIntent yang tidak dapat diubah untuk melindungi integritas data di dalam intent.

Pelajari lebih lanjut cara menentukan mutabilitas intent yang tertunda.

Pembatasan peluncuran layanan latar depan

Pada umumnya, aplikasi Anda tidak dapat memulai layanan latar depan saat berjalan di latar belakang.

Pelajari lebih lanjut batasan untuk memulai layanan latar depan dari latar belakang.

Pembatasan trampolin notifikasi

Setelah pengguna berinteraksi dengan notifikasi, Anda tidak dapat memanggil startActivity() di dalam layanan atau penerima siaran. Komponen aplikasi interstisial tersebut, yang kemampuannya hanya meluncurkan aktivitas, dikenal sebagai trampolin notifikasi.

Pelajari lebih lanjut pembatasan trampolin notifikasi.