Docstoc

Analyse AndroidSousTitanium

Document Sample
Analyse AndroidSousTitanium Powered By Docstoc
					Institut des Sciences Appliquées et Économiques Université Libanaise

ISAE – Cnam Liban
Centre du Liban associé au

          Conservatoire national des arts et métiers-Paris




                                   Réaliser par : SMEHA Rajaa
                                                 SARKIS Charbel
                                                 Abou-HAMDAN Ayah


                               Sous la supervision : Dr. Fares Pascal




                                      1
Annexe:
Introduction……….......................………………………..…...….3
A propos d’Androide …………...……………………………………....……….3

La plate-forme Androide………………………………………………...………3

Environnement du développement………………………………...…………….5

JAVA JDK…………………………………………………………..…………..5

SDK Android……………………………………………………..……………..5

Appcelerator Titanium ……………………………………………..………........11

Pourquoi c'est bien.................................................................................................18

Distribution d’application………………………………………………………20

Programmation Avec Titanium.........................…………………23




                                                               2
Introduction :
Dans les dernières années, la technologie a signalée une grande révolution dans le
domaine du téléphone mobile. L’internet sera disponible sur le mobile et des applications
intelligentes dans des différents domaines seront y programmer et installer. Androïde est
l’un des systèmes d’exploitation disponibles pour les téléphones mobiles. Encore
Titanium est l’un des softwares utilisés pour la programmation des applications pour
iPhone, iPad, desktop, et ce que nous intéressons c’est la programmation des applications
androïde.

A propos d’Androïde :
Androïde n’est qu’un système d’exploitation mobile, il ne s’agit pas d’un matériel, ni même
d’un ensemble d’applications. En cela, il est extrêmement proche de Windows Mobile ou même
de Symbian dans son positionnement : le système d’un côté, les constructeurs de l’autre, et au
milieu la place pour y mettre des lots d’applications (l’opérateur, le constructeur, un acteur
tiers ?). Ça, c’est la version “standard” d’Androïde, celle réalisée par l’« Open Handset
Alliance ». C’est ce qu’on appelle l’« Android Open Source Project » ou « AOSP », placé sous
licence Apache 2.0.

Au-dessus de ça, Google ajoute la petite touche supplémentaire qui fait qu’Androïde est plus
intéressant que Windows Mobile 6 ou Symbian : les outils et services Google. Ce sont les
applications GMail, Maps, Latitude, Navigation, News, Chrome to Phone, Talk, etc. Mais surtout
la plus importante : Market, qui permet d’accéder à tout ensemble d’applications à la façon de
l’AppStore d’Apple. Tout ça, ainsi que les outils de développement associés (le « Google APIs
Add-on» permettant entre autres d’utiliser Google Maps dans nos applications), c’est l’Android
qu’on connaît et qui jouit d’un grand succès populaire.

Androïde se positionne donc comme un système d’exploitation multi plate-forme, open Source
pour Smartphones, PDA et terminaux mobiles conçu par Androïde.

La plate-forme Androïde
Pour Androïde, Google a développé une machine virtuelle Java nommée « Dalvik». Pas grand-
chose à en dire, ce n’est que le runtime n’étant pas exactement le même.



Les différentes couches du système Androïde

L’image ci-dessous représente bien les couches disponibles dans l’écosystème d’une application
Androïde. En gros on a accès à l’environnement du système (les couches bleues comme l’UI, les
notifications, la couche téléphonie, etc.) et à certaines API utilitaires intégrées (les couches vertes,
comme SQLite pour la gestion des données), ainsi qu’aux autres applications du système (via des
systèmes de communication décrits plus loin). Le reste représente les couches plus basses,


                                                   3
utilisées par le système, mais qu’on ne devrait jamais toucher directement avec son application si
on veut garantir son fonctionnement sur toutes les cibles.




                                                4
Environnement du développement des applications androïde
sous Titanium:
 La plate forme de Titanium est formée de java JDK, Androïde SDK, Titanium Developer
et Titanium Studio.



JAVA JDK:

Le jdk-6u25-windows-i586:

Qu'est-ce que le Java Development Kit

Le Java Development Kit, communément appelé JDK, est le kit de développement de
base que propose gratuitement la firme Sun Microsystem. Le Kit de développement
comprend plusieurs outils, parmi lesquels :

1.    javac: le compilateur Java
2.    java: un interpréteur d'applications (machine virtuelle)
3.    applet viewer: un interpréteur d'applets
4.    jdb: un débogueur
5.    javap: un décompilateur, pour revenir du bytecode au code source
6.    javadoc: un générateur de documentation
7.    jar: un compresseur de classes Java



Android SDK:

Installer Android SDK

Qu’est ce que le SDK Androïde ?



         Androïde est un système d’exploitation pour les Smartphones d’aujourd’hui,
développé par Google et Linux. Celui-ci met à disposition un kit de développement
(SDK) basé sur le langage Java. C’est là que passeront tous les développeurs
pour créer une application, faire des tests ou autre.




                                         5
Première étape: Installation du SDK Android

Pour tester des applications en Titanium mobile on a besoin d'un émulateur.

Android SDK est cet émulateur qui est multiplateforme.

Pour installer et configurer Android SDK, vous devez:

A-Télécharger le paquet SDK de developer.android.com et le décompresser.

B-Installer l'android SDK:




   Puis choisir l’endroit où nous voulons installer le programme.
    NOTE BIEN: Il doit choisir le C:\Program files non pas C:\Program Files (x86)
    pour que l’installation ne fait pas erreur.

Puis appuyer sur Next.




Cliquer Finish pour terminer.


                                           6
Vous serez en mesure d'installer des paquets pour les versions Android spécifiques. Si
l'application ne peut pas télécharger les paquets choisir HTTPS vigueur dans la
configuration.

Le téléchargement prend un peut de temps à cause du download réalisé de ces paquets
depuis l’internet.




                                          7
On doit choisir les révisions qu’on veut et l’installer.

Dans le tab Virtual Devices, nous pouvons créer des configurations d'émulateur. Une
configuration est nécessaire pour la réutilisation de titanium. La configuration est crée on
suivant ces étapes :

Choisir New :




Un Window apparait, on remplit les informations name et on choisit dans le champ target
une version d’android sdk et size.

Cliquer create AVD.




                                               8
Quand nous avons une config nous pouvons lancer l'émulateur




La dernière étape avant d’installer le titanium est de modifier les variables
d’environnement Path et ajouter le variable ANDROID_SDK.

Les variables d’environnement peut être accéder à partir du right click sur my computer

Properties  Advanced  Enivronment Variables.

    Créer un variable ‘ANDROID_SDK’: la valeur doit être la location
       d’android.C:\PROGRA~1\Android\android-sdk\tools.

       Remarque: on met PROGRA~1 ou PROGRA~2 car parfois l’espace dans
       C:\Program Files fait des erreurs.

                                            9
 Ajouter au Path le Path de java JDK :

   C:\PROGRA~1\Java\jdk1.6.0_25\bin

       et du android SDK : C:\PROGRA~1\Android\android-sdk\.




   .




                                      10
La dernière étape d'installation du SDK est de faire copier tous le contenu du dossier
platform-tools dans le dossier tools.

Deuxième étape Installation Appcelerator Titanium :

Appcelerator Titanium est une plateforme libre pour développer des applications
mobiles et de bureau en utilisant des technologies web. Appcelerator Titanium est
développé par Appcelerator Inc. et a été présenté en décembre 2008. Elle supporte le
développement d'applications pour iPhone (sous Mac OS avec le SDK seulement) et pour
Android depuis juin 2009.

Appcelerator Titanium est un des nombreux framework pour applications mobiles basés
sur des technologies web autorisant les développeurs web à utiliser leurs compétences
pour créer des applications natives pour iPhone et Android. Il est souvent comparé à
Adobe Air pour développer des applications de bureau pour Windows, Mac et Linux.
Normalement, des outils propriétaires et des compétences spécialisées sont requises pour
développer des applications natives pour chaque plateforme.

Appcelerator Titanium inclut un outil basé-web, de cross-compilation qui demande un
accès internet et un compte développeur. Cet outil peut déployer des applications stand-
alone pour Mac, Windows, et Linux de n'importe laquelle de ces plateformes. Cela se

                                          11
réalise en envoyant les fichiers source à une machine propriétaire côté serveur qui
renvoie alors les binaires. Un compilateur en ligne de commandes libre est aussi
disponible mais n'est pas sujet aux mêmes exigences de réseau et de compte, mais il ne
cross-compile pas. La compilation pour mobile est sujet à des exigences
supplémentaires : Pour l'iPhone: Mac OS X et le SDK iPhone, et pour Android: le SDK
Android et Mac, Windows ou Linux. La dernière version du cross-compilateur
d'Appcelerator Titanium a été compilée par lui-même !

En janvier 2010, Appcelerator a publié une liste de 554 développeurs Titanium montrant
un réel intérêt envers l'iPad d'Apple. Appcelerator a aussi annoncé la compatibilité de
Titanium et de l'Apple iPad et a confirmé qu'il existait des applications Titanium pour
l'iPhone qui tournait sur le simulateur d'iPad.

Appcelerator, Inc. offre aussi des services basé CLOUD pour l'emballage, le test et la
distribution des applications logiciels développés avec la plateforme Titanium.

A- installer le titanium developer:

 Titanium est un logiciel open-source qui permet de construire des applications mobiles,
avec les éléments d’interface natifs, le stockage de données, la géolocalisation etc.
fonctionnant simultanément sur iPhone et Android, et avec des technologies web !




Les développeurs web peuvent ainsi s’éviter la peine d’apprendre Objective-C ou Java et
utiliser à la place leurs compétences en JavaScript, HTML et CSS pour construire des
applications qui, cerise sur le gâteau, fonctionneront à la fois sur iPhone et sur Android
(et bientôt Blackberry et iPad).




                                           12
Capture de Titanium Developer

Le logiciel est édité par Appcelerator, une société basée à Mountain View et créée en
2006. En plus de maintenir le projet et d’en faire la promotion, Appcelerator
commercialise une offre de support technique, des formations, des audits…

Vous pouvez installer titanium developer depuis www.appcelerator.com.

Après l’installation du titanium déveloper il faut premièrement créer un compte dans
appcelerator puis lié titanium avec Android SDK. En haut de l’écran du titanium il y a un
ensemble du boutons nommées ‘perspectives’ à partir du troisième bouton profile on doit
lier le champ android SDK vers l’android où nous avons installé l’android SDK.




                                           13
Après l’installation du titanium développer et lors de son utilisation vous pouvez
rencontrer plusieurs problème sont :

1-lors de la launchement d’application il apparait un erreur
                                                      [ERROR] Timed out waiting
for emulator to be ready, you may need to close the emulator and try again.




                                           14
La solution est de launcher l'adb devices dans le SDK Manager puis launcher
l’application.

2- Encore une probleme c’est dans la run de l’adb il donne un erreur




                                           15
La solution est de modifier l’endroit d’installation d’android du partition ‘c’ vers une
autre partition.

B- installer le titanium studio:

Titanium studio est un logiciel utilisé avec le titanium déveloper pour construire le code
des applications de plus nous pouvons lancher les applications à partir de titanium studio.
Titanium Studio peut être installé depuis http://preview.appcelerator.com/studio/.




                                            16
17
POURQUOI C’EST BIEN:

Ce genre d’outil permet de créer des applications mobiles à moindre coût (et pourquoi
pas de les vendre). Avec toute la richesse du contenu de type web (HTML5 et CSS3 sont
de la partie) et les performances et possibilités offertes par les Smartphones
d’aujourd’hui. On a ainsi accès à l’appareil photo, à l’accéléromètre, au GPS... des
éléments inaccessibles depuis un site web mobile.

Le temps de développement d’une application est aussi divisé par le nombre de
Smartphones visés (pas de développement spécifique, une seule base de code, donc si on
compile pour Android et iPhone, on ne développe qu’une fois), et du point de vue de
l’entreprise, c’est d’autant plus vrai : aucun effort de recrutement ou de formation à
Objective-C/Java à faire !

Il faut ajouter à cela que la productivité du développeur web n’est pas entravée par
l’apprentissage d’un nouvel IDE. En effet, Titanium n’est pas un IDE, mais uniquement
un outil de compilation sur plusieurs cibles, et il est donc possible pour le développeur
d’utiliser son environnement de développement favori !




En plus du compilateur, toute les applications Titanium envoient des statistiques
d’utilisation / de debug sur les serveurs de Titanium, qui sont consultables depuis
l’interface web mise à disposition par Appcelerator.

Pour finir, l’API est très complète et propose toute sorte d’outils, de Facebook Connect à
Yahoo ! Query Language.




                                           18
19
Distribute in Titanium :
Les étapes de la distribution sont :
      Premièrement créer un fichier sur n’importe quel partition par exemple sur ‘c:\’
       (mon répertoire).

      Pour avoir une application exportable sur le ‘Market ‘, il faut créer une clé de
       cryptage. Pour cela il existe un excellent utilitaire en ligne de commande en java.
       On doit lier la ligne de commande vers l'endroit où se trouve le java JDK:
       C:\Program Files\Java\jre1.6.0_07\bin.

      Dans ce répertoire j’utilise l’utilitaire keytool.exe les paramètres sont:

          - genkey: génération du clé (privé et public)
          -v
          -keystore <du nom du clé chemin complet de la sauvegarde>
          -alias <alias du clé>
          -keyalg <alg type de algorithme DSA ou RSA>
         -validity <nombre de jour>

exemple de:

keytool -genkey -v -keystore c:/monrepertoire /my-release-key.keystore -alias alias_name
-keyalg RSA -validity 10000

      Une liste des questions apparait:

      You should see the following prompts:
       Enter keystore password:
       Re-enter new password:
       What is your first and last name?
        [Unknown]: FirstName Surname
       What is the name of your organizational unit?
        [Unknown]: FirstName Surname
       What is the name of your organization?
        [Unknown]: FirstName Surname
       What is the name of your City or Locality?
        [Unknown]: YourTown
       my-release-key.keystore]

   What is the name of your State or Province?
    [Unknown]: YourTown


                                             20
   What is the two-letter country code for this unit?
    [Unknown]: UK
   Is CN=FirstName Surname, OU=FirstName Surname, O=FirstName Surname,
   L=YourTown, ST=YourTown, C=UK correct?
    [no]: yes

   Generating 2,048 bit RSA key pair and self-signed certificate (SHA1withRSA) with a
   validity of 10,000 days                                                    for:
   CN=FirstName Surname, OU=FirstName Surname, O=FirstName Surname,
   L=YourTown, ST=Lond on, C=UK
   Enter key password for <release_alias>
             (RETURN if same as keystore password):




Voilà le keyStore sera crée, maintenant il reste de distribuer notre projet. Dans le titanium
developer on doit sélectionner l’endroit où on veut sauvegarder le fichier, puis la location
de keyStore enfin le password et l’alias.

Finalement l’application sera distribuée sous l’extension .apk



                                             21
22
Programmation Avec titanium :
La programmation avec Titanium est basée sur un ensemble des classes. Nous citons les
classes principales les plus utilisables pour créer des applications pour les téléphones
mobiles.

A- Titanium :
Titanium « est le classe parent principale dans la programmation avec titanium où les
autres classes héritent du Titanium. Il contient un ensemble des méthodes; les plus
principales sont :

   -   addEventListener: Ajouter un évènement listener.
   -   removeEventListener: Supprimer un évènement listener déjà ajouté.
   -   include: Inclue un ou plusieurs fichiers.

B- Titanium.Contacts:

C’est la classe principale; il est utilisé pour gérer l’adresse book du téléphone.
Dans l’adresse book, on a une personne et un groupe qui sont représentés par deux
classes Group et Person hérités du classe Contacts.

Method                      Return                Description
createGroup                Group                  create and return an instance of
                                                  Titanium.Contacts.Group
createPerson               Person                 create and return an instance of
                                                  Titanium.Contacts.Person

getAllGroups              List <Group,Person> Returns      an     array     of     all
                                              Titanium.Contacts.Group objects in
                                              the contacts database
getAllPeople              List<Person>        Returns      an     array     of     all
                                              Titanium.Contacts.Person objects in
                                              the contacts database
getGroupByID              Group               Returns aTitanium.Contacts.Group
(int id The database ID                       object with the given ID
of the group to retrieve)
getPeopleWithName         Person              Returns         an       array        of
(string name :The name                        Titanium.Contacts.Person         objects
to match in the database)                     who have a name (first, last, middle,
                                              composite) which
                                              matches the given name


                                          23
getPersonByID              Person               Returns a Titanium.Contacts.Person
(int id: The database ID                        object with the given ID
of the person to retrieve)

removeGroup(Titanium.     Void                  Removes a group from the contacts
Contacts.Group)                                 database

removePerson(Titanium.    Void                  Removes a person from the contacts
Contacts.Person)                                database

revert                    Void                  Reverts all changes made to the
                                                previous save of the database

save                      Void                  Saves all changes to contacts to the
                                                database submodule of Titanium
                                                The top level Contacts module. The
                                                Contacts module is used accessing
                                                the device Address Book.
                                                Saves all changes to contacts to the
                                                database
showContacts              Void                  Displays the contact picker



1.Titanium.Contacts.Group: Représente un groupe dans l’adresse book.

Méthode                             Type          Description
                                    retourner
add(Titanium.Contacts.Person)       Void          Adds a person to the group
Members                             Void          The complete list of members of
                                                  the group

remove(Titanium.Contacts.Person) Void             Removes a person from the group
sortedMembers(int sortBy)           Void          A list of sorted members
sortBy: Method for sorting. Must be
one                              of
Titanium.Contacts.CONTACTS_S
ORT_FIRST_NAME or
Titanium.Contacts.CONTACTS_S
ORT_LAST_NAME




                                           24
Propriété               Type                  Description
Name                    String                The name of the group



2.Titanium.Contacts.Person: Il représente un Personne

Propriété               Type                  Description
URL                     Object                URLs of webpages associated with
                                              the person. Multi-value, valid
                                              labels are: home, work, other,
                                              homepage. Values are strings.
Address                 Object                The addresses for the person.
                                              Multi-value, valid labels are:
                                              home, work, other. Values are
                                              dictionaries.
Birthday                String                The birthday of the person. Single
                                              value, format is "yyyy-MM-
                                              dd'T'HH:mm:ss'.'SSS+0000"
Created                 String                The date the person was created in
                                              the database. Single value, format
                                              is "yyyy-MMdd'T'HH:
                                              mm:ss'.'SSS+0000", read-only
Date                    Object                Dates associated with the person.
                                              Multi-value, valid labels are:
                                              anniversary. Values are strings of
                                              format
                                              "yyyy-MM-
                                              dd'T'HH:mm:ss'.'SSS+0000"
Department              String                The department of the person.
                                              Single value
Email                   Object                The email addresses for the
                                              person. Multi-value, valid labels
                                              are: home, work, other. Values are
                                              strings.
firstName               String                The first name of the person.
                                              Single value
firstPhonetic           String                The phonetic first name of the
                                              person. Single value
fullName                String                The localized full name of the
                                              person. Single value, read-only
Image                   Object                A blob object representing the
                                              image for the person. Set to null to


                                     25
                               remove the image. Single value
instantMessage   Object        The instant messenger names for
                               the person. Multi-value, valid
                               labels are: aim, icq, jabber, msn
                               and yahoo.
                               Values are dictionaries.
jobTitle         String        The job title of the person. Single
                               value
Kind             int           The kind of person. Single value,
                               one                                of
                               Titanium.Contacts.CONTACTS_
                               KIND_PERSON or
                               Titanium.Contacts.CONTACTS_
                               KIND_ORGANIZATION
lastName         String        The last name of the person.
                               Single value
lastPhonetic     String        The phonetic last name of the
                               person. Single value
middleName       String        The middle name of the person.
                               Single value
middlePhonetic   String        The phonetic middle name of the
                               person. Single value
Modified         String        The most recent date the person
                               was modified. Single value, format
                               is "yyyy-MMdd'T'HH:
                               mm:ss'.'SSS+0000", read-only
Nickname         String        The nickname of the person.
                               Single value
Note             String        Notes for the person. Single value
Organization     String        The organization the person
                               belongs to. Single value
Phone            Object        The phone numbers for the person.
Prefix           String        The prefix for the person. Single
                               value
relatedNames     object        The names of people the person is
                               related to. Multi-value, valid labels
                               are: mother, father, parent, sister,
                               brother, child, friend, spouse,
                               partner, manager and assistant.
                               Values are strings.
suffix           String        The suffix for the person. Single
                               value




                          26
C- Titanium.Database:                est le niveau supérieur pour le DB. Il est utilisé pour
accéder au BD.

Method                      return                       Description
Install                      object                      Install a pre-populated database
(string path: The path (Titanium.Database.DB)            from the application Resources
(relative to the main                                    folder (at build time) and return a
application      Resources                               reference to the opened database.
folder at build time) to                                 It is safe to call this method
the db to install. This file                             multiple times since this method
must be in the SQLite 3                                  will only install once if it doesn't
file format,                                             already exist on the device.
String name: the name of
the database )
open(String name)            object                      Open a database. If it doesn't yet
                             (Titanium.Database.DB)      exist, create it.



Example
var coldDB = Titanium.Database.install('../coldDB.db', 'cold');

var coldDB = Titanium.Database.open('cold');




1. Titanium.Database.DB
Une instance de cette                classe   retourne       Titanium.Database.open       ou
Titanium.Database.install.

Propriétées                 Type                         Description
lastInsertRowId             int                          the last row identifier by the last
                                                         INSERT query
Name                        string                       the name of the database
rowsAffected                int                          the number of rows affected by the
                                                         last query




                                              27
Method                      return                    Description
Close                                                 Close the database and release
                                                      resources from memory. Once
                            void                      closed, this instance is no longer
                                                      valid and must no longer be used.
                                                      You should generally close the
                                                      database when you're not using it;
                                                      it's ok to close a database and then
                                                      reopen it later in the application.
execute(string sql: the object                        Execute an SQL statement against
SQL to execute, array                                 the database and return a
vararg: Zero or more                                  ResultSet.
optional           variable
arguments passed to this
function or an array of
objects to be replaced in
the query using ?
substitution)
remove                      void                      Remove the database files for this
                                                      instance. WARNING: this is a
                                                      destructive operation and
                                                      cannot be reversed. All data in the
                                                      database will be lost upon calling
                                                      this function. Use with
                                                      caution.




Example
coldDB.close();

coldDB.execute('INSERT INTO coldBeverages (beverage) VALUES(?)', 'Juice');

coldDB.remove();



2. Titanium.Database.ResultSet:
An instance of this class is returned by invoking a database SQL execute. The ResultSet
object allows you to iterate over the result(s) of a query, pulling data out of the query.
After iterating over the results using the ResultSet object, it is important when you're
finished to call the ResultSet's close method, as illustrated in the code samples.


                                           28
Propriété                 Type                    Description
rowCount                  int                     the number of rows in the result
                                                  set
validRow                  boolean                 returns true if the current row is
                                                  still valid


Method                    return                  Description
Close                                             Close the result set and release
                          void                    resources from memory. Once
                                                  closed, this instance is no longer
                                                  valid and must no longer be used.
Field(int index)          object                  retrieve a row value by field index
fieldByName(String        object                  retrieve a row value by field name
name)
fieldCount                int                     return the number of columns in
                                                  the result set
fieldname(int index)      string                  return the field name for field
                                                  index
isValidRow                boolean                 return true if the row is a valid row
Next                      boolean                 Iterate to the next row in the result
                                                  set. Returns false if no more
                                                  results are available


Exemple:
var rowValue = myResultSet.field(1);

var rowValue = myResultSet.fieldByName('beverage');

var myName = myResultSet.fieldName(2);

var myResultSet = coldDB.execute('SELECT * FROM coldBeverages');
while (myResultSet.isValidRow()) {
// Do something that iterates over all rows
myResultSet.next()
}
myResultSet.close();


var myResultSet = coldDB.execute('SELECT * FROM coldBeverages');
while (myResultSet.isValidRow()) {
// Do something that iterates over all rows

myResultSet.next()

                                         29
}
myResultSet.close();

D- Titanium.Facebook:

Cette classe est utilisée pour connecter avec Facebook. Elle est le parent de
Titanium.Facebook.LoginButton.

Propriétées             Type                   Description
loggedIn                boolean                return true if the user has logged in
Permissions             Object                 return a dictionary of permissions
                                               with the keys being the name of
                                               the permission and the value being
                                               a boolean
                                               of true if granted, false if not
                                               granted
Session                 Object                 return the special properties of the
                                               session
userId                  Long                   the unique user id returned from
                                               Facebook. returns 0 if not logged
                                               in




Method                  return                 Description
createLoginButton       Titanium.Facebook.Lo   create and return an instance of
                        ginButton              Titanium.Facebook.LoginButton
Execute                 Object                 execute a FB API execute request
hasPermission           Object                 checks the existing permission and
                                               returns true if the user has granted
                                               the requested permission
isLoggedIn              Int                    return true if the user has logged in
Query                   String                 execute a FQL query against the
                                               FB API
requestPermission       boolean                request a special permission from
                                               the user




                                     30
E- Titanium.Network: Il est utilisé pour accéder au réseau.
Objets : Classe fils de Titanium.Network.



Name                                    Description

Titanium.Network.BonjourBrowser The BonjourBrowser instance returned
                                from
                                Titanium.Network.createBonjourBrowser.
                                This object
                                is a browser for the discovery and
                                retrieval of Bonjour services available on
                                the network.
Titanium.Network.BonjourService The BonjourService instance returned
                                either                               from
                                Titanium.Network.createBonjourService
                                or via the service list from a
                                BonjourBrowser updatedServices event.
                                This object describes a service on the
                                network which is published by Bonjour.
Titanium.Network.HTTPClient     The HttpClient instance returned from
                                Titanium.Network.createHTTPClient.
                                This object (mostly) implements the
                                XMLHttpRequest specification.
Titanium.Network.TCPSocket      The TCPSocket instance returned from
                                Titanium.Network.createTCPSocket. This
                                object represents a socket which either
                                listens locally on the device for
                                connections, or connects to a remote
                                machine.


Propriété                     Type                    Description

INADDR_ANY                    String                  constant value representing the
                                                      ability for sockets to listen on
                                                      any locally available
                                                      network device
NETWORK_LAN                   int                     constant value to indicate that
                                                      the network is LAN
NETWORK_MOBILE                int                     constant value to indicate that
                                                      the network is MOBILE
NETWORK_NONE                  int                     constant value to indicate that

                                            31
                                           the network is not available
NETWORK_UNKNOWN             int            constant value to indicate that
                                           the network is not known
NETWORK_WIFI                int            constant value to indicate that
                                           the network is WIFI
NOTIFICATION_TYPE_          int            constant value for the push
ALERT                                      notification alert type
NOTIFICATION_TYPE_          int            constant value for the push
BADGE                                      notification badge type
NOTIFICATION_TYPE_          int            constant value for the push
SOUND                                      notification sound type
READ_MODE                   int            constant value specifying read-
                                           only mode for sockets
READ_WRITE_MODE             int            constant value specifying read-
                                           write mode for sockets
WRITE_MODE                  int            constant value specifying
                                           write-only mode for sockets
networkType                 int            The network type value as a
                                           constant.
networkTypeName             string         The network type name
                                           constant. Returns one of
                                           NONE, WIFI, LAN or
                                           MOBILE.
online                      boolean        readonly boolean value that
                                           indicates if the network is
                                           reachable to the Internet either
                                           via
                                           WIFI or Carrier network
remoteDeviceUUID            string         the remote device UUID if the
                                           device was registered with the
                                           Apple Push Notification
                                           Service or null if not set. Only
                                           available on iPhone.


Method                      return         Description
addConnectivityListener     void           adds a connectivity listener to
(function callback)                        listen for network changes.
                                           This     method     has     been
                                           deprecated in favor of listening
                                           for a change event.
createBonjourBrowser        Object         create and return an instance of
(String serviceType, String                Titanium.Network.BonjourBro
domain, Object parameters)                 wser

                                      32
createBonjourService       Object               create and return an instance of
(String name, String type,                      Titanium.Network.BonjourSer
String   domain,    Object                      vice
parameters)
createHTTPClient(Object    Object               create and return an instance of
parameters)                                     Titanium.Network.HTTPClien
                                                t
createTCPSocket                  Object         create and return an instance of
(String hostname, int port,int                  Titanium.Network.TCPSocket
mode,Object parameters )
decodeURIComponent               String         decode a URI component part using
(String value)                                  URI encoding
encodeURIComponent               String         encode a URI component part using
(String value)                                  URI encoding
removeConnectivityListener       Void           removes a connectivity listener. This
(function callback)                             method has been deprecated in favor
                                                of listening for a change
                                                event.




1. Titanium.Network.BonjourBrowser:

Propriétées                      Type           Description
Domain                           String         The domain the browser is
                                                searching in
isSearching                      Boolean        Whether or not the browser is
                                                currently searching
serviceType                      String         The type of the service the
                                                browser searches for


Method                           Return         Description

Search                           Void           Conduct a search for Bonjour
                                                services matching the type and
                                                domain     specified    during
                                                creation
stopSearch                       Void           Halt an ongoing search




                                           33
2. Titanium.Network.BonjourService:

Propriété                  Type           Description
Domain                     String         the domain of the service
isLocal                    Boolean        whether or not the service is
                                          local to the device
Name                       String         the name of the service
Socket                     Object         the TCPSocket object that is
                                          used to connect to the service
Type                       String         the type of the service




Method                     Return         Description

publish(object socket: a Void             Publish a Bonjour service to
TCPSocket       object      to            the network. Only works if
associate with the Bonjour                isLocal is TRUE
service.)
resolve(double timeout: the Void          Resolve a Bonjour service
timeout      for       service            from the network. Must be
resolution,   in     seconds.             done before attempting to
Optional, default is 120s.)               access the service's socket
                                          information, if a
                                          remote service. You cannot
                                          resolve a locally published
                                          service.
Stop                       Void           Halts publication of a service.




3. Titanium.Network.HTTPClient:

Propriétées                Type           Description

DONE                       Int            the DONE readyState constant
HEADERS_RECEIVED           Int            the LOADING readyState
                                          constant
LOADING                    Int            the LOADING readyState
                                          constant
OPENED                     Int            the    OPENED     readyState

                                     34
                                     constant
UNSENT               Int             the      UNSET       readyState
                                     constant
Connected            Boolean         boolean to indicate that the
                                     response was successful
connectionType       String          the connection type, normally
                                     either GET or POST.
Location             String          the absolute URL of the
                                     request
Ondatastream         Function        set this to a function before
                                     calling open to cause the
                                     function to be called at regular
                                     intervals as
                                     the request data is being
                                     received. the progress property
                                     of the event will contain a
                                     value from
                                     0.0-1.0 with the progress.
Onerror              Function        set this to a function before
                                     calling open to cause the
                                     function to be called upon a
                                     error response
Onload               Function        set this to a function before
                                     calling open to cause the
                                     function to be called upon a
                                     successful
                                     response
onreadystatechange   Function        set this to a function before
                                     calling open to cause the
                                     function to be called for each
                                     readyState
                                     change
onsendstream         Function        set this to a function before
                                     calling open to cause the
                                     function to be called at regular
                                     intervals as
                                     the request data is being
                                     transmitted.    the    progress
                                     property of the event will
                                     contain a value
                                     from 0.0-1.0 with the progress.
readyState           Int             the readyState value
responseData         Object          the response data as a Blob
                                     object.

                                35
responseText                  String              the response as text or null if
                                                  an error was received or no
                                                  data was returned
responseXML                   Object              The response object as an
                                                  XML DOMDocument object.
                                                  returns null if the content type
                                                  returned by
                                                  the server was not XML or the
                                                  content could not be parsed
Status                        Int                 the response HTTP status code
Timeout                       Int                 timeout is milliseconds when
                                                  the connection should be
                                                  aborted
validatesSecureCertificate    Boolean             Set this to control how SSL
                                                  certification    validation  is
                                                  performed on connection.
                                                  defaults to false if
                                                  in simulator or device testing
                                                  and true if release for
                                                  distribution mode




Method                              Return         Description
Abort                               Void           abort a pending request
getResponseHeader(string            String         return the response header.
name)
open(string method, string url,     Void           open the request and ready
boolean async)                                     the connection
send(object data)                   Void           send the request
setRequestHeader(String             Void           set the request header. Must
name,String value )                                be called after open but
                                                   before send.
setTimeout(double timeOut)          Void           set the request timeout


4. Titanium.Network.TCPSocket:

Propriétées                         Type           Description

hostName                            String         The host name to connect to.
                                                   Must                     be
                                                   Titanium.Network.INADDR

                                             36
                                                         _ANY or an identifier for the
                                                         local device in order to listen
isValid                        Boolean                   whether or not the socket is
                                                         valid
Mode                           Int                       the socket's mode
Port                           Int                       the port to connect/listen on
stripTerminator                Boolean                   strip     terminating       null
                                                         character when sending
                                                         string data; default is false




Method                         Return                    Description

Close                          Void                      close the socket
connect                        Void                      close the socket
Listen                         Void                      set up the socket to receive
                                                         connections
Write(object,string data, int Void                       write data to the socket, if
sendTo )                                                 the mode is WRITE_MODE
                                                         or READ_WRITE_MODE




F- Titanium.UI: The main Titanium.UI module. The UI module is responsible for
native user-interface components and interaction inside Titanium. The goal of the UI
module is to provide a native experience along with native performance by compiling
Javascript code into their native counterparts as part of the build process.
Objets:




Name                         Description

Titanium.UI.AlertDialog      The Alert Dialog is created by Titanium.UI.createAlertDialog and
                             allows you to show a modal application dialog.function of
                             Titanium.Platform remove a previously added event listener submodule
                             of Titanium
                             The main Titanium.UI module. The UI module is responsible for native
                             user-interface components and interaction inside Titanium. The goal of

                                         37
                                the UI module is to provide a native experience along with native
                                performance by compiling Javascript code into their native
                                counterparts as part of the build process.
Titanium.UI.Animation           The Animation object is used for specifying lower-level animation
                                properties and more low-level control of events during an animation.
                                The Animation is created by the method Titanium.UI.createAnimation.
Titanium.UI.Button              A Button is created by the method Titanium.UI.createButton.
Titanium.UI.ButtonBar           A Button Bar is created by the method Titanium.UI.createButtonBar.
Titanium.UI.EmailDialog         The Email Dialog is created by Titanium.UI.createEmailDialog and
                                allows you to send in application emails on behalf of the application
                                user.
Titanium.UI.ImageView           An Image View is used to display an image or a series of images in an
                                animation. The Image View is created by the method
                                Titanium.UI.createImageView.
Titanium.UI.Label               create and return an instance of Titanium.UI.Label
Titanium.UI.OptionDialog        create and return an instance of Titanium.UI.OptionDialog
Titanium.UI.ProgressBar         create and return an instance of Titanium.UI.ProgressBar
Titanium.UI.ScrollView          create and return an instance of Titanium.UI.ScrollableView
Titanium.UI.SearchBar           create and return an instance of Titanium.UI.SearchBar
Titanium.UI.Slider              reate and return an instance of Titanium.UI.Slider
Titanium.UI.Switch              create and return an instance of Titanium.UI.Switch
Titanium.UI.Tab                 create and return an instance of Titanium.UI.Tab
Titanium.UI.TabGroup            create and return an instance of Titanium.UI.TabGroup
Titanium.UI.TableView           create and return an instance of Titanium.UI.TableView
Titanium.UI.TableViewRo         create and return an instance of Titanium.UI.TableViewRow
w
Titanium.UI.TableViewSe         create and return an instance of Titanium.UI.TableViewSection
ction
Titanium.UI.TextArea            create and return an instance of Titanium.UI.TextArea
Titanium.UI.TextField           create and return an instance of Titanium.UI.TextField
Titanium.UI.Toolbar             create and return an instance of Titanium.UI.Toolbar
Titanium.UI.View                create and return an instance of Titanium.UI.View
Titanium.UI.WebView             create and return an instance of Titanium.UI.WebView
Titanium.UI.Window              create and return an instance of Titanium.UI.Window




Titanium.UI.Button
Le bouton est créé par la méthode Titanium.UI.createButton.

Les plus principales propriétés :




                                            38
Propriété                       Type                   Description
backgroundColor                 String                 the buttons background color
backgroundImage                 String                 url to a button image that is drawn as the
                                                       background of the button
borderColor                     String                 the border color of the view
Height                          float,string           Property for the view height. can be either
                                                       float value or a string of the width.
Enabled                         Boolean                Boolean that indicates if the button is enabled
                                                       or not


Méthode                                   Type retourner     Description

add(Object view)                          Void               add a child to the view hierarchy
addEventListener(name,callback)           Void               add an event listener for the instance
                                                             to receive view triggered events
remove(Object view)                       Void               remove a previously add view from
                                                             the view hiearchy
removeEventListener(name,callback) Void                      remove a previously added event
                                                             listener


Exemples:

var button = Titanium.UI.createButton({
title: 'Hello'
});
button.addEventListener('click',function(e)
{
Titanium.API.info("You clicked the button");
});




                                           39

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:12
posted:7/20/2012
language:French
pages:39