App thinning
API

Jejak stack terkelola di iOS

Ketika pengecualian terjadi pada kode yang dikelola, jejak stack untuk pengecualian dapat membantu Anda memahami penyebab pengecualian. Namun, jejak stack yang dikelola mungkin tidak muncul seperti yang diharapkan dalam beberapa kasus di iOS, seperti yang dijelaskan di bawah ini. Jejak stack juga bervariasi tergantung pada konfigurasi build Xcode.

Debug builds

Ketika Anda menggunakan konfigurasi build debug dengan iOS, IL2CPPBack-end scripting bersatu yang dapat Anda gunakan sebagai alternatif untuk Mono ketika proyek bangunan untuk beberapa platform. More info
Lihat di Glossary
harus melaporkan jejak stack yang dapat diandalkan, dan termasuk setiap metode yang dikelola di tumpukan panggilan. Jejak stack tidak termasuk nomor garis dari kode sumber C # asli.

Release builds

Ketika Anda menggunakan konfigurasi build rilis, IL2CPP mungkin menghasilkan tumpukan panggilan yang hilang satu atau metode yang lebih dikelola. Ini karena kompilator C++ telah mengintip metode yang hilang. Metode inlining biasanya bagus untuk kinerja pada waktu berjalan, tetapi dapat membuat tumpukan panggilan lebih sulit untuk dipahami. IL2CPP selalu menyediakan setidaknya satu metode yang dikelola di tumpukan panggilan. Ini adalah metode di mana pengecualian terjadi. Ini juga termasuk metode lain jika mereka tidak dilinasi.

Jika Anda dapat mereproduksi pengecualian secara lokal, gunakan Xcode untuk menentukan metode mana yang telah dilinasi. Jalankan aplikasi di Xcode menggunakan konfigurasi rilis dan set breakpoint pengecualian. Tampilan tumpukan panggilan asli di Xcode harus menunjukkan metode mana yang sebenarnya ada, dan yang telah dilinasi.

Source code line numbers

tumpukan panggilan IL2CPP tidak termasuk informasi nomor kode sumber di debug atau konfigurasi rilis.


  • 24 Juni 2018 Sitemap
App thinning
API