しかしリリース後のエラー報告には暗号化されたstactraceが通知されるので
実際にどこでエラーになっているかが判断つかない。
そこでproguardのリトレースツールを使用する。
c:\Android\android-sdk\tools\proguard\bin/retrace.bat
ビルド時のproguardフォルダ配下にあるmapping.txtと、エラーのバックトレースを
適当なファイルに保存し、上記ツールを実行すると本当のstactraceを見ることが可能。
◆コマンド
retrace.bat -verbose mapping.txt stacktrace.txt
ちなみにproguardの設定はelipseなら
①project.propertiesに以下の記載
proguard.config=proguard.cfg
②proguard.cfgに必要な記載を行う
自分の場合は、最初ServiceをBindでつかっていたらIInterfaceがproguardの対象になって
いなかったので暗号化したapkファイル動かすとClassないっていわれてエラーになった。
以下の記載を追記してあげれば、IInterfaceをつかっているものもクラス名の置換がおこなわれ
ないため、問題なくうごくー。
-keep public class * extends android.os.IInterface
0 件のコメント:
コメントを投稿