Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Dapatkah saya menggunakan beberapa pelaporan crash SDK secara bersamaan dengan mvvmcross


Dapatkah saya menggunakan beberapa pelaporan crash SDK secara bersamaan dengan mvvmcross


Menggunakan beberapa pelaporan crash SDK secara bersamaan dengan MVVMCross bisa rumit dan mungkin tidak selalu direkomendasikan, terutama di iOS. Berikut gambaran terperinci:

Pertimbangan Umum

1. Keterbatasan iOS: Di iOS, menggunakan beberapa pelaporan crash SDK umumnya tidak dianjurkan. Ini karena iOS menangani pengecualian dan sinyal dengan cara yang tidak menjamin semua wartawan kecelakaan akan menangkap semua pengecualian dan sinyal, yang berpotensi menyebabkan kecelakaan yang terlewat [8]. Namun, beberapa pengembang telah berhasil menggunakan beberapa reporter crash seperti TestFlight dan Crashlytics bersama -sama, tetapi ini membutuhkan pengaturan yang cermat [4].

2. Fleksibilitas Android: Di Android, lebih layak untuk menggunakan beberapa SDK pelaporan crash secara bersamaan. Namun, sangat penting untuk memastikan bahwa setiap SDK diinisialisasi dalam urutan yang benar untuk menghindari konflik. Misalnya, Instabug harus diinisialisasi setelah wartawan crash lainnya [8].

Integrasi

MVVMCross

Saat mengintegrasikan SDK pelaporan kerusakan dengan MVVMCross, Anda perlu mempertimbangkan bagaimana setiap SDK menangani pengecualian yang tidak tertulis dan bagaimana mereka berinteraksi dengan kerangka kerja MVVMCross.

- Penanganan Pengecualian: MVVMCross sendiri tidak memberikan pelaporan crash bawaan. Anda perlu mengintegrasikan SDK pihak ketiga. Saat menggunakan beberapa SDK, pastikan mereka dikonfigurasi untuk menangani pengecualian dengan benar tanpa saling mengganggu.

- Pengaturan Proyek Inti: Dalam proyek inti MVVMCross Anda, Anda biasanya tidak akan menangani pelaporan kerusakan secara langsung. Sebagai gantinya, Anda akan mengintegrasikan pelaporan kerusakan dalam proyek-proyek khusus platform (mis. IOS dan Android). Namun, Anda mungkin ingin memusatkan logika penanganan kesalahan dalam proyek inti untuk konsistensi di seluruh platform.

crash melaporkan opsi SDK

Beberapa SDK pelaporan crash dapat digunakan dengan MVVMCROSS:

- Pusat Aplikasi: Menyediakan pelaporan dan analitik kerusakan komprehensif untuk iOS dan Android. Sangat mudah untuk diintegrasikan dengan proyek Xamarin dan MVVMCross [5].

- Relik baru: Menawarkan pelaporan kerusakan yang kuat dan pemantauan kinerja. Ini mendukung Android dan dapat bekerja bersama kerangka pelaporan crash lainnya [2] [10].

- Instabug: Menyediakan laporan crash rinci dan alat umpan balik pengguna. Ini dapat digunakan pada iOS dan Android, tetapi dengan keterbatasan yang dicatat pada iOS [8].

Langkah Implementasi

Untuk mengimplementasikan beberapa SDK pelaporan kerusakan dengan MVVMCROSS:

1. Pilih SDK: Pilih SDK yang ingin Anda gunakan berdasarkan platform dan persyaratan fitur Anda.

2. Inisialisasi SDK: Pastikan setiap SDK diinisialisasi dengan benar dalam proyek-proyek khusus platform. Di Android, inisialisasi mereka dalam urutan yang benar untuk menghindari konflik.

3. Tangani Pengecualian: Mengkonfigurasi setiap SDK untuk menangani pengecualian yang tidak tertulis. Jika menggunakan beberapa SDK, pastikan mereka diatur untuk bekerja bersama tanpa mengganggu penanganan pengecualian satu sama lain.

4. Tes secara menyeluruh: Uji aplikasi Anda secara menyeluruh untuk memastikan bahwa semua SDK yang melaporkan kerusakan berfungsi seperti yang diharapkan dan tidak menyebabkan konflik.

Singkatnya, walaupun secara teknis dimungkinkan untuk menggunakan beberapa SDK pelaporan kerusakan dengan MVVMCross, itu membutuhkan pengaturan dan pengujian yang cermat, terutama di iOS. Di Android, lebih mudah tetapi masih membutuhkan perhatian pada urutan inisialisasi.

Kutipan:
[1] https://stackoverflow.com/questions/19464339/xamarin-mvvmcross-and-crashreporting
[2] https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/install-configure/android-agent-crash-reporting/
[3] https://www.mvmcross.com/documentation/advanced/mvxnotifyTask
[4] https://stackoverflow.com/questions/1075278/use-multiple-crash-reporter-on-ios
[5] https://www.youtube.com/watch?v=jr2fe-wan9c
[6] https://stackoverflow.com/questions/59078153/mvvmcross-android-10-0-q-mainactivity-exception-crash-on-setcontentview/59558389
[7] https://github.com/mvvmcross/mvvmcross/issues/4295
[8] https://help.instabug.com/en/articles/2102240-can-i-suse-tabuggug-crash-reporting-tool-in-parallel-with-other-crash-reporters
[9] https://www.appdome.com/how-to/mobile-app-security/mobile-data-encryption/appdome-integrates-crash-reporting-sdk/
[10] https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/install-configure/android-agent-native-crash-reporting/
[11] https://support.google.com/googleplay/android-developer/answer/12246095?hl=en
[12] https://learn.microsoft.com/en-us/appcenter/sdk/crashes/android
[13] https://learn.microsoft.com/en-us/appcenter/sdk/troubleshooting/xamarin
[14] https://www.guardsquare.com/blog/making-the-most-out-of-ios-crash-reports-with-lldb