Як додати SHA-1 до програми для Android


82

Я намагаюся створити динамічне посилання у Firebase. Коли я вибираю додаток для Android, відображається повідомлення про помилку "Додати SHA-1 до цього додатка для Android", я вже додав облікові дані, але не впевнений, як саме мені "додати SHA-1 до програми"

Як це робиться?


Перевірте це, щоб отримати ключ SHA-1 з вашої андроїд-студії та додати його до проекту
Firebase

1
Я вже отримав ключ SHA-1, але не знаю, як додати його до свого проекту Firebase
Джон

Відповіді:


159

Покоління SHA-1 в андроїд-студії:

змінити параметри проекту Firebase - -

Натисніть кнопку додавання відбитків пальців


  1. Виберіть Gradle в android studio на правій панелі

  2. Виберіть свій додаток

  3. У Завданнях -> android-> підпис звіту

Двічі клацніть signingReport.

Як отримати відбиток пальця sha1


Ви знайдете відбиток пальця SHA-1 у " Консолі Gradle "

Додайте цей відбиток SHA-1 у консоль Firebase

Додайте відбиток пальця SHA1


2
пам’ятайте, що у звіті про підписання звіту скопіюйте і випуск, і налагодження sha1.
гумазед 02.03.18

Не вдалося отримати SHA.
CopsOnRoad

2
ну, мені знадобився деякий час, щоб знайти "Вибрати градацію", оскільки панель мала потрібний розмір. :))))
dod_basim

1
Android Studio 3.3: Клацніть на піктограму слона на панелі Gradle, виберіть проект, введіть у командному рядку: "SignReport", натисніть OK
norbDEV

1
Для тих, хто шукає варіант gradle, кнопка "Gradle" розміщена вертикально нахиленою з правого боку вікна.
Аджай Стефін

113

Якщо ви використовуєте підпис додатків Google Play, вам потрібно використовувати SHA1 із google play, оскільки Google замінить ваш ключ підписання випуску на ключ на сервері googles

введіть тут опис зображення


11
Це має бути набагато вище. Мені зовсім не вистачало, що мій ключ призначений лише для завантаження, а потім Google самостійно звільняється. Мені знадобилася частина ранку, щоб усвідомити це
якесь

2
Дійсно корисно! Служба підписання додатків Google SHA1 має бути додана до списку SHA1 у ваших послугах.
Люсі

4
Спаситель! Це слід виділити в документації Google App Bundle . Вони згадують про це в розділі Поради та найкращі практики внизу сторінки. Однак незрозуміло, що потрібно і як реалізувати.
Адам Гурвіц,

Довелося використовувати сертифікати ключа завантаження SHA-1 та SHA-256. Дякую до речі.
mdhz

46

Ви також можете скористатися командним рядком, щоб отримати свій відбиток пальця SHA-1:

для сертифіката налагодження слід використовувати:

keytool -list -v -keystore C:\Users\user\.android\debug.keystore -alias androiddebugkey -storepass android -keypass android

вам слід змінити " c:\Users\user" шлях до вашого каталогу користувачів Windows

якщо ви хочете отримати виробничий SHA-1 для власного сертифіката, замініть " C:\Users\user\.android\debug.keystore" власний шлях KeyStore і використовуйте KeystorePass та Keypass замість android / android.

Потім задекларуйте SHA-1відбитки пальців, які ви отримаєте на консолі firebase, як сказав Даміні


1
Вам потрібно записати компакт-диск у папку Java bin, щоб функціонував keytool. Для мене це було, C:\Program Files\Android\jdk\microsoft_dist_openjdk_1.8.0.25\binхоча у вас може бути встановлено загальне java-видання безпосередньо уC:\Program Files\Java\...
Тодд,

18

MacOS просто вставте в термінал:

keytool -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android


6

Якщо ви використовуєте Google Play App Signing, вам не потрібно додавати ключі SHA-1 вручну, просто увійдіть у Firebase, перейдіть у "налаштування проекту" -> "інтеграція" і натисніть кнопку, щоб зв'язати Google Play з firebase, SHA -1 буде додано автоматично.


Оскільки ми добре знаємо, що пов’язати Firebase та Google Play можна дуже просто, це надзвичайно простий спосіб позбутися кроків генерації та інтеграції SHA. Протягом хвилини я зміг змусити помилку входу в Google для мого додатка Live. Дякую.
mohit kejriwal

5

Про всяк випадок: використовуючи командний рядок для створення відбитка пальця SHA1, будьте обережні, визначаючи шлях до папки. Якщо у вашому Імені користувача або шляху до папки android є пробіл, слід додати дві подвійні лапки, як показано нижче:

keytool -list -v -keystore "C:\Users\User Name\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android


4

У Windows відкрийте програму командного рядка. Ви можете зробити це, перейшовши в меню «Пуск»

  keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore

На Mac / Linux відкрийте термінал і вставте

   keytool -exportcert -list -v -alias androiddebugkey -keystore ~/.android/debug.keystore

2

коли я генерую ключ sha1 за допомогою android studio

Gradle -> Tasks -> android-> signingReportі двічі клацніть

Цей ключ sha1 працює в режимі налагодження, але не працює, коли я будую підписаний APK

тому я створив ключ sha 1, використовуючи cmd, він працює

  • перейдіть до папки java \ jdk version \ bin

приклад

C:\>cd C:\Program Files\Java\jdk1.8.0_121\bin

і тип

keytool -exportcert  -keystore {path of sign jks key } -list -v

приклад

keytool -exportcert  -keystore F:\testkey\damithk.jks -list -v

1

Для Linux Ubuntu Open Terminal і Write: -

keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android

0

Відкрийте термінал і запустіть утиліту keytool, яка надається разом із Java, щоб отримати відбиток пальця SHA-1 сертифіката. Ви повинні отримати відбитки пальців сертифікату випуску та налагодження.

Щоб отримати відбиток пальця сертифіката випуску: keytool -exportcert -list -v \ -alias -keystore

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.