1. 程式人生 > >用Android studio直接獲取debug和release的SHA1和MD5值

用Android studio直接獲取debug和release的SHA1和MD5值

當我們申請友盟或者百度地圖等金鑰時,會需要SHA1或者MD5,查一些資料都是用es或者dos命令生成,現在嘗試用As生成。

新建一個專案,然後按照下圖操作,看會有什麼效果:


根據我描述的三步,直接發現直接生成了debug的SHA1和MD5:如圖


是不是很快捷,現在就來試著同時生成debug和release的SHA1和MD5值。

第一步:把Store: C:\Users\Administrator\.android\debug.keystore中的debug.keystore檔案拷貝到專案檔案config下:


第二步:獲取正式簽名包的.jks檔案,同樣拷貝到config資料夾下,如果沒有該檔案,用build->Generate Signed Apk去獲取,這裡不細講了

第三步:在config資料夾下新建signing.properties檔案,內容如下


其實就是對應的簽名:


好了到這裡我們config資料夾下已經有三個檔案了


第四步,也是最後一步,配置gradle:

signingConfigs {
        debug {
            storeFile file("../config/debug.keystore")
        }
        release {
            storeFile file("release.jks")
        }

    }

buildTypes {
        release {
            minifyEnabled true
            signingConfig signingConfigs.release
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
File propFile = file('../config/signing.properties');
    if (propFile.exists()) {
        def Properties props = new Properties()
        props.load(new FileInputStream(propFile))
        if (props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') &&
                props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) {
            android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
            android.signingConfigs.release.storePassword = props['STORE_PASSWORD']
            android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
            android.signingConfigs.release.keyPassword = props['KEY_PASSWORD']
        } else {
            android.buildTypes.release.signingConfig = null
        }
    } else {
        android.buildTypes.release.signingConfig = null
    }
完成後,如圖所示:


到這裡我們基本完成了,再執行下文章最開始那一步:


發現debug和release都直接生成了:



至此,大功告成。