Android Studio-デバッグキーストア


107

Android Studioはデバッグビルドに署名しますか?もしそうなら、それを行うために使用するキーストアはどこですか?


1
署名されたビルドしかインストールできないため、とにかく署名します。
Alexander Kulyakhtin 2013年

3
これは有効なプログラミングの質問だと思います。これは、Androidアプリの開発時に使用されるツールチェーンに直接関連しています。
オースティンマホニー2013


@Prachiこれはどのようにして3年以上後に尋ねられた質問の複製になりますか?多分それはこれの複製です。
fasteque

回答:


179

同じ場所にあります: ~/.android/debug.keystore


5
代わりに〜/ .androidにありませんか?
Eugene Mymrin 2013

14
keytool -list -v -keystore〜/ .android / debug.keystore
jturolla 2013

5
これは、keytoolコマンドのWindowsバージョンです。keytool -exportcert -alias androiddebugkey -keystore C:\ Users \ <User> \。android \ debug.keystore -list -v
Simon

12
デフォルトのパスワードは「android」で、キーエイリアスは「androiddebugkey」です。
naXa 2016年

1
また、androiddebugkeyのデフォルトのパスワードも「android」です。
kibitzerCZ

64

Windowsを使用している場合、場所は次のようになります。

C:\ User \ YourUser \ .android \ debug.keystore


30

必要に応じて、独自のデバッグキーストアを指定できます。このソリューションでは、キーをプロジェクトディレクトリの外部に保存することも、署名プロセスの自動化を楽しむこともできます。はいFile -> Project StructureSigningタブで署名キーストアとパスワードに移動して割り当てることができますが、それにより、プレーンテキストのエントリがgradle.buildファイルに書き込まれます。このソリューションを使用すると、独自のキーストアを使用して制御し、デバッグおよびリリースビルド中に自動化の魔法を利用できます。

1) gradle.propertiesを作成します(まだ持っていない場合)。

このファイルの場所は、OSによって異なります。

   /home/<username>/.gradle/ (Linux)
   /Users/<username>/.gradle/ (Mac)
   C:\Users\<username>\.gradle (Windows)

2)yourprojectname.propertiesファイルを指すエントリを追加します。 (Windowsの例)

yourprojectname.properties=c:\\Users\\<username>\\signing\\yourprojectname.properties

3)yourprojectname.properties手順2で指定した場所に、次の情報を含むファイルを作成します。

keystore=C:\\path\\to\\keystore\\yourapps.keystore
keystore.password=your_secret_password

4)変数を使用するgradle.buildファイルを指すようにyourprojectname.propertiesファイルを変更します。

if(project.hasProperty("yourprojectname.properties")
        && new File(project.property("yourprojectname.properties")).exists()) {

    Properties props = new Properties()
    props.load(new FileInputStream(file(project.property("yourprojectname.properties"))))

    android {
        signingConfigs {
            release {
                keyAlias 'release'
                keyPassword props['keystore.password']
                storeFile file(props['keystore'])
                storePassword props['keystore.password']
            }
            debug {
                keyAlias 'debug'
                keyPassword props['keystore.password']
                storeFile file(props['keystore'])
                storePassword props['keystore.password']
            }
        }
        compileSdkVersion 19
        buildToolsVersion "20.0.0"
        defaultConfig {
            applicationId "your.project.app"
            minSdkVersion 16
            targetSdkVersion 17
        }
        buildTypes {
            release {
            }
        }
    }

}

dependencies {
    ...
}

5)お楽しみください! これで、すべてのキーはディレクトリのルートの外にありますが、ビルドごとに自動化の喜びを享受できます。

「props」変数に関するgradle.buildファイルでエラーが発生した場合、それifは、props変数が割り当てられる最初の条件内で「android {}」ブロックを実行していないため、android全体を移動するだけです... }セクションで、props変数が割り当てられている状態にしてから、再試行してください。

ここここにある情報からこれらのステップを組み合わせまし


1
「2)エントリー追加…」について。エントリをどこに追加しますか?
VikingGlen

ビルドの自動化のアイデアが大好き
Khurram Shehzad 2016

おかげで、これは本番用のパスワードをソース管理の外に保持する優れた方法です(そのため、すべての開発者が使用できるわけではありません)。
偽物2016

15

Android Studioのdebug.keystoreファイルパスは、環境変数ANDROID_SDK_HOMEによって異なります。

ANDROID_SDK_HOMEが定義されている場合、ファイルは.androidという名前のSDKのサブフォルダーに配置されます。
定義されていない場合は、キーストアと同じサブフォルダ内のユーザーのホームパスに置か:
- 。%HOMEPATH%\ androidの\ Windows上
- $ HOME / .android / Linux上


1
提供するソリューションについてもう少し説明を追加して、回答を詳しく説明していただけませんか?
abarisone 2015年

なぜ87人が〜/ .android / debug.keystoreにあると思っているのですか、「ANDROID_SDK_HOME」という名前の環境変数がありませんか???
IloveIniesta

これはとても役に立ちました。どうもありがとう
Rahul

4

これが最後に〜/ .android / debug.keystoreファイルを作成した方法です。

最初にいくつかの背景。旅行用の新しいノートパソコンを手に入れました。Android Studioをインストールしました。gitハブからAndroidプロジェクトを複製しました。プロジェクトは実行されません。最後に、debug.keystoreが作成されていないことがわかりました...そして、Android Studioでそれを作成する方法を理解できませんでした。

最後に、新しい空のプロジェクトを作成しました...そして、debug.keystoreを作成しました!

これがこの問題を抱えている他の人を助けることを願っています。



1

Windowsを使用している場合は、次のようになります。 [ファイル]-> [プロジェクト構造]-> [ファセット]

Androidプロジェクトを選択し、[ファセット 'Android']ウィンドウでTAB [パッケージ]をクリックすると、必要なものが見つかります


2
「ファセット」のようなメニューはありません
IgorGanapolsky
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.