Category Archives: Android

Mali Graphics Debugger が動かない

Mali Graphics Debugger でデバッグできないときの回避策です。 Huawei P20 lite や Huawei nova lite3 などの Android Oreo(Android8) 以降と Mali Graphics Debugget v5.1 の組み合わせの場合

Posted in Android, Graphic Debugger, Mali Graphics Debugger | Leave a comment

AndroidStudio2.1 でネイティブデバッグできない(LLDBFrontend)

AndroidSutdio 2.0 では問題なかった環境で、 AndroidStudio 2.1 にするとネイティブデバッグできない場合の回避方法です。 (LLDBFrontend.exe が起動しない場合)

Posted in Android, AndroidStudio | Leave a comment

android で logcat 読み取り(android.permission.READ_LOGS)

android で android.permission.READ_LOGS を有効にする方法ですが adb を使用して shell ユーザからコマンド操作が必要になっている orz

Posted in Android, Android Permission, Android Permission READ_LOGS | Leave a comment

Android でアップデートしたら起動しなくなったアプリを緊急回避としての修復

Android はシステム的にアプリが起動しなくなる問題を抱えている模様です。 緊急回避の一つとしてアプリを再インストールするだけのアプリを作成しましたが、 内臓ストレージが故障している場合には傷を広げるだけなのであくまでも緊急回避として自己責任での使用をお願いいたします。 アプリが行っていることは Android のシステムに対してアプリのインストールを依頼しているだけとなっています。 起動修復 from PC 起動修復 from Android

Posted in Android | Leave a comment

Android で落ちている箇所の情報を得る@ネイティブ

root 権限が必要ですが echo 1>/proc/sys/kernel/print-fatal-signals でカーネルからメッセージが出力され dmesg で情報を見ることができます。 (呼び出し履歴は含まれていない…)

Posted in Android, Android kernel, Android NDK, Linux, Linux kernel | Leave a comment

Android アプリの強制デバッグ

リリースビルドでしか発生しない不都合調査用 Nexus7 などの /system が書き換え可能なターゲットでしか使用できません。

Posted in Android, Android Device, NEXUS7 2013 LTE | Leave a comment

android ndk でC/C++ ソースからアセンブラソースを出力させる@clang

clang だとエラーになりアセンブラソースを出力できないので条件切り替えを追加 r9c clang3.3 LOCAL_CFLAGS += -fverbose-asm ifeq (,$(findstring clang,$(NDK_TOOLCHAIN_VERSION))) LOCAL_FILTER_ASM := python -c ‘import sys; import shutil; src = open(sys.argv[1], “rb”); dst = open(sys.argv[2], “wb”); shutil.copyfileobj(src,dst);’ endif 以前の記事

Posted in Android, Android NDK | Leave a comment

ndk-gdb-py.cmd が実行できないバグ修正 ndk-r9c

ndk-r9b で ndk-gdb-py の実行に失敗するようになっていました。 以前の記事 些細なことですが r9c で無事修正されました。 https://code.google.com/p/android/issues/detail?id=63054

Posted in Android, Android NDK | Leave a comment

Android NDK で Map ファイルを出力させる

共有ライブラリを生成したときに NDK では Map ファイルをデフォルトでは生成しないです。 jni/Android.mk に LOCAL_LDFLAGS += -Wl,-Map,$$(LOCAL_OBJS_DIR:%/=%)/$(LOCAL_MODULE).map -Wl,–cref -Wl,–demangle を追加することで Map ファイルを生成するようになります。 出力される so と同じ箇所に出力する場合は LOCAL_LDFLAGS += -Wl,-Map,$$(LOCAL_BUILT_MODULE:%/=%).map -Wl,–cref -Wl,–demangle でいけます。

Posted in Android, Android NDK | Leave a comment

android ndk でC/C++ ソースからアセンブラソースを出力させる

jni/Android.mk に LOCAL_CFLAGS += -fverbose-asm LOCAL_FILTER_ASM := python -c ‘import sys; import shutil; src = open(sys.argv[1], “rb”); dst = open(sys.argv[2], “wb”); shutil.copyfileobj(src,dst);’ を追加することで C/C++ から出力されるアセンブラソース(リスティングファイル)が残るようになります。 python 環境が必要ですが Android NDK r9 以降は NDK に含まれています。 LOCAL_FILTER_ASM は ANdroid NDK r5 以降なら使用できると思います。

Posted in Android, Android NDK | Leave a comment