Jérémy Ozog

Tizen CLI : application Tizen en ligne de commandes

Publié par Jérémy Ozog le dans Tizen

Que vous soyez amateur de lignes de commandes ou détracteur d’Eclipse (sur lequel Tizen IDE s’appuie), Tizen CLI (Command Line Interface) vous fournit tous les outils nécessaires au déploiement d’une application mobile.

L’article suppose que vous avez déjà installé le SDK Tizen !

Découverte de Tizen CLI

La plupart des scripts qui nous intéressent se trouvent dans le répertoire tizen-sdk\tools\ide\bin (tizen-sdk étant le répertoire d’installation du SDK Tizen).

Pour la version 2.1.4 du SDK, 18 scripts sont présents dans ce répertoire :

Scripts Tizen CLI

Ces scripts sont scindés en deux parties : les scripts liés au développement d’applications Web (web-*) et ceux liés au développement d’applications natives (native-*). La documentation officielle de Tizen CLI se trouve ici et .

Vous aurez également besoin du certificate generator livré avec le SDK Tizen : celui-ci se trouve dans le répertoire tizen-sdk\tools\certificate-generator.

Avant de commencer à travailler, je vous invite donc à mettre à jour votre PATH de la façon suivante (j’ai installé le SDK dans C:\tizen-sdk) :

set PATH=%PATH%;C:\tizen-sdk\tools\ide\bin;C:\tizen-sdk\tools\certificate-generator

Certaines commandes ci-après nécessitent qu’un appareil soit connecté : vous devez soit connecter un appareil physique soit lancer une émulateur via le Device Emulator.

Création d’un certificat

Si vous avez bien mis à jour votre PATH comme indiqué en début d’article, il vous suffit d’exécuter la commande suivante et d’entrer les informations demandées :

certificate-generator

Génération d'un fichier .p12 pour Tizen avec certificate-generator

Cette commande a pour effet de créer un fichier portant le nom indiqué en dernier lors du lancement de certificate-generator (test.p12 dans le cas illustré au-dessus).

Vous devez faire un lien vers ce fichier .p12 dans votre fichier de profils (faites une copie du modèle se trouvant dans tizen-sdk\tools\ide\sample\profiles.xml), comme le montre l’image ci-dessous :

Liste des profils pour le certificate-generator Tizen

Ce fichier de certificat sera utilisé pour signer vos applications.

Applications Web : Tizen Web CLI

Création d’un projet vierge

Utilisez la commande web-gen, en spécifiant un nom de projet (et éventuellement un nom de répertoire si vous voulez créer le projet ailleurs que dans le répertoire courant) :

web-gen -n PROJECT_NAME -p PROJECT_PATH

ATTENTION ! N’utilisez pas de caractères spéciaux dans le nom de votre projet (type “_”), cela peut créer dans d’autres commandes (comme web-install par exemple).

Création d’un projet à partir d’un template

Si vous préférez partir d’un template, vous devez utiliser web-template à la place de* web-gen*.

Pour lister les templates Tizen existants, exécutez la commande suivante :

web-template -s tizen

Pour le SDK 2.1.4, j’obtiens le résultat suivant :

Résultat de la commande web-template de Tizen CLI

Pour créer un projet à partir d’un des templates, il suffit d’exécuter la commande suivante (attention, le projet sera créé dans le répertoire courant !) :

web-template TEMPLATE_NAME

Par exemple, pour utiliser le template “Single Page” :

web-template tizenwebuifw-singlepage

Il vous est alors demandé de renseigner quelques informations : meta description et titre de la page, thème Tizen à utiliser, nom du widget à créer… Vous retrouverez ces données dans les fichiers index.html et config.xml qui ont été créés par cette commande.

Packaging d’une application

Le package (aussi appelé widget) est créé avec la commande web-packaging (-o permet d’écraser un package généré précédemment) :

web-packaging WIDGET_NAME.wgt PROJECT_PATH

Répondez oui (‘y’) dans le cas où il vous est demandé si vous souhaitez continuer.

Si le widget existe déjà, il faut ajouter l’option -o pour écraser la version précédente.

Signature d’une application

Pour signer une application, il faut d’abord avoir créé un fichier de certificat (voir plus haut).

Ensuite, avec web-signing en précisant le profil suivi de deux points et du chemin vers votre fichier profiles.xml (il faut également préciser le path du projet s’il ne s’agit pas du répertoire courant) :

web-signing -p PROFILE_NAME PATH_TO_PROFILES_XML_FILES PROJECT_PATH

Il vous sera demandé de saisir votre mot de passe.

Par exemple, pour signer mon application se trouvant dans le répertoire C:\Users\Jeremy\Downloads\test_tizen en utilisant le profil “test” du fichier profiles.xml se trouvant dans le répertoire courant :

Signature d'une application web Tizen CLI

Installation / Désinstallation d’un widget

La commande web-install permet d’installer un widget (créé avec web-packaging) :

web-install -w WIDGET_NAME.wgt

ATTENTION ! Si la commande échoue, vérifiez que le nom de votre application ne comporte pas de caractères spéciaux (du type “_”), notamment dans l’id de l’application (voir fichier config.xml).

Pour désinstaller le widget, vous devez utiliser web-uninstall en spécifiant l’ID du package, que vous pouvez trouver soit dans le fichier config.xml du projet (voir image ci-dessous) soit en lançant la commande web-list.

web-uninstall -i PACKAGE_ID

Récupération de l'ID de package dans le fichier config.xml du projet Tizen

Liste des applications installées

Pour lister les applications que vous avez installé sur l’appareil / émulateur connecté, utilisez web-list.

web-list

La commande vous renvoie un ensemble d’informations que vous pouvez retrouver dans le fichier config.xml du projet comme l’ID du package et de l’application.

Résultat de la commande web-list de Tizen CLI

Lancement d’une application

Chaque application dispose d’un ID (à ne pas confondre avec celui du package !). Par défaut, il s’agit de l’ID du package suivi d’un point et du nom du projet (dans l’exemple ci-dessus, la commande web-list nous montre que l’ID de l’application est PZHIp5N34B.HelloWorld).

Pour lancer une application, utilisez web-run en spécifiant son ID :

web-run -i APP_ID

Si plusieurs appareils sont connectés, utilisez l’option -d pour les différencier.

Debug d’une application

Pour debugger une application, utilisez web-debug en spécifiant son ID (cette commande (re)lancera l’application sur l’appareil connecté) :

web-debug -i APP_ID

En cas d’échec, relancez la commande plusieurs fois.

Une fois exécutée, vous devriez récupérer une URL à copier-coller dans votre navigateur Web : celle-ci donne accès au Web Inspector qui vous permet de debugger votre application.

web-debug retourne une URL

Accès au Web Inspector via web-debug

Applications natives : Tizen Native CLI

Les commandes pour les applications natives sont très similaires à celles utilisées pour les applications Web, je vais donc passer plus rapidement.

Création d’un projet

Pour créer un projet vide dans le répertoire courant, utilisez native-gen comme suit :

native-gen -s TEMPLATE_NAME -n PROJECT_NAME

Cela créera un dossier nommé PROJECT_NAME sera créé pour le projet dans le répertoire courant.

TEMPLATE_NAME peut prendre plusieurs valeurs : empty pour une page vide, form pour une page simple…

Compilation d’un projet

Pour compiler le projet, placez-vous dans son sous-répertoire “CommandLineBuild” et lancez native-make :

cd PROJECT_NAME\CommandLineBuild
native-make

Packaging et signature d’une application

Toujours dans le sous-répertoire “CommandLineBuild”, utilisez native-packaging an pointant vers le fichier de certificat (*.p12) créé avec certificate-generator (voir plus haut) et en précisant le mot de passe correspondant :

native-packaging --sign-author-key CERTIFICATE_PATH.p12 --sign-author-pwd CERTIFICATE_PASSWORD

Un package est créé dans le répertoire de travail, vous pouvez afficher son nom avec la commande suivante :

ls *.tpk

Installation / Désinstallation d’une application

Pour installer un package (fichier .tpk) sur un appareil connecté, utilisez native-install :

native-install -p PACKAGE_NAME.tpk

Le package porte un ID, il s’agit de la première partie du nom du fichier .tpk : par exemple, si votre package se nomme TgYzgiStDH-1.0.0-i386.tpk, l’ID est TgYzgiStDH. Cette valeur se retrouve également dans le fichier manifest.xml du projet, comme le montre l’image ci-dessous.

ID du package Tizen natif dans le fichier manifest.xml

Pour le désinstaller, vous devez préciser l’ID du package à native-uninstall :

native-uninstall -p PACKAGE_ID

Lancement d’une application

Pour lancer l’application, utilisez native-run comme suit :

native-run -p PACKAGE_ID

Debug d’une application

En utilisant native-debug, une invite de commandes gdb s’ouvrira :

native-debug -p PACKAGE_ID

Ce tour d’horizon des commandes de Tizen CLI est terminé. J’espère que cet article vous sera utile, n’hésitez pas à partager vos trucs / astuces et à poser des questions dans les commentaires !


Cet article vous a plu ? Partagez-le avec vos connaissances !
Share on Google+ Share on Facebook Tweet about this on Twitter Share on LinkedIn Email this to someone

comments powered by Disqus