NativeScript / android-runtime

Byggstatus

Inneholder kildekoden for Nativescripts Android Runtime. NativeScript er et rammeverk som gjør det mulig for utviklere å skrive virkelig innfødte mobile applikasjoner For Android og iOS ved Hjelp Av JavaScript og CSS. Hver mobilplattform har sitt eget økosystem og tilbyr helt forskjellige utviklingsverktøy og språk-Java For Android og Objective C (Swift) for iOS. For å oversette JavaScript-kode til de tilsvarende innfødte Apier noen form for proxy mekanisme er nødvendig. Dette er akkurat hva» Runtime » – delene Av NativeScript er ansvarlige for. Android Runtime kan betraktes som «Broen» mellom JavaScript og Android verdener. En NativeScript-applikasjon For Android er en standard innfødt pakke(apk) som i tillegg Til JavaScript-filene også legger inn kjøretiden.

  • Hovedprosjekter
  • Hjelpeprosjekter
  • Arkitekturdiagram
  • Bygg Forutsetninger
  • slik bygger du
  • slik kjører du tester
  • Diverse
  • Få Hjelp

tilleggsdokumenter

Flere Wiki-Sider Beskriver Noen Interne Emner Om Kjøretiden Her

Hovedprosjekter

Repo Er Strukturert I Følgende Prosjekter (sortert etter avhengigheter):

  • android-metadata-generator-genererer metadata nødvendig For Android Runtime.
  • android-binding-generator – aktiverer Java & Android typer å være dynamisk opprettet under kjøring. Nødvendig av extend rutinen.
  • android-runtime-inneholder kjernen logikken bak NativeScript Android Runtime. Dette prosjektet inneholder innfødt C++ – kode og trenger Android NDK for å bygge riktig.
  • android-runtime-testapp – dette er en vanilje Android Program, som inneholder testene for runtime prosjektet.

Helper Prosjekter

  • android-statisk-binding-generator-bygge verktøy som genererer bindinger basert på brukerens javascript-kode.
  • project-template – dette er en tom plassholder Android Søknad prosjekt, som brukes Av NativeScript CLI når du bygger En Android-prosjekt.

Arkitekturdiagram

NativeScript Android Runtime architecture kan oppsummeres i følgende diagram.

 Android Runtime diagram

les dokumentasjonen for mer informasjon om hvordan det fungerer.

Bygge Forutsetninger

Følgende er minimale forutsetninger for å bygge runtime-pakken.

  • Installer den nyeste Android Studio.
  • FRA SDK Manager (Android Studio -> Verktøy -> Android -> SDK Manager) installer følgende komponenter:
    • ANDROID API-Nivå 23, 24, 25, 26, 27
    • Android NDK
    • Android Støtte Repository
    • Last Ned Bygge Verktøy
    • CMake
    • LLDB
  • Klone dette depotet så vel som submodules: git clone --recurse-submodules [email protected]:NativeScript/android-runtime.git

Arbeide Med Runtime I Android Studio

  • Åpne test-app-mappen I Android Studio. Det representerer et gyldig Android-prosjekt, og du kan bygge og kjøre et testprogram som arbeider med Kjøretiden fra kilden.

Merk: Du må kanskje kjøre Android Studio fra kommandolinjen for å bevare miljøvariablene. Dette er hvis du får feil som «manglende npm» hvis du starter studioet på vanlig måte.

Hvordan Bygge

  • Kjør kommando

    Windows:

    gradlew

    Mac / Linux:

    ./gradlew
  • byggeprosessen omfatter bygging av runtime pakken (både optimalisert og med uhindret v8 symbol tabell), samt alle tilleggsverktøy som brukes for android bygger: metadata-generator, binding-generator, metadata-generator, statisk-binding-generator

  • resultatet av byggingen vil være i dist-mappen.

    Note: for å kutte byggetiden i halv og pakke bare den optimaliserte (strippet) versjonen av runtime package-kommentaren ut ‘oppgaver.generateRuntimeAar.utfør ()’ i bygningen.gradle script.

Hvordan Kjøre Tester

  • Gå til undermappe test-app etter at du har bygget runtime.

  • Start en emulator eller koble til en enhet.

    Note: Keep in mind the device or emulator needs to have an sdcard mounted.

  • Kjør kommando

gradlew runtest

Bidra

Vi elsker PRs! Sjekk ut de medvirkende retningslinjene. Hvis du vil bidra, men du er ikke sikker på hvor du skal begynne – se etter problemer merket help wanted.

Diverse

  • Implementere flere Chrome DevTools protokolldomener

Få Hjelp

Vennligst bruk github-problemer strengt for å rapportere feil eller be om funksjoner. For generelle spørsmål og støtte, sjekk Ut Stack Overflow eller spør våre eksperter I NativeScript community Slack channel.