![]() 分類: 技術的な話 日付: 2020年05月12日公開 このところやや技術的な内容を多く書いているので、その流れで Android (Java) アプリで落ちる3大落ちる原因について書きます。 落ちるのは例外が発生した際がほとんどで、アプリ自体のコーディングに不具合があっても落ちることはあまりありません。 表示される値がおかしくなったり、遷移がおかしくなったりはしますが、アプリ自体は動作し続けます。フリーズすることはあります。 その例外でよくあるランキングを3位まで発表します。注意として、一般的なJavaではなく自分の作っているアプリでよく発生している例外です。 1位 ArrayIndexOutOfBoundsException これは配列の総素数以上のインデックスにアクセスした場合に出ますが、これは非常によく起きてしまいます。 Java一般的にもよく起きるのではないでしょうか? この例外で落ちてくれるのはある意味助かります。C言語のように落ちないと不具合が非常に見つけにくくなります。 2位 NullPointerException これは null が入っている変数を参照しようとしたときに起きますが、これもよくあります。 特にイメージのオブジェクト、文字列のオブジェクトでよくあります。 こちらはC言語でも同じように落ちますね。 3位 ArithmeticException これは 0 で除算を行おうとする際に出ますが、これも時々あります。 本来な分母に 0 を取り得るのがありえるのに、そのまま弾かずに処理してしまっていることがあります。 Java一般的にはそんなに多くないかもですが、自分は時々してしまいます。 こちらもC言語でも同じように落ちますね。 上記の例外は、基本的にはリリースしているアプリ(少なくとも何回かバージョンアップしたアプリ)では、ほぼ出ません。 出たらバグのあるアプリと言うことなので・・。 しかし、実際にAndroidのユーザーの方から落ちる不具合は時々連絡をいただきます。 結果よく調査したら、ArrayIndexOutOfBoundsException が発生していたとかもあるのですが、そうでない場合もあります。 スマホは他のアプリの動作状況などで環境が凄く変わるので理由はわからないのですが、RuntimeException が出たり OutOfMemoryError が出たりしているのかなと思っています。 自分がコーディングした部分以外で NullPointerException が起きていることもありそうです。 アプリゲーム紹介 Mocoゲーム作成で比較的人気の無料ゲーム がちんこバドミントン&続編 を公開中です。Google Play 及び App Store でダウンロード可能です。 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ⇒ より最新のブログ ⇒ より以前のブログ
|
最新エントリー![]()
⇒ より以前のブログ コンテンツ分類 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() カレンダー ![]() 2025年04月 ⇒ ブログカレンダー |