Megosztás a következőn keresztül:


Kódjel Android rendszerhez

Ebből a cikkből megtudhatja, hogyan lehet manuálisan kódolni az (APK) kódolását Android . Alá kell írnia az alkalmazást Android , ha a burkolási projekt létrehozásakor és felépítése Android során az egyik platformotválasztotta.

Fontos

Ha ehelyett egy AAB-alkalmazást szeretne aláírni a Google Play-terjesztéshez, tekintse meg az Alkalmazás aláírása című témakört.

A számítógép előkészítése

A kezdéshez a következő információkra van szüksége:

Előfeltételek

  • Alkalmazás neve a kivonatkulcs létrehozásához.
  • A legújabb APK fájl a bejelentkezési folyamathoz.

Kulcsok létrehozása

Feljegyzés

Ugorja ki az APK-csomag aláírását, ha az alkalmazásregisztráció létrehozásakormár generált kulcsokat és aláírás-kivonatot.

A keytool.exe (a telepítés Android Studio után elérhető a "Drive:\Program Files\Android\Android Studio\jre\bin\keytool.exe" mappából fogunk létrehozni egy tanúsítványt az alkalmazáscsomag aláírásához. Keytool kezeli a kriptográfiai kulcsok, az X.509 tanúsítvány tanúsítványai és a megbízható tanúsítványok keystore adatbázisát.

Kulcs előállításához nyisson meg parancssort, és futtassa a következő parancsot:

keytool -genkey -alias SIGNATURE_ALIAS -keyalg RSA -keystore PATH_TO_KEYSTORE -keysize 2048 -validity 10000

Paraméterek:

  • genkey - parancs a kulcs generálásához.
  • alias - a jövőben használandó aliast jelzi a létrehozott kulcsokat tartalmazó kulcstárbejegyzésre való hivatkozáshoz.
  • keyalg- kulcs algoritmus neve.
  • Keystore - Az Ön által használt kulcstár neve.
  • keysize - az egyes generálandó kulcsok mérete.
  • érvényesség – a kulcs érvényessége napok számában.

Példa:

  • A Key Vault előkészítésekor PATH_TO_KEYSTORE .pfx kiterjesztéssel kell rendelkeznie.

    keytool -genkey -alias powerappswrap -keyalg RSA -keystore powerappswrap.pfx -keysize 2048 -validity 10000

  • A manuális aláírás előkészítésekor a PATH_TO_KEYSTORE rendelkezzen .jks kiterjesztéssel.

    keytool -genkey -alias powerappswrap -keyalg RSA -keystore powerappswrap.jks -keysize 2048 -validity 10000

Képernyőkép keytool paranccsal a fenti példában szereplő paraméterek használatával.

Aláíráskivonat előállítása

Feljegyzés

Ugorja ki az APK-csomag aláírását, ha az alkalmazásregisztráció létrehozásakormár generált kulcsokat és aláírás-kivonatot.

A kulcs generálása után az exportcert paranccsal a keytool exportálja a kulcstár tanúsítványát.

keytool -exportcert -alias SIGNATURE_ALIAS -keystore PATH_TO_KEYSTORE | openssl sha1 -binary | openssl base64

Paraméterek:

  • exportCert – beolvassa a kulcstárolóból az aliashoz társított tanúsítványt, és a cert_file fájlban tárolja. Ha egyetlen fájlt sem ad meg, a tanúsítvány kimenete stdout lesz.
  • alias - a kulcsok korábbi generálásakor használt alias.
  • Keystore - Az Ön által használt kulcstár neve.
  • openssl - generálja az SHA1 kulcsot Android.

Adja hozzá a létrehozott aláírás-kivonatot az átirányítási URI-hoz az alkalmazás regisztrálásakor.

SHA1 hex átalakítása base64 kódolású aláírás-kivonattá manuálisan

A következő hibaüzenet jelenhet meg, ha az aláírás kivonata nincs megfelelően kódolva, vagy elfogadhatatlan a Azure Portal:

"Az aláírás-kivonatnak base64 kódolású SHA1-nek kell lennie."

Amikor ez a hiba jelenik meg, a következő lépések használatával próbálja meg generálni az aláírás kivonatát:

  1. Futtassa keytool -list -v -alias SIGNATURE_ALIAS -keystore PATH_TO_KEYSTORE a tanúsítvány adatainak részletes módban való listázásához.
  2. Másolja ki az SHA1 értéket a Tanúsítvány ujjlenyomatok szakaszban a kimenetből. Győződjön meg róla, hogy csak a hexadecimális értéket másolja.
    Például: EF:11:45:3D:F1:72:D9:8C:43:32:CD:0A:49:C2:E4:75:2D:B3:2D:9F
  3. Bármely elérhető "Hexadecimal to Base64" (Hexadecimal to Base64) eszköz használatával alakítsa át a másolt tanúsítvány-ujjlenyomat hexadecimális értékét Base64 kódolású értékké.
    Példa a Base64 kódolású értékre: 8CPPeLaz9etdqQyaQubcqsy2Tw=
  4. Másolja ki a létrehozott Base64 kódolású értéket aláírási kivonatként a Azure Portal az alkalmazás regisztrálásakor.

Az APK csomag kézi aláírása

Az APK-csomag aláírásához az apksigner eszközt fogjuk használni. Ez az eszköz lehetővé teszi az APK-k aláírását, és biztosítja, hogy az APK-csomag aláírása sikeresen ellenőrizhető legyen az APK-k által támogatott összes Android platformon.

Feljegyzés

Ezekre a lépésekre akkor van szükség, ha még nem csomagolta be az alkalmazást automatikus bejelentkezéssel. A lépés megismétlésének elkerülése érdekében javasoljuk az automatikus bejelentkezés használatát.

Az apksigner megkeresése

  1. Ellenőrizze az Android SDK elérési útját az Android Studio alkalmazásban.

  2. Válassza az Eszköz SDK-kezelő>SDK helye lehetőséget>Android .

    Ha használja iOS, ellenőrizze az apksigner fájlt a buildTools Version könyvtárból:

    Nyissa meg az SDK könyvtár >build-tools>buildToolsVersion>lib fájlt, és ellenőrizze a apksigner.jar fájlt

Az apksigner-fájl használata

Futtassa a következő parancsot az apksigner használatához és a csomag aláírásához:

apksigner.bat sign --ks PATH_TO_KEYSTORE --ks-key-alias KEY_ALIAS PATH_TO_APK

Paraméterek:

  • ks - elérési út a kulcstárhoz.
  • ks-key-alias - kulcs alias elérési út az APK fájlhoz.

Amikor a rendszer kéri, adja meg a jelszót.

További információ: Android Studio parancssori eszközök: apksigner

Az alkalmazás terjesztése

A csomagot egy terjesztési szolgáltatásban, például az App Centerben is üzemeltetheti. A Microsoft Intune használatával történő terjesztéshez lásd: Üzletági alkalmazás hozzáadása Android a Microsoft Intune. Ha többet szeretne megtudni arról, hogyan adhat hozzáférést egy alkalmazásnak az Intune alkalmazásvédelmi szolgáltatáshoz, tekintse meg az alkalmazásnak a hozzáférés megadását az Intune alkalmazásvédelmi szolgáltatáshoz.

Kapcsolódó információk