Czy już coś zrobiłeś lub szukasz rekomendacji na początek?
atk
2
Są to następujące kroki, które zrobiłem: 1-instalacja eclipse 2- instalacja jdk 3- instalacja sdk 4- instalacja wtyczki dla systemu Android. nie udało mi się wykonać polecenia w win cmd, polecenia: $ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000 (który generuje klucz prywatny). dzięki
user482762,
@ user482762: czy odpowiedź CommonsWare działała dla Ciebie? Dlaczego nie udało Ci się wykonać wind cmd?
atk
Odpowiedź CommonsWare nie działa dla mnie, kiedy próbuję wykonać polecenia z cmd, pojawia się komunikat o błędzie: „$ nie jest rozpoznawany jako polecenie wewnętrzne lub zewnętrzne, program operacyjny lub plik wsadowy”. dzięki za pomoc
user482762,
Ach! Nie chcesz tak naprawdę wpisywać $. W systemie Windows, gdy używasz wiersza polecenia (aplikacji cmd), wiersz wprowadzania zwykle wygląda jak DRIVE: / DIRECTORY>, na przykład „c: \”. W Uniksie monit często wygląda jak „$” lub po prostu „>”. „$” W poleceniu ma reprezentować monit wejściowy, a nie część polecenia. Spróbuj uruchomić keytool ze wszystkimi argumentami, bez $.
atk
Odpowiedzi:
545
Aby odpowiedzieć na pytanie w tytule, należy utworzyć magazyn kluczy za pomocą narzędzia Java Keytool, które jest dostarczane z dowolną standardową dystrybucją JDK i można je znaleźć pod adresem %JAVA_HOME%\bin. W systemie Windows zwykle tak jest C:\Program Files\Java\jre7\bin.
Tak więc w systemie Windows otwórz okno poleceń, przejdź do tego katalogu i wprowadź takie polecenie
Keytool monituje o podanie haseł do magazynu kluczy, podanie pól Nazwa wyróżniająca, a następnie hasła do klucza. Następnie generuje magazyn kluczy jako plik o nazwie my-release-key.keystore w katalogu, w którym się znajdujesz. Magazyn kluczy i klucz są chronione wprowadzonymi hasłami. Magazyn kluczy zawiera jeden klucz, ważny przez 10000 dni. Alias to nazwa, której będziesz używać później, aby odwoływać się do tego magazynu kluczy podczas podpisywania aplikacji.
Dobry krzyk na temat zdefiniowania -keysize 2048 zamiast domyślnej 1024 osobiście używam teraz 4096
scottyab
9
w celu uzyskania informacji w moim przypadku muszę otworzyć okno poleceń z uprawnieniami administratora
Intuitisoft,
To daje mi: E / TokenRequestor: Masz nieprawidłowe konfiguracje związane z OAuth2, sprawdź. Błąd szczegółowy: UNREGISTERED_ON_API_CONSOLE Już utworzyłem poświadczenie, wprowadzając mój SHA1 w konsoli API.
Użyłem tego polecenia, które ustawia 2 hasła, tak aby pominąć niektóre podpowiedzi: keytool -genkey -v -keystore debug.keystore -storepass android -alias android -keypass android -keyalg RSA -keysize 2048 -validity 10000. Następnie, aby wygenerować SHA-1, który musisz umieścić w Firebase, wykonaj:keytool -list -v -keystore debug.keystore -alias android -storepass android -keypass android
Albert Vila Calvo
158
Podpisywanie aplikacji w Android Studio
Aby podpisać aplikację w trybie wydania w Android Studio, wykonaj następujące kroki:
1- Na pasku menu kliknij Kompiluj> Generuj podpisany APK.
2-W oknie Kreatora generowania podpisanego pliku APK kliknij opcję Utwórz nowy, aby utworzyć nowy magazyn kluczy. Jeśli masz już magazyn kluczy, przejdź do kroku 4.
3- W oknie Nowy magazyn kluczy wprowadź wymagane informacje, jak pokazano na rysunku. Twój klucz powinien być ważny przez co najmniej 25 lat, abyś mógł podpisywać aktualizacje aplikacji tym samym kluczem przez cały okres użytkowania aplikacji.
4- W oknie Kreatora generowania podpisanego pliku APK wybierz magazyn kluczy, klucz prywatny i wprowadź hasła dla obu. Następnie kliknij przycisk Dalej.
5- W następnym oknie wybierz miejsce docelowe podpisanego pliku APK i kliknij przycisk Zakończ.
Chociaż ta odpowiedź jest poprawna, jest wygodna tylko wtedy, gdy masz już zainstalowane studio Android.
Seph Reed,
98
Byłem szalony, szukając sposobu na wygenerowanie .keystore przy użyciu w powłoce polecenia jednowierszowego , aby móc uruchomić go z innej aplikacji. To jest sposób:
echo y | keytool -genkeypair -dname "cn=Mark Jones, ou=JavaSoft, o=Sun, c=US"-alias business -keypass kpi135 -keystore /working/android.keystore -storepass ab987c -validity 20000
dname to unikalny identyfikator aplikacji w .keystore
c pełne imię i nazwisko osoby lub organizacji, która generuje .keystore
ou Jednostka organizacyjna, która tworzy projekt, jego jednostka organizacyjna, która go tworzy. Dawny. android.google.com
o Właściciel organizacji całego projektu. Ma większy zasięg niż ou . Np .: google.com
c Krótki kod kraju. Np .: dla Stanów Zjednoczonych to „US”
alias Identyfikator aplikacji jako pojedynczego elementu w .keystore (może mieć wiele)
keypass Hasło do ochrony tego konkretnego aliasu.
ścieżka do pliku kluczy, w którym ma zostać utworzony plik .keystore (w rzeczywistości jest to standardowe rozszerzenie .ks)
storepass Hasło do ochrony całej zawartości .keystore .
ważność W ciągu kilku dni aplikacja będzie działać z tym .keystore
@eliasbagley, ponieważ polecenie -storepass jak napisano powyżej rozpoczęło się w innym wierszu. Napisz wszystko w jednym wierszu i wszystko będzie dobrze.
tormuto
82
Utwórz plik kluczy z wiersza poleceń:
Otwórz wiersz poleceń:
MicrosoftWindows[Version6.1.7601]Copyright(c)2009MicrosoftCorporation.All rights reserved
// (if you want to store keystore file at C:/ open command line with RUN AS ADMINISTRATOR)
C:\Windows\system32> keytool -genkey -v -keystore [your keystore file path]{C:/index.keystore}-alias[your_alias_name]{index}-keyalg RSA -keysize 2048-validity 10000[in days]
Enter> Poprosi cię o hasło> wpisz hasło (będzie niewidoczne)
Enter keystore password:Re-enter new password:
Enter> Zapyta o Twoje dane.
Whatis your first andlast name?[Unknown]:{AB}// [Your Name / Name of Signer] Whatis the name of your organizational unit?[Unknown]:{Self}// [Your Unit Name] Whatis the name of your organization?[Unknown]:{Self}// [Your Organization Name] Whatis the name of your CityorLocality?[Unknown]:{INDORE}// [Your City Name] Whatis the name of your StateorProvince?[Unknown]:{MP}//[Your State] Whatis the two-letter country code forthis unit?[Unknown]:91
Enter> Enter Y
Is CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91 correct?[no]: Y
Wprowadź> Wprowadź ponownie hasło.
Generating2,048 bit RSA key pair andself-signed certificate (SHA256withRSA)with a validity of10,000 days
for: CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91Enter key password for<index>(RETURN if same as keystore password):Re-enter new password:
[Przechowywanie C: /index.keystore]
I jesteś GOTOWY !!!
Eksportuj w środowisku Eclipse:
Wyeksportuj swój pakiet Androida do .apk z utworzonym plikiem magazynu kluczy
Kliknij prawym przyciskiem myszy pakiet, który chcesz wyeksportować, i wybierz eksport
Wybierz opcję Eksportuj aplikację na Androida> Dalej
Kolejny
Wybierz Użyj istniejącego magazynu kluczy> Przeglądaj plik .keystore> wprowadź hasło> Dalej
Wybierz Alias> wprowadź hasło> Dalej
Przeglądaj miejsce docelowe APK> Zakończ
W Android Studio:
Utwórz magazyn kluczy [.keystore/.jks]w studio ...
był dla mnie bardzo pomocny, kiedy pierwszy raz musiałem utworzyć magazyn kluczy. To proste, ale instrukcje na developer.android.com są trochę zbyt krótkie.
Nie byłem pewien, gdzie zapisać i jaką nazwę nadać plikowi kluczy .
Wydaje mi się, że nie ma znaczenia, gdzie to umieścisz, po prostu upewnij się, że jest bezpieczny i przechowujesz kilka kopii zapasowych. Po prostu umieściłem go w katalogu aplikacji
Nazwij plik „something.keystore”, w którym coś może być czymkolwiek chcesz. Użyłem app_name.keystore , gdzie app_name to nazwa mojej aplikacji.
Następną częścią było, jak nazwać alias. Znowu nie wydaje się to mieć znaczenia, więc ponownie użyłem nazwy aplikacji . Zachowaj hasła takie same jak wcześniej. Wypełnij pozostałe pola i gotowe.
Pierwszą rzeczą, o której należy wiedzieć, jest to, czy jesteś w trybie debugowania lub zwalniania. Ze strony dla programistów „Istnieją dwa tryby kompilacji: tryb debugowania i tryb wydania. Tryb debugowania jest używany podczas opracowywania i testowania aplikacji. Tryb wydania jest używany, gdy chcesz zbudować wersję wydania aplikacji, którą możesz dystrybuować bezpośrednio użytkownikom lub publikować w sklepie z aplikacjami, takim jak Google Play ”.
W trybie debugowania wykonaj następujące czynności:
A. Otwórz terminal i wpisz:
Możesz utworzyć swój magazyn kluczy, eksportując podpisany plik APK. Gdy spróbujesz wyeksportować / zbudować podpisany plik APK, poprosi on o magazyn kluczy.
Możesz wybrać istniejący magazyn kluczy lub łatwo utworzyć nowy, klikając przycisk Utwórz nowy magazyn kluczy
Tutaj link jest bardzo przydatny i dobrze wyjaśniony, jak utworzyć plik kluczy i wygenerować podpisany plik APK
Ten link wyjaśnił, jak to zrobić w Android Studio, ale jeśli pamiętam, w Eclipse jest dość podobny
UWAŻAJ
Po wygenerowaniu magazynu kluczy przechowuj go w bezpiecznym miejscu, ponieważ będzie on potrzebny do ponownego wygenerowania nowego podpisanego pliku APK.
Odpowiedzi:
Aby odpowiedzieć na pytanie w tytule, należy utworzyć magazyn kluczy za pomocą narzędzia Java Keytool, które jest dostarczane z dowolną standardową dystrybucją JDK i można je znaleźć pod adresem
%JAVA_HOME%\bin
. W systemie Windows zwykle tak jestC:\Program Files\Java\jre7\bin
.Tak więc w systemie Windows otwórz okno poleceń, przejdź do tego katalogu i wprowadź takie polecenie
Keytool monituje o podanie haseł do magazynu kluczy, podanie pól Nazwa wyróżniająca, a następnie hasła do klucza. Następnie generuje magazyn kluczy jako plik o nazwie my-release-key.keystore w katalogu, w którym się znajdujesz. Magazyn kluczy i klucz są chronione wprowadzonymi hasłami. Magazyn kluczy zawiera jeden klucz, ważny przez 10000 dni. Alias to nazwa, której będziesz używać później, aby odwoływać się do tego magazynu kluczy podczas podpisywania aplikacji.
Więcej informacji na temat Keytool znajduje się w dokumentacji pod adresem : http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html
i więcej informacji na temat podpisywania aplikacji na Androida znajdziesz tutaj: http://developer.android.com/tools/publishing/app-signing.html
źródło
keytool -genkey -v -keystore debug.keystore -storepass android -alias android -keypass android -keyalg RSA -keysize 2048 -validity 10000
. Następnie, aby wygenerować SHA-1, który musisz umieścić w Firebase, wykonaj:keytool -list -v -keystore debug.keystore -alias android -storepass android -keypass android
Podpisywanie aplikacji w Android Studio
Aby podpisać aplikację w trybie wydania w Android Studio, wykonaj następujące kroki:
odniesienie
http://developer.android.com/tools/publishing/app-signing.html
źródło
Byłem szalony, szukając sposobu na wygenerowanie .keystore przy użyciu w powłoce polecenia jednowierszowego , aby móc uruchomić go z innej aplikacji. To jest sposób:
dname to unikalny identyfikator aplikacji w .keystore
alias Identyfikator aplikacji jako pojedynczego elementu w .keystore (może mieć wiele)
.ks
)Działa to dla mnie naprawdę dobrze, nie prosi o nic innego w konsoli, po prostu tworzy plik. Aby uzyskać więcej informacji, zobacz keytool - Narzędzie do zarządzania kluczami i certyfikatami .
źródło
/path/file.keystore
i wskazać to za pomocą parametru storepass.jks
jest oficjalnym rozszerzeniem magazynu kluczy dla java w ogóle, alekeystore
zaleca się stosowanie go zamiast tego w aplikacjach na Androida .Utwórz plik kluczy z wiersza poleceń:
Otwórz wiersz poleceń:
Enter> Poprosi cię o hasło> wpisz hasło (będzie niewidoczne)
Enter> Zapyta o Twoje dane.
Enter> Enter Y
Wprowadź> Wprowadź ponownie hasło.
Eksportuj w środowisku Eclipse:
Wyeksportuj swój pakiet Androida do .apk z utworzonym plikiem magazynu kluczy
Kliknij prawym przyciskiem myszy pakiet, który chcesz wyeksportować, i wybierz eksport
Wybierz opcję Eksportuj aplikację na Androida> Dalej
Kolejny
Wybierz Użyj istniejącego magazynu kluczy> Przeglądaj plik .keystore> wprowadź hasło> Dalej
Wybierz Alias> wprowadź hasło> Dalej
Przeglądaj miejsce docelowe APK> Zakończ
W Android Studio:
Utwórz magazyn kluczy
[.keystore/.jks]
w studio ...Kliknij Kompiluj (ALT + B) > Wygeneruj podpisany plik APK ...
Kliknij Utwórz nowy .. (ALT + C)
Przeglądaj ścieżkę do magazynu kluczy (SHIFT + ENTER)> Wybierz ścieżkę> Wpisz nazwę> OK
Podaj szczegóły dotyczące
.jks/keystore
plikuKolejny
Plik
Wprowadź hasło główne Studio (możesz zresetować, jeśli nie wiesz) > OK
Wybierz * Folder docelowy *> Typ kompilacji
Kliknij przycisk Zakończ
Gotowy !!!
źródło
Ten samouczek:
http://techdroid.kbeanie.com/2010/02/sign-your-android-applications-for.html
był dla mnie bardzo pomocny, kiedy pierwszy raz musiałem utworzyć magazyn kluczy. To proste, ale instrukcje na developer.android.com są trochę zbyt krótkie.
Nie byłem pewien, gdzie zapisać i jaką nazwę nadać plikowi kluczy .
Wydaje mi się, że nie ma znaczenia, gdzie to umieścisz, po prostu upewnij się, że jest bezpieczny i przechowujesz kilka kopii zapasowych. Po prostu umieściłem go w katalogu aplikacji
Nazwij plik „something.keystore”, w którym coś może być czymkolwiek chcesz. Użyłem app_name.keystore , gdzie app_name to nazwa mojej aplikacji.
Następną częścią było, jak nazwać alias. Znowu nie wydaje się to mieć znaczenia, więc ponownie użyłem nazwy aplikacji . Zachowaj hasła takie same jak wcześniej. Wypełnij pozostałe pola i gotowe.
źródło
Postępowałem zgodnie z tym przewodnikiem, aby utworzyć debugujący magazyn kluczy.
Polecenie to:
źródło
Użyj tego polecenia, aby utworzyć debug.keystore
źródło
Pierwszą rzeczą, o której należy wiedzieć, jest to, czy jesteś w trybie debugowania lub zwalniania. Ze strony dla programistów „Istnieją dwa tryby kompilacji: tryb debugowania i tryb wydania. Tryb debugowania jest używany podczas opracowywania i testowania aplikacji. Tryb wydania jest używany, gdy chcesz zbudować wersję wydania aplikacji, którą możesz dystrybuować bezpośrednio użytkownikom lub publikować w sklepie z aplikacjami, takim jak Google Play ”.
W trybie debugowania wykonaj następujące czynności:
A. Otwórz terminal i wpisz:
Uwaga: W przypadku Eclipse magazyn kluczy debugowania zwykle znajduje się w ~ / .android / debug.keystore ...
B. gdy pojawi się monit o hasło, wpisz „android” ...
C. Jeśli jesteś w trybie zwolnienia, postępuj zgodnie z instrukcjami ...
http://developer.android.com/tools/publishing/app-signing.html <- ten link wyjaśnia wszystko, co musisz wiedzieć.
źródło
Możesz utworzyć swój magazyn kluczy, eksportując podpisany plik APK. Gdy spróbujesz wyeksportować / zbudować podpisany plik APK, poprosi on o magazyn kluczy.
Możesz wybrać istniejący magazyn kluczy lub łatwo utworzyć nowy, klikając przycisk Utwórz nowy magazyn kluczy
Tutaj link jest bardzo przydatny i dobrze wyjaśniony, jak utworzyć plik kluczy i wygenerować podpisany plik APK
Ten link wyjaśnił, jak to zrobić w Android Studio, ale jeśli pamiętam, w Eclipse jest dość podobny
UWAŻAJ
Po wygenerowaniu magazynu kluczy przechowuj go w bezpiecznym miejscu, ponieważ będzie on potrzebny do ponownego wygenerowania nowego podpisanego pliku APK.
Jak mogę wyeksportować projekt do studia Android?
źródło
Chciałbym zaproponować automatyczny sposób tylko z gradem
** Zdefiniuj także co najmniej jeden dodatkowy parametr dla magazynu kluczy w ostatnim poleceniu, np. Kraj
'-dname', 'c=RU'
**Spowoduje to wygenerowanie magazynu kluczy podczas synchronizacji i kompilacji projektu
źródło
Jeśli nie chcesz lub nie możesz korzystać z Android Studio, możesz użyć narzędzia NPM create-android-keystore:
Co powoduje powstanie nowo wygenerowanego magazynu kluczy w bieżącym katalogu.
Więcej informacji: https://www.npmjs.com/package/create-android-keystore
źródło