http://developer.android.com/tools/publishing/preparing.htmlの手順では、Androidアプリケーションを公開する前にエクスポートする必要があることを示しています。エクスポートで実行される手順は何ですか?
これが私が知っていることです:
- <Application>のandroid:debuggableがAndroidManifest.xmlでfalseに設定されている
- APKは、組み込みのデバッグキーではなく、開発者の(my)キーによって署名されます
zipalignはその署名されたAPKで実行されます
AndroidManifest.xmlでandroid:debuggableを手動でfalseに設定し、デバッグとエクスポートされたapkを比較しました。異なっていたのは次のファイルだけです。
Binary files ../../release/x//classes.dex and x/classes.dex differ
Binary files ../../release/x//META-INF/CERT.RSA and x/META-INF/CERT.RSA differ
diff -r ../../release/x//META-INF/CERT.SF x/META-INF/CERT.SF
diff -r ../../release/x//META-INF/MANIFEST.MF x/META-INF/MANIFEST.MF
それで、上記の私のリストにはすべてが含まれていますか?または、異なるclasses.dexは、デバッグとエクスポートされたapkの間に他の違いがあることを示していますか?
以下のエラー454の回答のおかげで、各apkのclasses.dexファイルでbaksmaliを実行しましたが、1つの違いが見つかりました。
diff -r out/xx/xx/xx/BuildConfig.smali ../../../release/x/out//xx/xx/xx/BuildConfig.smali
7c7
< .field public static final DEBUG:Z = true
---
> .field public static final DEBUG:Z
したがって、このリストに4番目の項目を追加できると思います。
クラスBuildConfig(gen /.../ BuildConfig.java)では、DEBUGがfalseに設定されています。