Mengapa beberapa pesan teks Unicode merusak OS iPhone?


31

Baru-baru ini "kesalahan" baru telah muncul di Internet selama beberapa minggu terakhir di mana jika pengguna iPhone dikirim:

  effective. 
      Power
           لُلُصّبُلُلصّبُررً ॣ ॣh ॣ ॣ
 冗

via iMessage itu crash OS ponsel sementara dan paksa me-restart telepon penerima.

Mengapa ini bekerja?


3
Sebenarnya, saya percaya hanya karakter Arab (dan mungkin yang setelah mereka) yang diperlukan. Teks "daya efektif" hanyalah pengisi dan dapat berupa apa saja, tetapi harus cukup panjang sehingga pemberitahuan terpotong (atau setidaknya upaya untuk, karena inilah yang menyebabkan crash) pada karakter asing.

Jawaban:


36

Jika Anda memerlukan perbaikan untuk ini, gunakan Siri atau Mac menggunakan iMessage untuk mengirimi Anda pesan baru. Lihat https://support.apple.com/en-us/HT204897

Ini adalah prosedur tiga langkah untuk memulihkan dan pembaruan perangkat lunak di masa mendatang akan menambal bug ini.

  1. Mintalah Siri untuk "membaca pesan yang belum dibaca."
  2. Gunakan Siri untuk membalas pesan jahat. Setelah Anda membalas, Anda akan dapat membuka Pesan lagi.
  3. Jika masalah berlanjut, ketuk dan tahan pesan jahat, ketuk Lainnya, dan hapus pesan dari utas.

Mengenai mengapa hal itu terjadi, ini adalah bug khusus dalam cara Notification Center merender konten Unicode dari pesan ini. Kode melakukan operasi "tidak aman" (sesuatu yang mirip dengan 5 dibagi dengan 0 dan kemudian tidak memeriksa hasil yang tidak terduga) yang menyebabkan kesalahan tidak tertangani.

Kemudian sejak Pusat Pemberitahuan tidak dapat membuat blok teks dan akhirnya menabrak Springboard yang tidak memiliki kode untuk menangani kegagalan ini dengan anggun. Ketika tidak ada penangan kesalahan khusus, sebagian besar operasi gagal "reboot diri" untuk mencoba dan memperbaiki kesalahan.

Unicode adalah cara pengkodean karakter yang digunakan untuk menangani bahasa yang memiliki jumlah karakter lebih besar daripada bahasa Inggris. Pemrogram dapat mengalami masalah dengan itu karena mereka belajar memprogram menggunakan teks ASCII dan mereka lalai untuk menulis perangkat lunak mereka dengan dukungan Unicode penuh.

Satu artikel bagus tentang ini menjelaskan "jika Anda masih pemrograman seperti itu, Anda tidak jauh lebih baik daripada seorang dokter yang tidak percaya pada kuman".

Ini artikel lainnya menjelaskan situasi khusus ini dengan baik.

Apple dapat melakukan tinjauan kode yang lebih ketat, melakukan pengujian unit khusus atau membiarkan pengguna akhir memeriksa kode mereka seperti dalam kasus ini dan yang serupa .


6

Ini adalah sesuatu yang diperbaiki oleh Apple.

Masalahnya tampaknya berasal dari cara telepon mencoba menampilkan pesan dalam pemberitahuan. Karakter menyebabkan sistem itu rusak, sehingga sebentar mencoba untuk menunjukkannya sebelum crash dan kemudian mengatur ulang telepon dalam upaya untuk memperbaikinya.

Berikut adalah beberapa perbaikan jangka pendek yang dapat Anda lakukan hingga Apple memperbaiki masalahnya.

  • Minta orang yang mengirimi Anda pesan jahat mengirim pesan lain secara efektif membatalkan alur awal

  • Kirim sendiri pesan kepada Anda melalui Siri, lembar bagikan, atau dari Mac Anda.

  • Pembaca lain mencatat bahwa "mengirim foto ke kontak melalui aplikasi Foto dapat memungkinkan mereka mengakses riwayat pesan dan menghapus percakapan"

sumber: http://www.redmondpie.com/how-to-fix-ios-text-messages-crash-bug/

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.