2013-07-14 7 views
22

Googleマーケットにアプリケーションを提出したいと思います。私は、プロジェクト内で生成されたファイルがapkであることを発見しました。そのパスはProject1Project/Project1/build/apk/Project1-debug-unaligned.apkです。Androidスタジオの* .apkのリリースバージョン

これはデバッグバージョンのようです。アプリケーションのリリースバージョンはどこにありますか(もしあれば)、どうすれば生成できますか?

+0

リリースapkをビルドするには、次の手順を実行します。http://stackoverflow.com/a/28938286/2739650 –

答えて

25

のAndroid StudioはIntelliJのに基づいているので、それはのIntelliJでそれを行う方法は次のとおりです。

Build - >Generate Signed APK

とあなたのキーとそのパスワードでそれを提供しています。

+0

本当に署名付きAPKが必要ですか?私はそれを売りたくない。 –

+1

はい、必要です。特定のキーセットで署名された有効なapkを持っている必要があります。デバッグアプリケーション(apk)は、固定デバッグキーで署名されています。手順:http://stackoverflow.com/questions/4853011/how-to-sign-an-android-apk-file –

+0

なぜアプリケーション*(プロセスcom.xy)がデバッガが接続するのを待っているのですか) *インストールされたapkを実行すると、あなたの言葉通りに生成されていますか? –

16

お客様は、署名のないリリース版を作成します。答えはhereです。私はGUIからそれを行う簡単な方法が表示されていないが、あなたは、シェルコマンドを使用することができます。

./gradlew assembleRelease 

コマンドを実行する前に、あなたのプロジェクトのディレクトリにcdに確認してください。これは、ファイル

Project1Project/Project1/build/apk/Project1-release-unaligned.apk 

あなたが./gradlew assembleを実行すると、リリースとデバッグバージョンの両方が構築されますが生成されます。

詳細ドキュメントhere。 Androidのメーカー1.3.1、すぐに公開APKの場所から

3

は次のとおりです。

app -> app-release.apk 

これは、Googleに公開しなければならない

中間のAPKを再生するには:

app -> build -> outputs -> apk -> app-release-unaligned.apk 

これは署名プロセスの中間結果です.Google Playに公開しないでください。

1

Android gradleは、2つのバイナリでapkを生成します:Unaligned and Aligned。 Unalignedは、データ、ファイルがAPKファイル内でどのように構成されているかを示します。 zipalignというユーティリティーは、ユーザーに最適化された方法でデータを整列させるようにAPKを変更します。 Unalignedは単にzipalignステージをスキップします。

ただし、Aligned APKは最適化されたバージョンです。ファイルはより構造化され、圧縮されているため、アプリの実行速度が向上します。また、RAMの使用に最適化されているため、デバイス上のRAM消費も少なくて済みます。 生成されたAPKにもサイズの違いが表示されます。

関連する問題