Saya telah mengambil alih pemeliharaan aplikasi Android, dan ada beberapa masalah residual yang kurang lebih telah saya perbaiki, tetapi masih memiliki masalah karena versi OS Android yang berbeda.
Misalnya, mengirim permintaan web dengan kelas MediaPlayer memiliki header HTTP khusus dilucuti oleh OS sebelum permintaan dikirim keluar, tetapi hanya pada Android 4.X (saya diuji secara mendalam), dan yang menyebabkan fitur khusus ini gagal karena bergantung pada header itu.
Ini adalah masalah yang diketahui dan saya mencoba untuk mengatasinya, tetapi apakah itu ide yang baik untuk memiliki pemeriksaan bersyarat seperti
if (OS.VERSION == 4) {
knownIssueDialog(This feature will not work on your Android version... etc.");
}
Jelas kami akan mencatat ini di saluran dukungan kami, tetapi saya bertanya-tanya apakah itu akan menjadi ide yang baik (dengan asumsi semuanya sudah dicatat) untuk memiliki masalah yang diketahui ini juga tertanam dalam perangkat lunak, dan untuk mempresentasikannya kapan dan di mana diperlukan, seperti apa yang saya jelaskan di atas.
Kami terus mendapatkan banyak ulasan buruk dan banyak email dukungan yang didasarkan pada masalah seperti ini, jadi menurut saya, ini akan menghemat banyak waktu dan sakit kepala bagi semua orang dengan hanya memblokir fitur yang diketahui tidak berfungsi dengan baik.
Saya melihat dua masalah potensial:
- Pengguna mungkin belum pernah melihat dialog seperti "masalah yang diketahui" sebelumnya; banyak pengguna mungkin tidak mengerti apa artinya.
- Ada sedikit overhead pengembangan - orang perlu memastikan untuk melacak masalah ini di suatu tempat dalam kode. Untungnya, dengan anotasi Java, setiap pemeriksaan bersyarat seperti itu dapat didahului oleh
@KnownIssue
atau sesuatu seperti itu, membuat menemukan / memodifikasi mereka sangat sederhana.
Apakah memasukkan 'masalah yang diketahui' dalam perangkat lunak masuk akal?
Sunting : Saya akan menambahkan bahwa ini adalah masalah yang baru saja mulai terjadi sekitar seminggu yang lalu. Saya sudah setengah memperbaiki masalah ini, dan saya sangat tidak mungkin untuk memperbaikinya untuk 4.X karena OS yang menyebabkan masalah. Saya bisa merilis versi baru dengan perbaikan dan membuat 50% basis pengguna bahagia lagi, dan memperingatkan 50% lainnya (pengguna 4.X) bahwa masalah akan tetap ada pada 4.X, dan untuk menyarankan peningkatan (atau sesuatu ). Pertanyaannya adalah apakah atau tidak untuk melakukan itu dalam perangkat lunak (yaitu menunjukkan dialog kepada pengguna 4.X), atau hanya membiarkan mereka mengirim spam kepada kami email yang mengatakan "perbaikan Anda tidak berhasil !!!" dan kemudian mengarahkan mereka ke halaman dukungan yang membahas masalah ini secara lebih rinci.