Androidアプリケーションが無害なコード内でフリーズするという奇妙な問題が発生しています。外部jarがデバッグ情報なしでコンパイルされた場合にのみクラッシュしますが、デバッグ情報を使用してコンパイルされた場合、アプリは正常に実行されます。外部ライブラリ内にある同じコード行でフリーズしますが、複数回パスした後のみです。他のいくつかの外部jarが使用されていますが、これらはデバッグ情報を持たず、問題はありません。
コードのこの部分では、IOアクティビティは実行されていません。プロジェクトには、メモリを踏みつけてランダムエラーを引き起こす可能性のあるネイティブコードはありません。フリーズは複数のデバイスで発生します。このプロセスは独自のスレッドで行われ、計算量が多くなります。
- デスクトップアプリケーションで同じライブラリ/jarを使用する場合、問題はありません。
- Java6と7の両方がアプリとライブラリのコンパイルに使用されています
- 問題のライブラリはDDoglegです。
- 他の3つの外部jarには問題がないようです。
- 外部jarは「libs」ディレクトリに含まれています
構築環境:
- IDE:IntelliJ 12
- Android SDK:android-17
- OS:LinuxMint13およびWindows7
- JDK:1.7.0_13および1.6.0_41
(元の質問では、jarとして含まれている場合はクラッシュしましたが、アプリケーション内でコンパイルされた場合はクラッシュしませんでした)