Po napotkaniu problemów podczas korzystania z interfejsu Android Studio do utworzenia konfiguracji podpisu pomyślnie z powodzeniem zarządzałem konfiguracją za pomocą pliku kompilacji gradle.
Otwórz swój plik build.gradle projektów. Powinna ona zawierać coś takiego:
android{
//signingConfigs goes here
defaultConfig{
//SDK version, version code etc
}
//Some more stuff
}
Jeżeli nie jest już tam, dodaj następujący fragment poniżej android {
signingConfigs {
debug {
storeFile file(project.property("MyApp.signing"))
storePassword project.property("MyApp.signing.password")
keyAlias project.property("MyApp.signing.alias")
keyPassword project.property("MyApp.signing.password")
}
}
Teraz w tym samym katalogu, w którym plik build.gradle kłamstwa powinieneś mieć plik gradle.properties (jeśli nie, utwórz go). Będziemy teraz dodać właściwości użyliśmy wyżej plik właściwości, aby odwzorować wartości:
MyApp.signing=RelativeOrAbsolutePathToKeystore
MyApp.signing.password=yourPassword
MyApp.signing.alias=aliasNameOfYourKeystore
Przykładem gdzie plik keystore.jsk (generowane przez Android Studio) leży jeden katalog powyżej katalogu aplikacji (w którym plik ma właściwości):
MyApp.signing=../myapp.keystore.jsk
MyApp.signing.password=helloworkd
MyApp.signing.alias=myapp_alias
Powyższa konfiguracja będzie następnie użyć klucza do podpisania build debugowania (ponieważ nasze signingConfigs powstał dla kompilacji debugowania).
Upewnij się więc, że w Android Studio, aby ustawić wariant kompilacji na "debugowanie". Jeśli chcesz zrobić to wszystko dla wersji Release Build, zmień swoje warianty kompilacji na wersję i podpisujConfigs, aby zwolnić {...} zamiast debugowania {...} lub po prostu dodaj oba, jeśli chcesz się między nimi przełączać.
Dlaczego chcesz budować za pomocą niestandardowego magazynu kluczy? –
@ScottBarta moja aplikacja używa login facebook, więc muszę zarejestrować prawidłowy hasz klucza, więc chcę użyć tego, który zamierzam wydać, kiedy będzie gotowy – ppp
Nie jestem zaznajomiony z pisaniem aplikacji na API Facebooka, więc Nie mogę wypowiedzieć się, czy to jest właściwe, czy nie. Ale w innym przypadku odpowiedziałem na twoje pytanie poniżej. –