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.
sumber
Jawaban:
Ya, ini sangat dapat diterima untuk beberapa fitur yang lebih tidak jelas, terutama ketika mereka disembunyikan di dalam menu opsi. Mungkin lebih baik untuk menonaktifkan tombol dan menambahkan beberapa teks "fitur ini di XXX dan di bawah" atau "fitur ini berfungsi optimal di XXX dan di atas" jika hanya berfungsi sebagian.
Tidak, ini tidak dapat diterima pada fungsi utama yang menghabiskan 75% layar saat Anda memulai aplikasi. Penggunaan Anda akan sangat terganggu setiap kali mereka melihat pop-up. Anda lebih baik menyembunyikan fitur tersebut, tidak perlu menyodok pengguna Anda tentang sesuatu yang tidak dapat mereka perbaiki.
Akan berbeda jika pengguna Anda dapat dengan mudah memperbaikinya, misalnya dengan menginstal aplikasi tambahan. Saya sering melihat pesan seperti "Untuk menggunakan opsi ini, Anda perlu menginstal aplikasi kompas (gratis)" atau "Untuk menggunakan opsi ini, Anda perlu meningkatkan ke aplikasi pro berbayar" dll.
Intinya adalah, Anda dapat melakukan ini, tetapi hanya setelah pertimbangan yang cermat dan setelah solusi lain gagal, bukan sebagai jalan pintas cepat. Ini akan mengganggu pengguna Anda, tetapi itu mungkin merupakan trade-off yang dapat Anda lakukan.
(ps. Saya merasa pertanyaan ini harus ke UX )
sumber
Beberapa ulasan buruk + banyak email dukungan == pelanggan yang tidak bahagia. Apakah Anda akan membuat mereka bahagia dengan 'gagal lebih anggun' untuk kondisi tertentu? Mungkin. Namun, jika saya adalah Anda, saya akan memikirkan kembali apakah saya merilis perangkat lunak secara prematur dan saya seharusnya memperbaiki beberapa masalah tersebut sebelum itu terjadi di depan pelanggan.
Pembaruan: Jika ini adalah masalah yang tidak dapat diperbaiki karena masalah lingkungan, saya akan meminta konfirmasi kepada pengguna (DAN juga mendokumentasikannya dan mengirimkannya dalam email). Ini berfungsi untuk masalah yang terisolasi seperti ini, tetapi saya tidak akan menyarankan itu sebagai solusi umum untuk sembarang 'bug yang dikenal'. Jika ada banyak dari ini, maka Anda melakukan sesuatu yang salah.
sumber
Jika fitur yang bermasalah tersedia melalui opsi, tombol, atau yang serupa, Anda dapat menonaktifkan atau menyembunyikan elemen-elemen ini: Saya berharap ini tidak terlalu membuat frustrasi pengguna daripada ditawarkan fitur yang hanya diberi tahu "tidak bekerja". Jika Anda tahu itu tidak akan berhasil, maka jangan membuatnya tampak seperti itu bisa.
sumber