Wygeneruj podpisane APK Android Studio


85

Jestem nowy w programowaniu na Androida i właśnie ukończyłem moją pierwszą aplikację. Chcę wygenerować podpisany plik APK w Android Studio. Przeczytałem dokumentację programisty, ale nie mogłem zrozumieć kroków. Kiedy klikam Build>Generate Signed APK..., wyświetla mi się okno dialogowe z pytaniem:

Keystore path  //with two options create new and choose existing
Keystore password
Key alias
key password

Nie rozumiem, co to jest magazyn kluczy, nawet po wyszukaniu go w Google. Kiedy wybieram create new, prosi mnie o wybranie ścieżki i zlokalizowanie .jkspliku, którego nie mam! Czy ktoś może wyjaśnić i wymienić kroki, aby wygenerować podpisany plik APK.


2
Ta odpowiedź jest całkiem dobra: stackoverflow.com/a/6849903/2927883
Pull

Odpowiedzi:


45

Użyj pliku binarnego Keytool lub exe, aby wygenerować prywatny magazyn kluczy. Instrukcje tutaj . Następnie możesz podpisać swoją aplikację przy użyciu tego magazynu kluczy. Keytool jest instalowany podczas instalacji Javy.

UWAGA: Zapisz / wykonaj kopię zapasową tego magazynu kluczy, ponieważ po opublikowaniu aplikacji w grze, podpisując ją przy użyciu tego magazynu kluczy, będziesz musiał używać tego samego magazynu kluczy do wszelkich przyszłych aktualizacji. Dlatego ważne jest, aby wykonać kopię zapasową.

HTH.


Myślę, że pytanie jest tutaj inne, użytkownik jest zdezorientowany, jak wybrać plik .jks, który po prostu przypomina nazwę. prawidłowa odpowiedź to @jackspier poniżej
Raj

98

Nie wydaje mi się, aby ktokolwiek odpowiedział poprawnie na pytanie, więc dla każdego, kto ma to samo pytanie, powinno to pomóc:

Krok 1: Przejdź do Build> Generate Signed APK> Next (wybrany moduł to Twój moduł, najczęściej nazywany „aplikacją”)

Krok 2 Kliknij utwórz nowy

Krok 3 Zasadniczo wypełnij formularz wymaganymi danymi. Mylące jest to, że prosi o ścieżkę magazynu kluczy . Kliknij ikonę po prawej stronie z 3 kropkami („...”), co otworzy okno nawigatora z prośbą o nawigację i wybranie pliku .jks. Przejdź do folderu, w którym chcesz zapisać plik magazynu kluczy, a następnie w polu Nazwa pliku na dole tego okna, po prostu wprowadź swoją ulubioną nazwę, a przycisk OK będzie teraz klikalny. Dzieje się tak, że okno tak naprawdę nie pyta, czy wybrałeś plik .jks, ale raczej chce, abyś nadał mu lokalizację i nazwę, którą chcesz, aby miał.

Krok 4 Kliknij Dalej, a następnie wybierz Zwolnij i Voila! gotowe.


Gdzie jest zapisywany plik? Dzięki
Imogen Johnson

Właśnie pisałem tutaj, że w sekcji „Kompilacja” nie ma opcji „Generuj podpisany plik APK”.
Mark Ebden

24

Przeczytaj moją odpowiedź tutaj

Jak wyeksportować projekt w studiu Android?

To poprowadzi Cię krok po kroku, jak wygenerować podpisany plik APK i jak utworzyć plik magazynu kluczy z Android Studio.

Z linku możesz to łatwo zrobić, ponieważ dodałem zrzut ekranu krok po kroku.

Krótka odpowiedź

Jeśli masz plik magazynu kluczy, możesz zrobić to samo.

Przejdź do Build, a następnie kliknij Generate Signed APK


16

„Oficjalny” sposób konfiguracji pliku build.gradle zgodnie z zaleceniami Google jest wyjaśniony tutaj .

Zasadniczo dodajesz signingConfig , w którym określasz lokalizację i hasło do magazynu kluczy. Następnie w typie kompilacji wydania należy odnieść się do konfiguracji podpisywania.

...
android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file("myreleasekey.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}
...

15
  1. Przejdź do Build -> Generate Signed APK in Android Studio.
  2. W nowym oknie pojawi, kliknij Utwórz nowe ... przycisk.
  3. Następnie wprowadź szczegóły, jak pokazano poniżej i kliknij OK -> Dalej . wprowadź opis obrazu tutaj
  4. Wybierz typ kompilacji jako wydanie i kliknij przycisk Zakończ .
  5. Poczekaj, aż komunikat APK wygenerowany pomyślnie zostanie wyświetlony, jak pokazano poniżej.wprowadź opis obrazu tutaj
  6. Kliknij Pokaż w Eksploratorze, aby zobaczyć podpisany plik APK.

Aby uzyskać więcej informacji, przejdź do tego linku.


4

5 prostych wizualnych kroków:

Krok 1: Kliknij Build -> Generate Signed Build / APK

Budować

Krok 2: Wybierz APK -> Dalej APK

Krok 3: KliknijCreate new ... Tworzyć nowe ...

Krok 4: Uzupełnij niezbędne informacje Napełnić

Krok 5: Wybierz wariant kompilacji debug/releasei wersje sygnatur (V2) wprowadź opis obrazu tutaj

Wszystko gotowe, teraz Twój podpisany plik APK zacznie się budować i powinien pojawić się w prawym dolnym rogu, gdy będzie dostępny. Kliknij, locateaby uzyskać podpisany plik APK.

Łatwy?


3

Miałem ten sam problem. Wypełniłem pole plikiem /home/tim/android.jks z samouczka, myśląc, że ten plik zostanie utworzony. a kiedy chciałbym kliknąć Enter, powiedziałbym, że nie mogę znaleźć pliku. ale kiedy spróbuję utworzyć plik, nie pozwoli mi to utworzyć pliku jks. Zamknąłem android studio i uruchomiłem go ponownie i działało dobrze. Musiałem nacisnąć ..., aby poprawnie dodać mój plik. generuj podpisany kreator apk -> nowy magazyn kluczy -> naciśnij ... wybierz plik magazynu kluczy. wprowadź nazwę pliku Myślałem, że będę musiał użyć openjdk i stworzyć własny plik klucza, ale jest on wbudowany w studio Android


2

możesz dodać to do oceny kompilacji

android {
    ...
    defaultConfig { ... }
    signingConfigs {
        release {
            storeFile file("my.keystore")
            storePassword "password"
            keyAlias "MyReleaseKey"
            keyPassword "password"
        }
    }
    buildTypes {
        release {
            ...
            signingConfig signingConfigs.release
        }
    }
}

jeśli potrzebujesz klucza, zrób w ten sposób za pośrednictwem terminala Android stdio w folderze głównym projektu

keytool -exportcert -alias my.keystore -keystore app/my.keystore.jks | openssl sha1 -binary | openssl base64


0

Uwaga : jeśli jest to projekt React Native

Jeśli otworzysz główny folder projektu w Android Studio, nie zobaczysz opcji sugerowanych w innych odpowiedziach na tej stronie.

wprowadź opis obrazu tutaj

Rozwiązanie

Zamiast folderu głównego otworzyłem packages/native/androidfolder. Tylko wtedy mogłem zobaczyć opcje tworzenia podpisanego pliku APK.

https://i.stack.imgur.com/k8Elg.png

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.