Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 12549|Svare: 0

[ionisk] Ionic Development Android App Practice (2): Android Packaging apk

[Kopier lenke]
Publisert på 20.06.2018 10:16:52 | | | |
Distribuer til mobiltelefoner og bruk av Cordova-plugins

Vi har utviklet en enkel webapplikasjon, og nå skal vi gjøre noen forberedelser før vi ruller den ut til mobil.
Ionic støtter to plattformer: iOS og Android, standard Ionic-prosjektet legger ikke til disse to plattformene, vi må legge det til manuelt, cd til utviklingsmappen for å utføre kommandoen:


Jeg trenger bare Android-plattformen her, og etter å ha kjørt den, vil jeg utføre kommandoen for å se listen over plattformer du har lagt til:

> Cordova-plattform LS

Du har blitt valgt bort fra telemetri. For å endre dette, kjør: cordova-telemetri på.
Installerte plattformer:
  Android 7.0.0
Tilgjengelige plattformer:
  nettleser ~5.0.1
  ios ~4.5.4
  OSX ~4.0.1
  Windows ~5.0.0
  www ^3.12.0



Android-pakke


(Hvis det er et problem med denne kommandoen, kan du fjerne -release og deretter debug-kompilering, og kompileringen er fullført, DOS vil vise APK-katalogens plassering)

Hvis dine kloke øyne oppdager følgende ord: Bygg suksess! Det betyr at du har pakket med suksess. Vær tålmodig, slutten av kommandolinjen vil vise deg hvor apk-en er generert.

Når jeg kjører pakkingskommandoen igjen, vil feilen være som følger: feilen er at jdk-versjonen er for høy, jeg er "jdk-10.0.1"-versjonen, og jeg kan laste ned og installere en "1.8.0_171"-versjon på nytt for å løse problemet!!

C:\project\android\myApp>ionic cordova build android --release
Kjører app-skript build: --plattform android --mål cordova
[17:06:47] byggeutviklingen startet ...
[17:06:47] På en frisk start ...
[17:06:47] Rent avsluttet på 8 ms
[17:06:47] Kopi startet ...
[17:06:47] Deeplinks startet ...
[17:06:47] Deeplinks ble ferdig på 15 ms
[17:06:47] transpile startet ...
[17:06:50] transpile fullført på 3,71 sekunder
[17:06:50] forprosessering startet ...
[17:06:50] forprosessering fullført på 1 ms
[17:06:50] Webpack startet ...
[17:06:51] kopi ferdig på 3,96 sekunder
[17:06:56] Webpack ble ferdig på 5,58 sekunder
[17:06:56] Sass begynte ...
Uten 'from'-alternativet kan PostCSS generere feil kildekart og vil ikke finne Browserslist-konfigurasjonen. Sett den til CSS-filsti eller til 'udefinert' for å forhindre denne advarselen.
[17:06:58] Sass fullførte på 2,05 sekunder
[17:06:58] etterbehandlingen startet ...
[17:06:58] etterbehandlingen var ferdig på 10 ms
[17:06:58] lo begynte ...
[17:06:58] byggeutviklingen ble ferdig på 11,65 sekunder
> Cordova Build Android – utgivelse

Du har blitt valgt bort fra telemetri. For å endre dette, kjør: cordova-telemetri på.
Android Studio-prosjekt oppdaget

ANDROID_HOME=C:\Users\itsvse_pc\AppData\Local\Android\sdk
JAVA_HOME=C:\Program Files\Java\jdk-10.0.1
(node:14940) UnhandledPromiseRejectionAdvarsel: Avvisning av ubehandlet løfte (avvisnings-id: 1): CordovaError: Kravkontroll feilet for JDK 1.8 eller høyere
(node:14940) [DEP0018] AvskrivningAdvarsel: Avslag på ubehandlede løfter er utdatert. I fremtiden vil avslag av løfter som ikke håndteres, avslutte Node.js-prosessen med en ikke-null utgangskode.

[17:07:01] Lint kom i mål på 3.00 sekunder

Kjør kommandoen ovenfor igjen, fordi nettverkshastigheten min er treg, og det er første gang jeg kjører, laster ned mange komponenter osv., og kjører det i 12 minutter, som vist i figuren under:



C:\project\android\myApp\platforms\android\app\build\outputs\apk\release\app-release-unsigned.apk 是编译后的app存放地址。

Jeg kopierer "app-release-unsigned.apk" til telefonen min (Huawei Honor 10), og feilmeldingen vil være som følger:



Dette skyldes at appen ikke er signert og ikke kan installeres.

APK-signatur

Siden Java-katalogen min er i miljøvariablene, trenger jeg bare å utføre cmd-kommandoen som følger:

/*说明:-genkey 产生密钥
       -alias demo.keystore alias demo.keystore
       -keyalg RSA bruker RSA-algoritmen for å kryptere signaturer
       -gyldighet 40000 Gyldighet 4000 dager
       -keystore itsvse.keystore filnavn */

apksigner ligger i build-tools-katalogen i SDK-katalogen. Det må bemerkes at v2-signeringsmetoden først ble introdusert etter Android 7.0, så apksigner.jar finnes kun i SDK\build-tools\ for versjon >25.
Åpne cmd, klipp katalogen til SDK\build-tools\Version number\lib (for eksempel C:\Users\itsvse_pc\AppData\Local\Android\Sdk\build-tools\28.0.0\lib), og kjør:


Eksempel:

D:\>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore
/*说明:-verbose 输出签名的详细信息
       -keystore demo.keystore keystore nøkkelbutikk lokasjon
       -signedjar demor_signed.apk demo.apk demo.keystore offisielt signert, filen demo_signed generert etter innlogging i rekkefølge etter de tre parameterne, filen demo.apk signert, og keystore demo.keystore.*/



Sjekk om apk-en allerede er signert:

Vi kopierer den signerte "output.apk"-filen til telefonen, og installerer den, den kan installeres som normalt, og den kan kjøre normalt, som vist i figuren under:







Foregående:Hvordan avinstallere flere versjoner av Java fullstendig
Neste:Ingen komponentfabrikk funnet for ListPage. La du det til
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com