2016-01-05 9 views
13

アプリの開始直後に、デバイス上でエラーメッセージが表示されずにアプリケーションがクラッシュします。これはMotorola Moto GまたはGalaxy s4miniではなく、Samsung Note 1(少なくともすべてのデバイスでテストすることはできません)でのみ発生します。私が得る唯一のヒントはデバッガです。私はそれを下に貼り付けた。正確には何が起きているのか、一部のデバイスでのみクラッシュするのはなぜですか?libgdxゲームが一部のデバイスでクラッシュする

編集:「実行中のアプリ」メニューからアプリに戻るとクラッシュします。注1にはCyanogenModがインストールされています。たぶんこれはクラッシュと関係があります。

Edit2:もう1つの観察:ノート1は、残りの2つのデバイスとしてメモリの半分だけを割り当てます。クラッシュとは何か関係がありますか?

01-05 17:00:16.212 13486-13513/com.mygdx.myGame.android D/dalvikvm: Trying to load lib /data/app-lib/com.mygdx.myGame.android-2/libgdx-freetype.so 0x42441a58 
    01-05 17:00:16.222 13486-13513/com.mygdx.myGame.android D/dalvikvm: Added shared lib /data/app-lib/com.mygdx.myGame.android-2/libgdx-freetype.so 0x42441a58 
    01-05 17:00:16.222 13486-13513/com.mygdx.myGame.android D/dalvikvm: No JNI_OnLoad found in /data/app-lib/com.mygdx.myGame.android-2/libgdx-freetype.so 0x42441a58, skipping init 
+0

私はCyanogenModがインストールされたSamsung Galaxy Note 1を持っていますが、何とかして助けてくれると思いますか?私は少なくともそれをインストールしようとしたい、私の携帯電話で動作するかどうかを確認したいと思います。これまでのカスタムROMを使ってSkypeから奇妙なクラッシュを受けていましたが、インストールした新しいROMは完璧に動作しました。 – EpicPandaForce

答えて

7

機能"JNI_OnLoadは"は、Androidアプリのために必須ではありません。それは誤りでもない。あなたの問題はあなたのコードの別の部分からです。この機能を提供していなくても、プログラムは正常に動作するはずです。

参考になるJNI_OnLoadの参考文献 - Link 1 | Link 2 | Link 3

を修正する方法は、それはそれを修正するためにndk-gdbを使用してみてください

をthough-があります。

参考資料ndk-gdb-developer.android.com | Stackoverflow

私が取り組んでいるほとんどのプロジェクトのようにこの問題があります。それは、クラッシュするAndroidアプリとは何の関係もありません。

あなたのアプリにはクラッシュするものがあります。あなたは

  1. をデバッグ - 役立ちます考慮すべきいくつかのヒントは、(エラーがあるまさに)ログのPlaystore(そのplaystoreの場合)を確認してください。デバッグに役立つスタックトレースを提供します。

  2. Playstoreにない場合は、エラーを出しているモバイルでリモートデバッグを行うだけです。

  3. 私はそのような経験をしており、APIの変更のためにその時間がありました。私が言っていることは、APIがAndroidバージョンから別のバージョンに変更されたということです(KitkatからLollipopへ - 多くの急な変更があります)。私のアプリのほとんどはこれのために多くの問題を抱えていました。

  4. 一部のモバイルは、DB(sqliteまたは電話で使用するもの)取引に関して厳しいものがあります。つまり、アプリケーションの1つで、DBがすべてのトランザクションの最後に閉じられなかったとき、アプリケーションはほとんどのSamsung & HTC携帯電話で強制終了されていました。それは他のほとんどの携帯電話でうまく機能しました。

希望する:)ハッピーコーディング!自己へ

+1

"エラー"について心配することなく、私に知らせてくれてありがとう。テクスチャアトラスでテクスチャを置き換えた後、エラーは魔法のように消えました。少なくとも私はそれが理由だと思っています... – brumbrum

+1

魔法の助けを借りて助けてくれてよかったです:Dハッピーコーディング! :) – bozzmob

2

注:は、私は最終的にテクスチャアトラスですべてのテクスチャを交換し、アセットマネージャーと組み合わせて開発にわたって

「常に資産運用会社とテクスチャアトラスを使用します」。私は全く論理を変えなかった。どういうわけかアプリがクラッシュするのをやめた。それを説明することはできませんが、私は資産管理者とテクスチャアトラスがトリックをしました。

関連する問題