web-dev-qa-db-ja.com

solving Android致命的な信号11(SIGSEGV)、コード1、XXXXX(Thread-X)の障害ADDR 0x0?

OpenCV SDK for Android)を使用して、リアルタイムの処理とマッチングを開発します。

Main OpenCV TraitmentロジックはJNI関数にあります。

問題は(時々)私のアプリがエラーなしでクラッシュすることがあるので、私がアルゴリズムを開発するまで問題を無視しました。

私はエラーの調査を開始し始めて、それは間違いなくJNIの部分にあります。

これが私がLogに入るエラーです

A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 27424 (Thread-8)
A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
 _

私はインターネットでたくさん検索しました、そして私はこの解決策を見つけました

<activity
   Android:hardwareAccelerated="false" />
 _

それは2日間働き、今私は同じエラーを取り戻しました。

問題は何ですか、そしてどのように私はそれを解決することができますか?

どんな助けにも感謝し、事前にありがとうございました。

[〜#〜]編集[〜#〜]

私のアプリケーションがギャラリーから参照イメージを取得し、それをリアルタイムイメージフィードでopenCVを使用してそれを比較するように追加します。

ギャラリーやアプリがクラッシュした画像を選択した場合、そのイメージは再び動作しなくなり、新しいイメージや前に機能しているイメージを取っても、アプリはうまくいきます。

5
Amine

物理デバイスで実行します。私はそれをしました、そしてそれは私にとって大丈夫です。

0
Mohsen Hrt

私の場合、私は問題を絞り込みに絞り込みましょう。ただし、画面が2回目にレンダリングされた場合に限ります。例:スクリーンを残すと、FragmentManagerを介して画面に戻ります。

いずれにせよ、それがAvabiewiewである場合は、Androidmanifest.xmlのハードウェアアクセラレーションをオフにして、またはさらに良いADコンポーネント自体に直接優れています。

val AdRequest:AdRequest = AdRequest.Builder()。build()//リロードでクラッシュするように画面がクラッシュさせるため、このビューでハードウェアアクセラレーションを無効にします。 Aview.SetLayerType(View.Layer_Type_Software、Null)Aview.Loadad(AdRequest)

これまでそれを下げるのは少し難しい縮小でしたが、私はこれに気づいた:

I/DynamiteModule:ローカルモジュールcom.google.android.gms.ads.dynamite:0とリモートモジュールcom.google.android.gms.ads.dynamite:204204100

メッセージの直上

"致命的な信号11(sigsegv)、コード1(segv_maperr)、TID 19705(RenderThread)、PID 19631"の障害ADDR 0x0

私はそれがAdmobだったと思いました、そして、それで最終的にこの答えに私を導いた。

これは私のために働いた。これが他の人たちを助けることを願っています。

0
user3649912

私はそれによって解決されました

  1. 私のスマートフォンを再起動しました(物理デバイス)。

  2. Android Studio]を使用している場合は、ファイル - >キャッシュを無効にして再起動します

0
Aditya Aggarwal