NativeScript/android-runtime

 État de construction

Contient le code source du Runtime Android de NativeScript. NativeScript est un framework qui permet aux développeurs d’écrire des applications mobiles vraiment natives pour Android et iOS en utilisant JavaScript et CSS. Chaque plate-forme mobile a son propre écosystème et propose des outils de développement et des langages complètement différents – Java pour Android et Objective C (Swift) pour iOS. Afin de traduire le code JavaScript vers les API natives correspondantes, une sorte de mécanisme proxy est nécessaire. C’est exactement ce dont sont responsables les parties « Runtime » de NativeScript. Le Runtime Android peut être considéré comme « Le Pont » entre les mondes JavaScript et Android. Une application NativeScript pour Android est un package natif standard (apk) qui, outre les fichiers JavaScript, intègre également le runtime.

  • Projets principaux
  • Projets auxiliaires
  • Diagramme d’architecture
  • Conditions préalables à la construction
  • Comment construire
  • Comment exécuter des tests
  • Divers
  • Obtenir de l’aide

Documents supplémentaires

Plusieurs pages Wiki décrivent des sujets internes sur l’exécution ici

Projets principaux

Le dépôt est structuré dans les projets suivants (classés par dépendances):

  • android -metadata-generator – génère les métadonnées nécessaires à l’exécution d’Android.
  • android-binding-generator – permet de créer dynamiquement des types Java & Android au moment de l’exécution. Nécessaire à la routine extend.
  • android-runtime – contient la logique de base derrière le Runtime Android de NativeScript. Ce projet contient du code C ++ natif et a besoin du NDK Android pour être construit correctement.
  • android-runtime-testapp – il s’agit d’une application Android vanille, qui contient les tests pour le projet d’exécution.

Projets d’assistance

  • outil de construction android-static-binding-generator qui génère des liaisons basées sur le code javascript de l’utilisateur.
  • modèle de projet – il s’agit d’un projet d’application Android vide, utilisé par l’interface de ligne de commande NativeScript lors de la construction d’un projet Android.

Diagramme d’architecture

L’architecture d’exécution Android NativeScript peut être résumée dans le diagramme suivant.

 Diagramme d'exécution Android

Pour plus de détails sur son fonctionnement, lisez la documentation.

Conditions préalables à la construction

Voici les conditions préalables minimales à la construction du package d’exécution.

  • Installez le dernier studio Android.
  • À partir du gestionnaire de SDK (Android Studio – > Outils – > Android – > Gestionnaire de SDK), installez les composants suivants:
    • Niveau API Android 23, 24, 25, 26, 27
    • Android NDK
    • Référentiel de support Android
    • Télécharger les outils de construction
    • CMake
    • LLDB
  • Clonez ce référentiel ainsi que les sous-modules: git clone --recurse-submodules [email protected]:NativeScript/android-runtime.git

Travailler avec le Runtime dans Android Studio

  • Ouvrez le dossier test-app dans Android Studio. Il représente un projet Android valide et vous pouvez créer et exécuter une application de test fonctionnant avec le Runtime à partir de la source.

Remarque: Vous devrez peut-être exécuter Android Studio à partir de la ligne de commande afin de préserver les variables d’environnement. C’est au cas où vous auriez des erreurs comme « npm manquant » si vous démarrez le studio de la manière habituelle.

Comment construire

  • Exécuter la commande

    Windows:

    gradlew

    Mac / Linux:

    ./gradlew
  • Le processus de génération comprend la construction du package d’exécution (à la fois optimisé et avec une table de symboles v8 non modifiée), ainsi que tous les outils supplémentaires utilisés pour les versions Android: générateur de métadonnées, générateur de liaison, générateur de métadonnées, générateur de liaison statique

  • Le résultat de la construction sera dans le dossier dist.

    Note: Pour réduire le temps de construction de moitié et empaqueter uniquement la version optimisée (dépouillée) du package d’exécution commentez les tâches.generateRuntimeAar.execute()’ dans la construction.script gradle.

Comment Exécuter des Tests

  • Accédez au sous-dossier test-app après avoir créé le runtime.

  • Démarrez un émulateur ou connectez un périphérique.

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

  • Exécuter la commande

gradlew runtest

Contribuer

Nous aimons les relations publiques! Consultez les directives de contribution. Si vous souhaitez contribuer, mais que vous ne savez pas par où commencer, recherchez les problèmes étiquetés help wanted.

Divers

  • Implémentation de domaines de protocole Chrome DevTools supplémentaires

Obtenir de l’aide

Veuillez utiliser les problèmes github strictement pour signaler des bogues ou demander des fonctionnalités. Pour des questions générales et de l’assistance, consultez Stack Overflow ou demandez à nos experts du canal Slack de la communauté NativeScript.