[解決済み] build.gradleに鍵屋の情報を入れずにAPKを署名する
2022-04-28 01:04:02
質問
署名プロセスをセットアップして、キーストアパスワードとキーパスワードが一致するようにしようとしています。
はありません。
に保存され、プロジェクトの
build.gradle
ファイルを作成します。
現在、私は以下のように
build.gradle
:
android {
...
signingConfigs {
release {
storeFile file("my.keystore")
storePassword "store_password"
keyAlias "my_key_alias"
keyPassword "key_password"
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
全く問題なく動作しますが
はいけません。
に値を入れる。
storePassword
と
keyPassword
を私のリポジトリに追加しました。私は
storeFile
と
keyAlias
のどちらかです。
を変更する方法はありますか?
build.gradle
外部ソース(私のコンピュータにのみ存在するファイルなど)からパスワードを取得するようにするには?
そしてもちろん、改変された
build.gradle
は、他のどのコンピューターでも(たとえそのコンピューターがパスワードにアクセスできないとしても)使用できるはずです。
私はAndroid StudioとMac OS X Mavericsを使用していますが、問題ないでしょうか?
解決方法は?
Groovyのいいところは、Javaのコードを自由に混ぜることができることで、キー/バリュー・ファイルを読み込むには、かなり簡単に
java.util.Properties
. おそらく、慣用的なGroovyを使ったもっと簡単な方法があるのでしょうが、それでもJavaはかなりシンプルです。
を作成します。
keystore.properties
ファイル (この例では、プロジェクトのルートディレクトリにある
settings.gradle
しかし、好きな場所に置くことができます。
storePassword=...
keyPassword=...
keyAlias=...
storeFile=...
これを
build.gradle
:
allprojects {
afterEvaluate { project ->
def propsFile = rootProject.file('keystore.properties')
def configName = 'release'
if (propsFile.exists() && android.signingConfigs.hasProperty(configName)) {
def props = new Properties()
props.load(new FileInputStream(propsFile))
android.signingConfigs[configName].storeFile = file(props['storeFile'])
android.signingConfigs[configName].storePassword = props['storePassword']
android.signingConfigs[configName].keyAlias = props['keyAlias']
android.signingConfigs[configName].keyPassword = props['keyPassword']
}
}
}
関連
-
adb シェルがデバイスのオフラインを求めるプロンプトを表示する
-
aapt2エラー:ログを確認する(具体的な原因の探り方)
-
AndroidエミュレーターのADBサーバーがACKしない問題
-
AndroidStudio reports Could not resolve all artifacts for configuration ':app:classpath'.
-
RuntimeException: アクティビティを開始できません ComponentInfo solution
-
アプリケーションがメインスレッドで過剰に作業している可能性があります。
-
repo: コマンドが見つかりません
-
Android Bluetooth 開発の基本プロセス
-
Android基本アプレット
-
AndroidStudioのショートカット 検索/置換
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
android.os の NetworkOnMainThreadException。
-
Androidで発生した問題、解決策とヒント
-
アンドロイドプロジェクトのパッケージングにgradleを使用する際の問題点
-
Androidプロセス生存のためのソリューション
-
問題 ---- Android ---- ActivityManager: Error: アクティビティクラス{xx/xx.MainActivity}が存在しない
-
Androidカスタムドロップダウンリストボックスコントロール
-
アンドロイドの遅延実行のいくつかの方法
-
AndroidStudioのショートカット 検索/置換
-
Android Studio http://schemas.android.com/apk/res/android 「URIが登録されていません」の解決方法について
-
[解決済み】Gradleを使用してリリース署名付きapkファイルを作成する方法は?