IOS

Environnement du travail

L’écosystème

Le terminal mobile

  • Ordinateur miniature (Système embarqué)
    • Impact sur les ressources
  • Système réactif
    • Basé sur l’interface user
  • Smartphone ou tablette
    • Taille de l’écran
  • Processeur
    • ARM(basse consommation)
  • Disque
    • Mémoire flash
  • Mémoire vive
    • RAM
  • Périphériques
    • Capteurs diverses
    • Cartes réseaux

 

iOS vs Android

  • Même principes
  • Java/Objective-C ou Swift
  • Eclipse+plug-in / Xcode
  • Brevets

L’écosystème ?

 

    • Offre ? Nombre de développeurs? Nombre d’applications?

    → Attirer les développeurs

    → Générer de nouvelles  utilisations

     

 

Apple

 

Google

Nombre d’applications 1,2 millions d’applications 1,4 millions d’app
 

Téléchargements

 

100 millions

 

200 millions

 

Développeurs

 

500 à 1000$ /mois/app 163 milliards de $

 

100 à 200$ /mois/app 149 milliards de $

Programmation embraquée

  • Contraintes :
  • Mémoire, CPU, énergie…
  • Compilation croisée (souvent)
  • Programmation sur plateformes mobiles
  • Programmation embraquée
  • Programmation centrée sur l’interface User

-Modèle MVC

  • Programmation réactive

 

Contraintes et enjeux en programmation

 

q Mémoire
– Android : garbage collector
 

 

 

q

-iOS           : ARC (Automatic

Consommation d’ énergie

Reference Counting)

périphériques gourmands : GPS, caméra/HDR/Flash,..

q   CPU (lié à la consommation d’énergie)

-Algorithmes couteux (jeux)

q   Les événements urgents

– Appel téléphonique

q   Ergonomie

-Facilité d’utilisation

-Respecter le modèle de réactivité( look and feel)

  • Charte graphique
  • Mécanismes dédiés

 

 

q   Fiabilité

– Problème de plantage et mémoire

q   Sécurité

  • Protection des données personnelles
    • Accès contrôlé par des API à certains éléments

q    Rapidité

-aspects algorithmiques

 

périphériques gourmands : GPS, caméra/HDR/Flash,..

q   CPU (lié à la consommation d’énergie)

-Algorithmes couteux (jeux)

q   Les événements urgents

– Appel téléphonique

q   Ergonomie

-Facilité d’utilisation

-Respecter le modèle de réactivité( look and feel)

  • Charte graphique
  • Mécanismes dédiés

q   Fiabilité

– Problème de plantage et mémoire

q   Sécurité

  • Protection des données personnelles
    • Accès contrôlé par des API à certains éléments

q    Rapidité

-aspects algorithmiques

 

L’environnement de développement: Xcode

 

  • Environnement de développement des applications iOS et MacOs (version 8- 2016)
  • Evolue au même rythme que les versions des OS (Mac, iOS)
  • Xcode propose un GUI + SDK
  • Graphic User Interface
  • Concevoir l’interface
  • Sogware Development Kit
  • Environnement intégré de développement
  • Il existe toujours une possibilité de faire l’hybride
  • Titanium
  • Phonegap
  • Ionic
  • Il est aussi possible de faire du HTML5

Comment déployer une application iOS

 

  • Tester et/ou déployer l’application sur un matériel (iPhone ou iPad) : Enregistrer auprès de l’iOS Developer Program.
  • Il existe 3 types d’inscription :
  • iOS Developer Program – Individual 99$
  • iOS Developer Program – Company 99$
  • iOS Developer Enterprise Program 299$

Les programmes de développement

Les différents types de déploiement

 

  • Localement en utilisant un câble USB
    • Requiert un abonnement à Provisioning Profile
    • Possibilité d’utiliser un University program
  • Via l’AppStore
    • Validation d’Apple
    • Apple prélève 30% de votre CA
    • Nécessite un abonnement à   Distribution profile
  • Via Intranet + Itunes
    • Génération d’un fichier .ipa
    • Peut être déployé sur un serveur local
    • Certification entreprise à Distribution profile

 

 

 

 

 

Vous souhaitez développer : Distribution

App Store

Distribution

Ad Hoc

Distribution

In-House

une application pour votre matériel

personnel.

X
une application pour les matériels d’un

ensemble de personnes (jusqu’à 100 matériels).

X X
une application pour les matériels d’un

ensemble de personnes (au delà de 100 matériels).

X
une application et vous ne connaissez pas

les matériels sur lesquels elle sera installée.

X

 

 

Déploiement d’une application via AppStore

 

  • Configurez une entrée pour votre application dans iTunes Connect pour télécharg
  • Préparez votre application pour le déploiement .
  • Générez un fichier archive d’application (.ipa) pour votre appli
  • Chargez votre application dans l’App Store.

Signature et distribution

 

A quoi ça sert ?

 

  • Certifier l’identité du développeur
  • Gérer des droits d’accès
  • Limiter l’exécution d’applications (programme payant)

 

Préparation de la signature du code de votre application

 

Pour distribuer ou exécuter votre application sur un périphérique iOS                                                                                             :

 

  1. Rejoindre l’un des programmes Développeur iOS.

les certificats et les outils nécessaires auprès d’Apple

exécuter et déployer les applications à destination des périphériques iOS.

 

  1. Acquérir un certificat Développeur iOS

nécessaire pour signer votre application.

  1. A pprovisionner votre application

l’exécuter sur vos périphériques iOS.

 

Signature et distribution

 

Avantages

 

  • Une protection certaine

– Contre les malveillances(virus,etc.)

 

  • Un contrôle qualité

-Limiter les erreurs

  • Inconvénients
  • Une forme de protection

– Contre la concurrence

  • Un mécanisme de déploiement complexe

Leave a Reply

Your email address will not be published. Required fields are marked *

Close