Strategi untuk memecahkan masalah kesalahan yang hanya terjadi pada perangkat tertentu

12

Sebagai pengembang Android, target pasar tempat saya membuat aplikasi sangat terfragmentasi. Meskipun saya dapat menentukan persyaratan tertentu - mis. Aplikasi saya hanya mendukung versi Android xx atau lebih tinggi, terkadang kesalahan dapat terjadi yang hanya jelas pada satu model ponsel tertentu.

Apakah ada strategi untuk menangani kesalahan spesifik perangkat, tanpa membeli telepon yang dipermasalahkan? Kami mengelola serangkaian ponsel untuk pengujian, tetapi tidak mampu keluar dan membeli ponsel baru ketika 2 atau 3 pengguna melaporkan bahwa ada bug yang hanya terjadi pada model ponsel mereka.

Saya yakin pengembang Android lain telah mengalami masalah serupa di masa lalu, dan saya ingin tahu strategi hemat biaya apa yang tersedia untuk membantu mengatasi bug khusus perangkat.

Perbarui untuk menambahkan beberapa detail:

  • Saya menggunakan Bugsense untuk menangkap laporan bug, jadi setiap kali pengecualian dilemparkan, saya akan tahu model ponsel, jejak tumpukan, berapa kali itu terjadi pada pengguna saya, dan beberapa detail lainnya.
  • Pengguna mungkin berada di berbagai negara, jadi saya tidak bisa berasumsi saya akan pernah bisa meminjam telepon mereka.

Bayangkan skenario seperti ini: 100 pengguna telah menginstal aplikasi, tetapi tiga orang mengeluh bahwa tombol tidak berfungsi dengan baik ketika ditekan. Tak satu pun dari model ponsel yang saya miliki untuk pengujian mengalami masalah. Tampaknya tidak ada emulator untuk model ponsel bermasalah.

StackExchange What The Heck
sumber
2
Inkubator lokal kami bekerja sama dengan perusahaan telepon seluler lokal untuk membuat perpustakaan ponsel untuk menyelesaikan masalah ini dengan tepat - Anda mungkin dapat menemukan sesuatu yang serupa di daerah Anda (atau menyarankannya kepada beberapa orang yang tepat).
Hannele
Anda membela pertanyaan Anda dan memintanya untuk dibuka kembali. Pastikan Anda berpikir sebanyak mungkin untuk memilih jawaban.
JeffO
untuk referensi: meta discussion of this question
agas

Jawaban:

10

Bertahun-tahun yang lalu, saya mengalami masalah yang sama dalam mengembangkan perangkat lunak untuk perangkat Palm. Ada beberapa strategi yang jelas:

  • Memiliki pengguna yang membantu dalam pengujian - memiliki program pengujian beta, minta aplikasi Anda memberikan informasi yang baik tentang kesalahan, dan memiliki cara yang baik untuk melaporkan bug.
  • Menggunakan emulator khusus perangkat

Keduanya cukup membatasi. Tidak ada pengganti pasti untuk memiliki perangkat yang sebenarnya.

Satu hal menarik yang saya temui adalah AppThwack , sebuah perusahaan yang memungkinkan Anda menguji ratusan perangkat Android dari jarak jauh. Saya tidak punya pengalaman dengan ini secara pribadi, tetapi terlihat menjanjikan (ini juga indikasi kuat bahwa tidak ada jawaban yang mudah dan murah untuk masalah Anda).


sumber
1
+1 untuk AppThwack. Mereka memiliki banyak perangkat dan Anda dapat mengarahkan pengujian di kumpulan perangkat tertentu. Anda dapat menginstruksikan instrumentasi untuk mengambil tangkapan layar dan Anda mendapatkan log kerusakan untuk setiap perangkat. Ini adalah pengganti yang cukup baik untuk tidak memiliki setiap perangkat yang dikenal di tangan (=
David Cowden
+1 untuk "program pengujian terbaik", saya punya satu untuk aplikasi Android pelacakan baterai saya. Ketika saya mengirimnya ke pengguna yang mendapatkan hasil aneh, dan mendapatkan hasil debug, itu adalah momen yang sangat WTF: Dia entah bagaimana mengacaukan teleponnya sehingga Android sendiri melaporkan baterai 60% satu menit, 40% berikutnya , 80% berikutnya, dan terus melompat-lompat. Tidak dapat melakukan apa pun pada saat itu di aplikasi untuk memperbaikinya, mereka perlu memperbaiki ponsel mereka.
Izkata
-1

Sayangnya tidak ada jawaban mudah untuk masalah ini.

untuk menyaring @ dan1111 jawaban Memiliki pengguna membantu dengan pengujian untuk android

  • tambahkan banyak laporan log di aplikasi android Anda yang mencatat informasi konteks penting à la
    • sekarang membuka basis data "/data/data/my.namespace.com/databases/myDatabase.db" atau
    • sekarang memanggil layanan web "my.server.com/loadingOrder(id=22)"
  • minta pengguna untuk menginstal alogcat pada perangkat yang dapat membaca log-debug lokal dan menginstruksikan kepadanya bagaimana mengatur filter untuk melacak sumber masalah dan mengirimkan Anda log.
k3b
sumber
apa gunanya menginstal alogcat, sementara OP mengatakan mereka sudah memiliki sesuatu seperti itu: "gunakan Bugsense untuk menangkap laporan bug, jadi setiap kali pengecualian dilemparkan saya akan tahu model ponsel, jejak stack, berapa kali telah terjadi pada pengguna saya, dan beberapa detail lainnya ... "
agas