<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog de Benoit Letondor</title>
	<atom:link href="http://blog.benoitletondor.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.benoitletondor.com</link>
	<description>Développement web et mobile</description>
	<lastBuildDate>Sun, 19 Jun 2011 21:58:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Bien choisir la langue de son compte développeur iOS</title>
		<link>http://blog.benoitletondor.com/2011/06/19/bien-choisir-la-langue-de-son-compte-developpeur-ios-appstore/</link>
		<comments>http://blog.benoitletondor.com/2011/06/19/bien-choisir-la-langue-de-son-compte-developpeur-ios-appstore/#comments</comments>
		<pubDate>Sun, 19 Jun 2011 21:53:38 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[appstore]]></category>
		<category><![CDATA[developpeur]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPad]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=373</guid>
		<description><![CDATA[Lorsque l&#8217;on crée son compte de développeur iOS pour distribuer des applications sur l&#8217;AppStore, une des questions qui nous ait posée est la suivante : Quelle langue principale voulez-vous choisir ? Alors que cache cette question et pourquoi est-elle très importante ? La réponse dans cet article Quelle est l&#8217;influence de la langue principale d&#8217;un [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/appStore.jpg" alt="appStore apple" title="appStore" width="75" height="75" class="alignleft size-full wp-image-368" /></p>
<p>Lorsque l&#8217;on crée son compte de développeur iOS pour distribuer des applications sur l&#8217;AppStore, une des questions qui nous ait posée est la suivante : Quelle langue principale voulez-vous choisir ?</p>
<p>Alors que cache cette question et pourquoi est-elle très importante ? La réponse dans cet article</p>
<p><span id="more-373"></span></p>
<h3>Quelle est l&#8217;influence de la langue principale d&#8217;un compte développeur iOS ?</h3>
<p>Cette langue est la langue de référence de votre compte, elle définie donc également la langue de référence de vos applications. C&#8217;est à dire que si vous choisissez le Français comme langue de référence, la langue de référence pour la localisation de vos applications sera le Français.</p>
<p>Très bien, mais quelles en sont les conséquences ? Les conséquences sont les suivantes : Pour proposer une application à l&#8217;international, iTunes Connect (la plateforme de mise en ligne des applications sur l&#8217;AppStore pour les développeurs) vous propose de localiser la description et les screenshots de votre application. L&#8217;idée est ici de pouvoir proposer une description en Allemand pour les utilisateurs de l&#8217;AppStore allemand, une description en Anglais pour les utilisateurs du store aux Etats-Unis&#8230; etc&#8230;</p>
<p>Jusque la, la langue de référence de votre compte n&#8217;a pas d&#8217;influence, sauf que, l&#8217;AppStore fonctionne de la manière suivante :</p>
<ul>
<li>1. Vous entrez la description et les screenshots pour votre langue de référence</li>
<li>2. Vous entrez la description et les screenshots pour CHACUN des autres <b>PAYS</b> pour lesquels pour souhaitez proposer une localisation</li>
</ul>
<p>Ce qui signifie que les utilisateurs verront soit la description dans la langue de référence si aucune localisation pour leur pays n&#8217;est proposée, soit la localisation pour leur pays si vous en avez entrée une.</p>
<h3>Un exemple concret</h3>
<p>Ma langue de référence est le Français</p>
<p>J&#8217;ajoute une application sur l&#8217;AppStore en la rendant disponible dans le monde entier. Je dois alors tout d&#8217;abord entrer la description et les screenshots en Français, puisque c&#8217;est ma langue de référence.<br />
Ceci étant fait, je choisis d&#8217;ajouter une description et des screenshots en Anglais pour les utilisateurs du store des Etats-Unis.</p>
<p>Voici maintenant ce que différents utilisateurs verront :</p>
<ul>
<li><b>Utilisateur vivant en France : </b>Description et screenshots en Français</li>
<li><b>Utilisateur vivant aux Etats-Unis : </b>Description et screenshots en Anglais</li>
<li><b>Utilisateur vivant en Espagne : </b>Description et screenshots en Français</li>
<li><b>Utilisateur vivant en Angleterre : </b>Description et screenshots en Français</li>
</ul>
<h3>Une influence considérable : Prudence</h3>
<p>Le soucis est donc le suivant : La localisation n&#8217;est pas propre à la langue mais au pays, si j&#8217;ai choisis comme langue de référence le Français et que je souhaite proposer une applications avec descriptions et screenshots en Anglais pour tout le monde sauf en France, je devrai donc entrer <b>autant de localisations qu&#8217;il existe de pays !</b></p>
<p><b>Il faut donc réfléchir et choisir la langue de référence de son compte avec prudence.</b> En général, il vaut mieux choisir l&#8217;Anglais, de tel sorte que l&#8217;on soit sur que tout le monde va bien voir la description en Anglais de base et qu&#8217;on n&#8217;ai uniquement à proposer une localisation pour certains pays.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2011/06/19/bien-choisir-la-langue-de-son-compte-developpeur-ios-appstore/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Comment publier une webapp sur l&#8217;AppStore oul&#8217;Android Market ?</title>
		<link>http://blog.benoitletondor.com/2011/02/19/comment-publier-une-webapp-sur-appstore-android-market/</link>
		<comments>http://blog.benoitletondor.com/2011/02/19/comment-publier-une-webapp-sur-appstore-android-market/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 13:36:04 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[Développement web]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[android market]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[appstore]]></category>
		<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[webapp]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=350</guid>
		<description><![CDATA[HTML 5 est un langage cross-platform très puissant permettant de créer des webapp performantes. Cependant si la technologie est la, il manque toujours un éco-système de distribution afin de pouvoir faire connaître sa webapp. La question est donc : Comment publier une webapp sur l&#8217;AppStore de l&#8217;iPhone et de l&#8217;iPad ou sur l&#8217;Android Market ? Les composants [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/appStore.jpg" alt="appStore apple" title="appStore" width="75" height="75" class="alignleft size-full wp-image-368" /><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/androidMarket.jpg" alt="Android Market" title="androidMarket" width="81" height="75" class="alignright size-full wp-image-369" />
<p>HTML 5 est un langage cross-platform très puissant permettant de créer des webapp  performantes. Cependant si la technologie est la, il manque toujours un éco-système de distribution afin de pouvoir faire connaître sa webapp. La question est donc : Comment publier une webapp sur l&#8217;AppStore de l&#8217;iPhone et de l&#8217;iPad ou sur l&#8217;Android Market ?</p>
<p><span id="more-350"></span></p>
<h3>Les composants WebView</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/webkit-icon.png" alt="webkit html 5" title="webkit-icon" width="128" height="128" class="alignleft size-full wp-image-357" />
<p>Les webview (UIWebView pour iOS et WebView pour Android) sont des composants du SDK natif du téléphone qui permettent d&#8217;intégrer du contenu web dans une application native. C&#8217;est ce composant qu&#8217;il va falloir utiliser.</p>
<p>En effet, l&#8217;idée est d&#8217;empacketer votre web-app dans une application native afin de pouvoir la distribuer sur les stores. Pour ce faire, on va donc faire pointer la webview sur notre webapp et donc donner l&#8217;impression à l&#8217;utilisateur d&#8217;utiliser directement notre webapp alors qu&#8217;il passe en fait par une application native et une webview.</p>
<p>Une fois ce principe compris : vous n&#8217;avez plus qu&#8217;a créer une application iPhone/iPad avec une UIWebView et/ou une application Android avec une Webview. Le code de chacune des applications ne dépasse donc pas les 15 lignes.</p>
<p>On a donc notre webview, mais encore faut-il la faire pointer sur notre webapp. La question qui se pose alors est la suivante : Comment et ou stocker notre webapp ?</p>
<h3>Le stockage de la webapp</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/links-150x150.jpg" alt="" title="links" width="100" height="100" class="alignleft size-thumbnail wp-image-358" />
<p>Ici il existe 2 possibilités distinctes qui ont chacun leurs avantages et leurs inconvénients :</p>
<p><b>1. Le stockage local dans le téléphone</b><br />
La première possibilité est d&#8217;intégrer votre webapp dans l&#8217;application native directement. Il est donc alors possible de faire pointer la webview directement sur votre dossier contenant l&#8217;HTML local.<br />
Les avantages sont la rapidité d’exécution et le fait de ne pas demander de connexion internet pour exécuter l&#8217;application. </p>
<p><b>2. Le stockage en ligne sur un serveur</b><br />
La seconde possibilité est stocker votre webapp sur un serveur web en ligne et de faire pointer votre webview sur l&#8217;url du serveur.<br />
L&#8217;avantage est alors de pouvoir faire des traitements serveur (php, stockage dans une base de donnée en ligne etc&#8230;) directement depuis la webapp.</p>
<p>Libre à vous, selon votre application de choisir l&#8217;une des deux possibilités.</p>
<h3>Les spécifications de l&#8217;AppStore d&#8217;Apple</h3>
<p>Attention cependant, il est précisé dans les guidelines d&#8217;Apple pour la soumission de votre application pour l&#8217;AppStore que votre app ne doit pas être simplement une webview qui pointe sur un site web classique. L&#8217;idée est de protéger l&#8217;appstore contre une invasion de sites web non optimisés mobiles.</p>
<p>Veillez donc bien à ce que votre webapp soit pertinente, optimisé pour le mobile et qu&#8217;elle apporte un réel plus à l&#8217;utilisateur, sinon vous avez de grande chance de voir la soumission de votre application refusée par Apple.</p>
<h3>Deux exemples de webapp HTML 5</h3>
<p>Voici deux exemples de webapp HTML 5 empacketés dans des applications native et qui sont donc disponibles sur les stores Android et iOS :</p>
<p><b>1. Open RSS Reader</b><br />
<img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/mzi.nrdfehbf.175x175-75-150x150.jpg" alt="Open RSS Reader" title="mzi.nrdfehbf.175x175-75" width="50" height="50" class="alignleft size-thumbnail wp-image-359" />Un lecteur de flux RSS réalisé en jQuery mobile HTML 5, l&#8217;application est disponible sur l&#8217;Android Market et sur l&#8217;AppStore. Elle utilise la deuxième méthode de stockage à savoir le stockage en ligne sur un serveur afin de pouvoir effectuer les traitements sur les flux en ligne.</p>
<ul>
<li>Lien Android Market : <a href='https://market.android.com/details?id=com.benoitletondor.openrss' target='_blank' title='Open RSS Reader sur Android Market'>Open RSS Reader Android</a></li>
<li>Lien AppStore : <a href='http://itunes.apple.com/fr/app/open-rss-reader/id403112893?mt=8' target='_blank' title='Open RSS Reader sur l'AppStore'>Open RSS Reader iPhone / iPad</a></li>
</ul>
<p><b>2. Save the Pig</b><br />
<img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/Save-the-Pig1.png" alt="Save the Pig" title="Save-the-Pig" width="45" height="45" class="alignleft size-full wp-image-360" />Save the Pig est un mini-jeu pour iPhone réalisé en HTML 5 avec la librairie <a href='http://easeljs.com/' title='Easel JS' target='_blank'>Easel JS</a>. Il utilise le stockage local dans l&#8217;application afin d&#8217;offrir des performances maximales. Le jeu est disponible gratuitement sur l&#8217;AppStore :</p>
<ul>
<li>Lien AppStore : <a href='http://itunes.apple.com/fr/app/save-the-pig/id415530422?mt=8&#038;ls=1' title='Save the Pig sur l'AppStore' target='_blank'>Save the Pig iPhone</a></li>
</ul>
<div style='clear:both; height:30px;'> </div>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2011/02/19/comment-publier-une-webapp-sur-appstore-android-market/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Les business models pour iPad, iPhone et AndroidComment monétiser son app ?</title>
		<link>http://blog.benoitletondor.com/2011/02/16/business-models-pour-ipad-iphone-android-comment-monetiser-son-app/</link>
		<comments>http://blog.benoitletondor.com/2011/02/16/business-models-pour-ipad-iphone-android-comment-monetiser-son-app/#comments</comments>
		<pubDate>Wed, 16 Feb 2011 12:24:08 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[appstore]]></category>
		<category><![CDATA[business model]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[market]]></category>
		<category><![CDATA[monétiser]]></category>
		<category><![CDATA[smartphone]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=330</guid>
		<description><![CDATA[A l&#8217;heure où avoir une application sur le store des smartphones et plus particulièrement sur l&#8217;AppStore et l&#8217;Android Market est devenue une habitude pour toutes les personnes soucieuses d&#8217;être à la pointe de la technologie, il est nécessaire d&#8217;avoir une réflexion sur les différentes manière de monétiser son app, notamment car avec la plateforme iTunes [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/app_purchases20101120.jpg" alt="Monétiser son application mobile" title="Monétiser son application mobile" width="98" height="98" class="alignleft size-full wp-image-344" />
<p>A l&#8217;heure où avoir une application sur le store des smartphones et plus particulièrement sur l&#8217;AppStore et l&#8217;Android Market est devenue une habitude pour toutes les personnes soucieuses d&#8217;être à la pointe de la technologie, il est nécessaire d&#8217;avoir une réflexion sur les différentes manière de monétiser son app, notamment car avec la plateforme iTunes d&#8217;Apple, les possibilités sont nombreuses. Voici un petit tour d&#8217;horizon de ce qu&#8217;il est possible de faire.</p>
<p><span id="more-330"></span></p>
<h3>Modèle de l&#8217;application payante</h3>
<p>Dans ce modèle, l&#8217;utilisateur final doit payer avant de pouvoir télécharger et lancer l&#8217;application. Ce modèle est probablement le plus rentable et le plus utilisé pour monétiser à l&#8217;heure actuel même si les choses sont entrain de changer (voir la partie sur les achats intégrés).</p>
<p><b>Avantages :</b></p>
<ul>
<li>Entrées d&#8217;argent directes et fixes pour chaque téléchargement</li>
<li>Les revenues augmentent proportionnellement aux téléchargements</li>
</ul>
<p><b>Inconvénients :</b></p>
<ul>
<li>Application plus difficile à vendre car payante</li>
<li>Attentes de l&#8217;utilisateur plus importantes</li>
</ul>
<p>Ce modèle est donc une valeur sure si vous pouvez vous assurer que votre application va être téléchargée suffisamment pour être rentable. Il faut donc être soucieux de la qualité de l&#8217;app et la promouvoir de manière efficace.</p>
<h3>Modèle de l&#8217;application gratuite</h3>
<p>Ce modèle est le plus apprécié des utilisateurs car il consiste à laisser la possibilité de télécharger et d&#8217;utiliser l&#8217;application gratuitement. Ce modèle est très souvent couplé à un autre modèle afin d&#8217;assurer la monétisation.</p>
<p><b>Avantages :</b></p>
<ul>
<li>Grand nombre de téléchargements (une application gratuite est en moyenne 10 fois plus téléchargée qu&#8217;une app payante)</li>
<li>Utilisateur moins exigent car application gratuite</li>
</ul>
<p><b>Inconvénients :</b></p>
<ul>
<li>Pas de monétisation directe (nécessité de le coupler avec un autre business model)</li>
</ul>
<p>Ce modèle est donc une manière de toucher le plus grand nombre, mais pour monétiser il est souvent couplé soit à une application payante qui propose plus de fonctionnalités (modèle de l&#8217;app &laquo;&nbsp;lite&nbsp;&raquo; ou de la &laquo;&nbsp;démo&nbsp;&raquo;), soit à un autre business model (voir achats intégrés ou publicité)</p>
<h3>Modèle de la publicité intégrée</h3>
<p>Ce modèle consiste à intégrer de la publicité dans son application afin de généré des revenues. Si ce modèle est beaucoup utilisé couplé à une app gratuite, il n&#8217;est pas forcément le plus apprécié de l&#8217;utilisateur final.</p>
<p><b>Avantages :</b></p>
<ul>
<li>Grand nombre de téléchargements si il est utilisé dans une app gratuite</li>
<li>Permet de monétiser sans forcément faire payer l&#8217;utilisateur</li>
</ul>
<p><b>Inconvénients :</b></p>
<ul>
<li>Monétisation dépendante de l&#8217;utilisation de l&#8217;application (Une app peut être beaucoup téléchargée mais ne pas rapporter beaucoup si elle n&#8217;est pas utilisée souvent)</li>
<li>Part de la somme générée par la publicité reçue dépendante de la régie publicitaire utilisée</li>
</ul>
<p>Ce modèle présente donc des avantages dont le principal est bien sur de pouvoir mettre une application gratuite à disposition de l&#8217;utilisateur et de monétiser quand même. On voit même des app payantes utiliser de la publicité pour augmenter encore les revenues. L&#8217;intégration dans une application est également très simple (surtout sur la plateforme Apple avec iAd). Cependant méfiance car les utilisateurs n&#8217;aiment généralement pas la publicité, il faut donc l&#8217;utiliser avec parcimonie.</p>
<h3>Modèle de l&#8217;achat intégré</h3>
<p>Avec ce modèle, l&#8217;utilisateur peut effectuer des achats directement dans l&#8217;application grâce à des achats intégrer. Cela lui permet alors de s&#8217;abonner ou de débloquer des fonctionnalités supplémentaires. Dans ce domaine en grande expansion, Apple à pris un ascendant considérable sur la concurrence en proposant des achats intégrés très simplifiés et même un système d&#8217;abonnement automatique pour la presse dans le nouvel iOS 4.3</p>
<p><b>Avantages :</b></p>
<ul>
<li>Permet à l&#8217;utilisateur de payer très simplement sans quitter l&#8217;application</li>
<li>Permet de générer des revenues avec une application gratuite et sans publicité</li>
<li>Très simple à intégrer sur iPhone et iPad</li>
</ul>
<p><b>Inconvénients :</b></p>
<ul>
<li>Revenues dépendant des usages de l&#8217;utilisateur</li>
<li>Plus difficile à implémenter sur Android</li>
</ul>
<p>Ce modèle est de plus en plus utilisé car il permet de coupler les avantages d&#8217;une application gratuite et ceux d&#8217;une application payante via les achats intégrés. Cependant, cette solution n&#8217;est viable que si l&#8217;utilisateur se décide à utiliser l&#8217;achat intégré, il faut donc proposer des fonctionnalités intéressantes à débloquer.</p>
<h3>Et les Web app alors ?</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/HTML5_Logo_5121-150x150.png" alt="HTML 5" title="HTML5_Logo_512" width="70" height="70" class="alignleft size-thumbnail wp-image-346" />
<p>Il restait un dernier point à traiter concernant la monétisation, c&#8217;est celui de la web app HTML 5. En effet, si HTML 5 propose un outil technique pour réaliser une app de qualité, il n&#8217;existe pas vraiment d&#8217;éco système puissant comme celui de l&#8217;AppStore et du Market pour les monétiser. Il y a donc plusieurs solutions possible :</p>
<ul>
<li> Empaqueter sa web-app dans une webview au sein d&#8217;une application native et la mettre en vente sur l&#8217;AppStore ou le Market Android : voir <a href='http://blog.benoitletondor.com/2011/02/19/comment-publier-une-webapp-sur-appstore-android-market/' title='Vendre une webapp sur les stores mobiles'>cet article</a></li>
<li>Vendre sa web app sur un store HTML 5 alternatif (exemple : <a href='http://www.openappmkt.com/' title='Open App Mkt' target='_blank'>Open App Mkt</a>). Cependant, il est assez difficile de vendre sur ce genre de marchés. Le plus souvent les apps payantes ne sont pas téléchargées</li>
<li>Intégrer de la publicité : Solution la plus simple à mettre en place et qui est la plus utilisée à l&#8217;heure actuelle pour monétiser une web app</li>
<li>Intégrer une solution de paiement intégré : Très peu utilisé car assez difficile à mettre en place, il n&#8217;y a en effet pas de plateforme de référence pour ce type de transactions (même si des outils comme Paypal peuvent fonctionner)</li>
</ul>
<div style='clear:both; height:30px;'> </div>
<p><b>Conclusion :</b> Il existe donc de nombreuses façon de monétiser une app sans forcément la rendre payante directement pour l&#8217;utilisateur. Selon vous, quel modèle économique et le plus viable ?</p>
<div style='clear:both; height:30px;'> </div>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2011/02/16/business-models-pour-ipad-iphone-android-comment-monetiser-son-app/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Créer un jeu mobile en HTML 5</title>
		<link>http://blog.benoitletondor.com/2011/02/01/creer-un-jeu-mobile-en-html-5/</link>
		<comments>http://blog.benoitletondor.com/2011/02/01/creer-un-jeu-mobile-en-html-5/#comments</comments>
		<pubDate>Tue, 01 Feb 2011 13:16:33 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[Développement web]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[canvas]]></category>
		<category><![CDATA[easelJS]]></category>
		<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[save the pig]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=312</guid>
		<description><![CDATA[Après un article sur la création d&#8217;une application multi-plateformes en utilisant HTML 5, j&#8217;ai décidé cette fois de me lancer dans la création d&#8217;un mini jeu pour iPhone en utilisant les canvas. Découvrez comment créer simplement un jeu complet pour iPhone et toutes les plateformes compatibles HTML 5 La librairie Easel JS : Les canvas [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/HTML5_Logo_512-150x150.png" alt="HTML 5" title="HTML 5" width="80" height="80" class="alignleft size-thumbnail wp-image-328" />
<p>Après un article sur la création d&#8217;une application multi-plateformes en utilisant HTML 5, j&#8217;ai décidé cette fois de me lancer dans la création d&#8217;un mini jeu pour iPhone en utilisant les canvas. Découvrez comment créer simplement un jeu complet pour iPhone et toutes les plateformes compatibles HTML 5</p>
<p><span id="more-312"></span></p>
<h3>La librairie Easel JS : Les canvas accessibles</h3>
<p>Si vous avez déjà essayé d&#8217;utiliser les balises canvas d&#8217;HTML 5, vous avez sans remarquer qu&#8217;il n&#8217;est pas évident de maitriser l&#8217;ensemble des fonctionnalités. C&#8217;est pour cela que <a href='http://twitter.com/gskinner' title='@gskinner' target='_blank'>Grant Skinner</a> a créé la librairie <a href='http://easeljs.com/' title='Easel JS' target='_blank'>Easel JS</a></p>
<p>Le but de cette librairie est de retrouver ce qui fait la force du Flash et de l&#8217;AS3 dans les canvas, c&#8217;est à dire : Une scène (stage), des DisplayObject et une DisplayList. Le tout compatible avec l&#8217;ensemble des navigateurs modernes puisque les canvas commencent à être bien implantés.</p>
<p>Pour mieux comprendre, jetez un oeil à la documentation d&#8217;Easel JS : <a href='http://easeljs.com/docs/' target='_blank' title='Easel JS documentation'>Documentation Easel JS</a></p>
<h3>La communication entre Objective-C et JavaScript</h3>
<p>Pour lancer le jeu sur l&#8217;AppStore, j&#8217;ai du créer une app qui utilise une UIWebView pour l&#8217;affichage. Cependant, même si l&#8217;ensemble du jeu est programmé en JavaScript, il peut être utile de communiquer entre JavaScript et Objective-C.</p>
<p><b>Appeler une fonction javascript depuis Objective-C</b></p>
<div class="codeBack"><code><br />
[maWebView stringByEvaluatingJavaScriptFromString:@"MaFonctionJS()"];<br />
</code></div>
<p><b>Appeler du code Objective-C depuis JavaScript</b></p>
<p>Depuis JavaScript : </p>
<div class="codeBack"><code><br />
function callObjectiveC(){<br />
window.location = 'myapp:'+'maFonction:'+'monParametre';<br />
}<br />
</code></div>
<p>Puis, en Objective-C : </p>
<div class="codeBack" style='text-align:left;'><code><br />
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{<br />
	NSString *requestString = [[request URL] absoluteString];<br />
	NSArray *components = [requestString componentsSeparatedByString:@":"];</p>
<p>	if ([components count] > 1 &#038;&#038; [(NSString *)[components objectAtIndex:0] isEqualToString:@"myapp"]) {<br />
		if([(NSString *)[components objectAtIndex:1] isEqualToString:@"maFonction"]) {<br />
			NSString *param = [components objectAtIndex:2];</p>
<p>			//Traitement de la fonction<br />
		}<br />
}}<br />
</code></div>
<p>Tout cela vous permettra de communiquer facilement entre Objective-C et JavaScript. Le fonctionnement est semblable sur Android avec une WebView</p>
<h3>Mise en application : Save the Pig</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/Save-the-Pig.png" alt="HTML 5 iphone game" title="Save-the-Pig" width="80" height="80" class="alignleft size-full wp-image-313" />
<p>Pour mettre en application tout cela, j&#8217;ai donc créé un mini jeu iPhone entièrement créé en HTML 5 avec Easel JS : Save the Pig</p>
<p>Ce jeu utilise la balise canvas pour l&#8217;affichage graphique et l&#8217;interaction avec l&#8217;utilisateur et utilise les fonctions d&#8217;appel de code Objective-C pour le multi-taches et le Game Center</p>
<p>L&#8217;application est disponible sur l&#8217;AppStore gratuitement :<br />
<a href='http://itunes.apple.com/fr/app/save-the-pig/id415530422?mt=8&#038;ls=1' title='Save the Pig - AppStore' target='_blank'><img src="http://blog.benoitletondor.com/wp-content/uploads/2011/02/appstore.png" alt="Save the Pig - AppStore" title="Save the Pig - AppStore" width="201" height="71" class="alignnone size-full wp-image-321" /></a></p>
<p>Plus d&#8217;infos sur le jeu sur son mini-site officiel : <a href='http://savethepig.benoitletondor.com/' target='_blank' title='Save the Pig - the Original iPhone game'>Save the Pig &#8211; site officiel</a></p>
<p>Qu&#8217;en pensez vous? Pour ou contre l&#8217;HTML 5 dans le monde des jeux mobiles ? </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2011/02/01/creer-un-jeu-mobile-en-html-5/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Créer une application mobile HTML 5 multi-plateformes</title>
		<link>http://blog.benoitletondor.com/2010/12/05/creer-une-application-mobile-html-5-multi-plateformes/</link>
		<comments>http://blog.benoitletondor.com/2010/12/05/creer-une-application-mobile-html-5-multi-plateformes/#comments</comments>
		<pubDate>Sun, 05 Dec 2010 18:46:58 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[Développement web]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[application mobile]]></category>
		<category><![CDATA[blackberry]]></category>
		<category><![CDATA[cross-platform]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[jquery mobile]]></category>
		<category><![CDATA[webapp]]></category>
		<category><![CDATA[windows phone]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=295</guid>
		<description><![CDATA[A l&#8217;heure où les plateformes mobiles se diversifient, il est important de pouvoir créer une application qui soit utilisable sur un maximum de supports et ne pas se restreindre uniquement à l&#8217;iPhone ou à Android. Pour cela, un seul langage est possible : HTML 5. Cet article met en avant la création d&#8217;une webapp de [...]]]></description>
			<content:encoded><![CDATA[<p>A l&#8217;heure où les plateformes mobiles se diversifient, il est important de pouvoir créer une application qui soit utilisable sur un maximum de supports et ne pas se restreindre uniquement à l&#8217;iPhone ou à Android. Pour cela, un seul langage est possible : HTML 5. Cet article met en avant la création d&#8217;une webapp de lecture de flux RSS compatible avec iOS, Android, BlackBerry et Windows Phone en utilisant Jquery Mobile.</p>
<p><span id="more-295"></span></p>
<h3>Jquery Mobile, pourquoi et comment ?</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/12/Sans-titre-1.jpg" alt="JQuery Mobile" title="JQuery Mobile" width="237" height="62" class="alignleft size-full wp-image-305" />
<p>L&#8217;une des difficultés lorsque l&#8217;on se lance dans la création d&#8217;une application cross-platform (comprenez compatible avec plusieurs plateformes) est de trouver un framework efficace et multi-plateformes. Pour mon application j&#8217;ai choisis d&#8217;utiliser Jquery Mobile car il propose une syntaxe simple et est très facile à utiliser. D&#8217;autres framework sont possibles, notamment Sensha Touch qui a l&#8217;air très convaincant et efficace.</p>
<p>J&#8217;ai donc choisi Jquery Mobile couplé à une structure HTML 5 classique (<a href='http://blog.benoitletondor.com/2010/05/30/construire-la-structure-dun-site-en-html-5/' title='Structurer son site en HTML 5'>voir la structure d&#8217;un site html 5</a>). La prise en main de Jquery Mobile est très simple, surtout si vous connaissez déjà Jquery. On arrive très rapidement à faire des structures de données et a naviguer entre les différents écrans de l&#8217;application. La version actuelle (alpha 2) de Jquery mobile propose des animations de transitions très convaincantes, surtout sur iPhone ou l&#8217;on retrouve vraiment l&#8217;impression d&#8217;une application native.</p>
<p>Jquery Mobile propose des éléments d&#8217;interface mobile tout faits qu&#8217;il ne reste qu&#8217;à implémenter pour les utiliser. La barre de navigation, les boutons d&#8217;interface, les listes, les boutons etc&#8230; Tout est très simple à utiliser et à mettre en place.</p>
<h3>Vraiment multi-plateforme ?</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/12/phones-150x150.jpg" alt="phones" title="phones" width="150" height="150" class="alignleft size-thumbnail wp-image-308" />
<p>La réponse est <b>oui</b>! Difficile de le nier, en effet on arrive au même résultat que l&#8217;on lance l&#8217;application sur Android (2.2 minimum) et iOS (4.0 minimum) ainsi que sur les derniers BlackBerry. Nul doute que le contrat est donc rempli de ce coté la.</p>
<p>NB : Si l&#8217;application a la même apparence sur les différents terminaux, il ne faut pas négliger les différences de résolution d&#8217;écran et de rapidité d’exécution. Si l&#8217;iPhone 3GS et 4 ainsi que le Nexus One s&#8217;en sortent très bien, les téléphones moins récents ont un peu plus de mal a faire tourner l&#8217;application de manière fluide</p>
<p>En revanche, si nous avons la possibilité de créer une application, il faut encore pouvoir la distribuer sur toutes ces plateformes.</p>
<h3>Distribution : AppStore et Android Market</h3>
<p>Pour distribuer mon application, j&#8217;ai donc essayer de mettre en vente sur l&#8217;AppStore et sur L&#8217;Android Market. Pour toucher ces 2 plateformes, vous devez absolument disposer d&#8217;une application native (.apk pour Android et .ipa pour iPhone), il a donc fallu créer des applications incluants une webView qui charge notre webapp.</p>
<p>Il suffit ensuite de mettre en vente cette application native sur les plateformes Android et Apple afin de pouvoir toucher un maximum de personnes avec notre webapp</p>
<h3>Open RSS Reader, un premier jet</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/12/mzi.nrdfehbf.175x175-75-150x150.jpg" alt="Open RSS Reader icon" title="Open RSS Reader icon" width="100" height="100" class="alignleft size-thumbnail wp-image-299" />
<p>Pour mettre en avant la possibilité de créer dès maintenant une webapp HTML 5 et de la vendre sur l&#8217;AppStore et sur l&#8217;Android Market, j&#8217;ai décidé de commercialiser ma WebApp de lecture de flux RSS : <a href='http://openrssreader.benoitletondor.com/' title='Open RSS Reader - Mobile RSS reader App'>Open RSS Reader</a></p>
<p>La voici disponible :</p>
<ul>
<li><a href='http://itunes.apple.com/fr/app/open-rss-reader/id403112893?mt=8' title='Open RSS Reader on AppStore'>Sur l&#8217;AppStore d&#8217;Apple</a></li>
<li><a href='http://www.androidzoom.com/android_applications/tools/open-rss-reader_onnk.html' title='Open RSS Reader on Android Market'>Sur l&#8217;Android Market</a></li>
<li><a href='http://openappmkt.com/app/4cdd05c73688204823000666/Open%20RSS%20Reader' title='Open RSS Reader on OpenAppMkt'>Sur OpenAppMkt</a></li>
</ul>
<p>Si vous voulez voir le résultat ou juste supporter mon travail, achetez l&#8217;application et n&#8217;hésitez pas a me donner votre sentiment vos feedbacks</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/12/05/creer-une-application-mobile-html-5-multi-plateformes/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Créer des animations HTML 5 / CSS 3 : Sencha animator</title>
		<link>http://blog.benoitletondor.com/2010/10/27/creer-des-animations-html-5-css-3-sencha-animator/</link>
		<comments>http://blog.benoitletondor.com/2010/10/27/creer-des-animations-html-5-css-3-sencha-animator/#comments</comments>
		<pubDate>Wed, 27 Oct 2010 11:30:12 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Développement web]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[animations]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[HTML 5]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=281</guid>
		<description><![CDATA[L&#8217;une des caractéristiques qui fait la force de Flash est la simplicité avec laquelle on peut créer très rapidement des animations avec l&#8217;IDE composé d&#8217;une scène et d&#8217;une timeline. Aujourd&#8217;hui, il est possible de réaliser la même chose très simplement pour une animation CSS 3 et HTML 5, avec l&#8217;outil Sencha Animation Un outil simple [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/10/Capture-d’écran-2010-10-27-à-13.23.35.png" alt="Sencha" title="Sencha" width="125" height="45" class="alignleft size-full wp-image-282" /></p>
<p>L&#8217;une des caractéristiques qui fait la force de Flash est la simplicité avec laquelle on peut créer très rapidement des animations avec l&#8217;IDE composé d&#8217;une scène et d&#8217;une timeline. Aujourd&#8217;hui, il est possible de réaliser la même chose très simplement pour une animation CSS 3 et HTML 5, avec l&#8217;outil Sencha Animation</p>
<p><span id="more-281"></span></p>
<h3>Un outil simple et efficace</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/10/hero-300x231.png" alt="Sencha Animator" title="Sencha Animator" width="300" height="231" class="alignnone size-medium wp-image-283" /></p>
<p>Le but de cet outil est de proposer une interface simple et intuitive pour construire des animations HTML 5 et CSS 3 capables de rivaliser avec des animations Flash. On dispose donc d&#8217;une scène et d&#8217;une timeline et on va pouvoir construire notre animation en ajoutant simplement des objets sur notre scène et en les animant en utilisant la timeline.</p>
<p>Vous pouvez dors et déjà télécharger cet outil sur le site de Sencha Animator : <a href='http://www.sencha.com/products/animator/' title='Sencha Animator - Animations CSS 3 HTML 5' target='_blank'>sencha.com</a></p>
<h3>Une expérimentation rapide</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/10/20101025-timeline-150x150.jpg" alt="Timeline" title="Timeline" width="150" height="150" class="alignleft size-thumbnail wp-image-284" /></p>
<p>L&#8217;interface est très claire et le logiciel propose d&#8217;entrée un tutoriel bien conçue sous la forme d&#8217;une petite animation qui nous montre l&#8217;essentiel à connaitre pour démarrer. Nul doute que les habitués de Flash s&#8217;approprieront très rapidement l&#8217;outil</p>
<p>Pour ma part, en guise de découverte j&#8217;ai réalisé une animation très simple avec juste un rectangle et une zone de texte qui se déplacent. La découverte, la prise en main du logiciel et la création de l&#8217;animation n&#8217;a pris en tout que 5 minutes, ce qui montre bien la simplicité du logiciel. Vous pouvez voir cette animation <a href='http://blog.benoitletondor.com/wp-content/uploads/2010/10/sencha.html' title='Sencha animation CSS 3 HTML 5' target='_blank'>ici</a></p>
<p>Il ne vous reste plus qu&#8217;à vous lancer et à essayer cet outil très prometteur.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/10/27/creer-des-animations-html-5-css-3-sencha-animator/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Développer pour iPhone : De ActionScript 3 à Objective C</title>
		<link>http://blog.benoitletondor.com/2010/10/07/developper-pour-iphone-de-actionscript-3-a-objective-c/</link>
		<comments>http://blog.benoitletondor.com/2010/10/07/developper-pour-iphone-de-actionscript-3-a-objective-c/#comments</comments>
		<pubDate>Thu, 07 Oct 2010 14:56:30 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[Formation]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[cours]]></category>
		<category><![CDATA[developement]]></category>
		<category><![CDATA[Objective-C]]></category>
		<category><![CDATA[PSM]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=274</guid>
		<description><![CDATA[Dans cet article, vous trouverez le support de cours ainsi que les exercices abordés lors du cours de découverte du développement iPhone. Ce cours est axé sur le passage de Flash à l&#8217;iPhone et permet à un développeur flash de produire des applications pour iPhone. Le support de cours : Découverte de l&#8217;environnement et de [...]]]></description>
			<content:encoded><![CDATA[<p>Dans cet article, vous trouverez le support de cours ainsi que les exercices abordés lors du cours de découverte du développement iPhone. Ce cours est axé sur le passage de Flash à l&#8217;iPhone et permet à un développeur flash de produire des applications pour iPhone.</p>
<p><span id="more-274"></span></p>
<h3>Le support de cours : Découverte de l&#8217;environnement et de l&#8217;objective C</h3>
<p><iframe src="http://docs.google.com/viewer?url=blog.benoitletondor.com%2Fwp-content%2Fuploads%2F2010%2F10%2FFlash2iOS_TD1.pdf&#038;embedded=true" width="600" height="480" style="border: none;"></iframe></p>
<p><a href='http://blog.benoitletondor.com/wp-content/uploads/2010/10/Flash2iOS_TD1.pdf' target='_blank'>Télécharger le PDF du cours</a></p>
<h3>Les exercices</h3>
<p>Exercice du HelloWorld avec les 2 boutons : <a href='blog.benoitletondor.com/wp-content/uploads/2010/10/HelloWorldPSM.zip' target='_blank'>Télécharger les sources</a></p>
<p>Exercice du TextInput : <a href='blog.benoitletondor.com/wp-content/uploads/2010/10/TextInput.zip' target='_blank'>Télécharger les sources</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/10/07/developper-pour-iphone-de-actionscript-3-a-objective-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comment débugger EXC_BAD_ACCESS sur iPhone-iPad ?</title>
		<link>http://blog.benoitletondor.com/2010/09/19/comment-debugger-exc_bad_access-sur-iphone-ipad/</link>
		<comments>http://blog.benoitletondor.com/2010/09/19/comment-debugger-exc_bad_access-sur-iphone-ipad/#comments</comments>
		<pubDate>Sun, 19 Sep 2010 15:33:25 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[erreur]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[EXC_BAD_ACCESS]]></category>
		<category><![CDATA[NSZombieEnabled]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=260</guid>
		<description><![CDATA[Dans cet article, la solution à un problème auquel beaucoup de développeurs iPhone / iPad / iPod se sont retrouvés confrontés : l&#8217;erreur EXC_BAD_ACCESS lors de l&#8217;execution d&#8217;un programme. Comment débugger cette erreur et réussir à en trouver la source ? Vous trouverez la réponse dans cet article. 1. Ajouter la variable d&#8217;environnement NSZombieEnabled L&#8217;erreur [...]]]></description>
			<content:encoded><![CDATA[<p>Dans cet article, la solution à un problème auquel beaucoup de développeurs iPhone / iPad / iPod se sont retrouvés confrontés : l&#8217;erreur EXC_BAD_ACCESS lors de l&#8217;execution d&#8217;un programme.</p>
<p>Comment débugger cette erreur et réussir à en trouver la source ? Vous trouverez la réponse dans cet article.</p>
<p><span id="more-260"></span></p>
<h3>1. Ajouter la variable d&#8217;environnement NSZombieEnabled</h3>
<p>L&#8217;erreur exc_bad_access est souvent due à un accès à une variable qui a déjà été supprimée et relachée. La variable d&#8217;environnement <strong>NSZombieEnabled</strong> permet de garder un traceur sur chaque variable relachée et renvoi une alerte lors de l&#8217;accès à l&#8217;une d&#8217;entre elle. Elle vous permettra donc de remonter à la source de l&#8217;erreur.</p>
<p>Pour ce faire, aller dans le menu &laquo;&nbsp;Project&nbsp;&raquo; dans Xcode et sélectionner &laquo;&nbsp;Edit active executable&nbsp;&raquo; :</p>
<a href="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.07.35.png"><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.07.35-260x300.png" alt="Edit active executable" title="Edit active executable" width="260" height="300" class="size-medium wp-image-261" /></a>
<p>Ensuite allez dans l&#8217;onglet &laquo;&nbsp;Arguments&nbsp;&raquo; puis ajoutez la variable <strong>NSZombieEnabled</strong> et donnez lui la valeur <strong>YES</strong>. N&#8217;oubliez pas de bien cocher cette variable afin qu&#8217;elle soit active :</p>
<div id="attachment_262" class="wp-caption alignnone" style="width: 310px"><a href="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.10.22.png"><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.10.22-300x224.png" alt="NSZombieEnabled" title="NSZombieEnabled" width="300" height="224" class="size-medium wp-image-262" /></a><p class="wp-caption-text">Arguments -> NSZombieEnabled : YES</p></div>
<h3>2. Voir la source d&#8217;une erreur</h3>
<p>Après s&#8217;être assuré d&#8217;être bien en <strong>mode Debug</strong>, vous pouvez lancer votre programme.<br />
Lors d&#8217;une erreur de type exc_bad_access, vous verrez un message comme celui-ci dans la console :</p>
<div id="attachment_267" class="wp-caption alignnone" style="width: 310px"><a href="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.23.47.png"><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.23.47-300x36.png" alt="NSZombieEnabled" title="NSZombieEnabled" width="300" height="36" class="size-medium wp-image-267" /></a><p class="wp-caption-text">NSZombieEnabled message</p></div>
<p>Puis allez dans le débugger pour récupérer la source de l&#8217;erreur : </p>
<div id="attachment_268" class="wp-caption alignnone" style="width: 310px"><a href="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.26.06.png"><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.26.06-300x299.png" alt="Debugger" title="Debugger" width="300" height="299" class="size-medium wp-image-268" /></a><p class="wp-caption-text">Voici le stack de l'erreur avec EXC_BAD_ACCESS</p></div>
<p>Les méthodes en noir sont les méthode de votre code, il vous suffit de cliquer sur la dernière pour avoir la source de l&#8217;erreur : </p>
<div id="attachment_269" class="wp-caption alignnone" style="width: 310px"><a href="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.26.29.png"><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Capture-d’écran-2010-09-19-à-17.26.29-300x259.png" alt="Stack erreur" title="Stack erreur" width="300" height="259" class="size-medium wp-image-269" /></a><p class="wp-caption-text">Stack d'erreur avec NSZombieEnabled</p></div>
<p>Voilà, vous pouvez voir d&#8217;où vient votre erreur et donc la corriger facilement. Une fois fini, n&#8217;oubliez pas de décocher la variable NSZombieEnabled car elle ne vous sert plus à rien. Pas besoin de la supprimer, juste de la décocher.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/09/19/comment-debugger-exc_bad_access-sur-iphone-ipad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5 vs Flash sur l&#8217;iPhone 4 : Test comparatif</title>
		<link>http://blog.benoitletondor.com/2010/09/19/html-5-vs-flash-sur-liphone-4-test-comparatif/</link>
		<comments>http://blog.benoitletondor.com/2010/09/19/html-5-vs-flash-sur-liphone-4-test-comparatif/#comments</comments>
		<pubDate>Sun, 19 Sep 2010 13:03:16 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[HTML / CSS]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Frash]]></category>
		<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[iPad]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=250</guid>
		<description><![CDATA[Suite à l&#8217;article de BlackCj sur son blog, j&#8217;ai décidé de faire un test alternatif de performance sur mon iPhone 4. Est-ce qu&#8217;une animation HTML 5 est plus rapide qu&#8217;une animation Flash sur l&#8217;iPhone (en utilisant le plugin Frash de @comex) ? La réponse dans cet article ! HTML 5 Pour la première partie de [...]]]></description>
			<content:encoded><![CDATA[<p>Suite à l&#8217;<a href='http://www.blackcj.com/blog/2010/09/17/flash-outperforms-html5-on-mobile-devices/' target='_blank'>article de BlackCj sur son blog</a>, j&#8217;ai décidé de faire un test alternatif de performance sur mon iPhone 4. Est-ce qu&#8217;une animation HTML 5 est plus rapide qu&#8217;une animation Flash sur l&#8217;iPhone (en utilisant le plugin Frash de @comex) ?</p>
<p>La réponse dans cet article !</p>
<p><span id="more-250"></span></p>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/HTML5-vs-Flash-300x180.jpg" alt="html 5 vs flash" title="HTML5-vs-Flash" width="300" height="180" class="alignnone size-medium wp-image-254" /></p>
<h3>HTML 5</h3>
<p>Pour la première partie de mon test j&#8217;ai donc décidé de tester l&#8217;animation de BlackCj sur mon iPhone 4, afin d&#8217;avoir un point de comparaison avec Flash sur le même iPhone, voici le résultat :</p>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/GNy1Q39wXRI?fs=1&amp;hl=fr_FR"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/GNy1Q39wXRI?fs=1&amp;hl=fr_FR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<p><a href='http://www.youtube.com/watch?v=GNy1Q39wXRI' target='_blank'>http://www.youtube.com/watch?v=GNy1Q39wXRI</a></p>
<p><strong>Le résultat :</strong> L&#8217;animation tourne à environ <strong>13 images par seconde</strong>. Globalement l&#8217;animation est très peu fluide et on voit nettement les saccades.</p>
<h3>Flash</h3>
<p>En utilisant le plugin Frash disponible grâce à <a href='http://twitter.com/comex' target='_blank'>@comex</a> qui permet de lire les animations flash sur iPhone et iPad, j&#8217;ai lancé le test de BlackCj, voici le résultat :</p>
<p><object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/d-I7PCiWdEk?fs=1&amp;hl=fr_FR"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/d-I7PCiWdEk?fs=1&amp;hl=fr_FR" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object></p>
<p><a href='http://www.youtube.com/watch?v=d-I7PCiWdEk' target='_blank'>http://www.youtube.com/watch?v=d-I7PCiWdEk</a></p>
<p><strong>Le résultat :</strong> L&#8217;animation affiche une convaincante vitesse moyenne de <strong>30 images par seconde</strong> ce qui est bien meilleur que l&#8217;animation en HTML 5 canvas. Le résultat est très fluide.</p>
<h3>Bilan</h3>
<p>Malgré les efforts de Steve Jobs pour lancer l&#8217;HTML 5 sur l&#8217;iPhone et iPad, on voit encore clairement que Flash est bien plus optimisé et bien plus performant (même la version non officielle de @comex). Les animations HTML 5 canvas ne sont pas prise en charge par le GPU et elles souffrent de performances très faibles. Apple a donc encore du travail à faire sur son iOS</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/09/19/html-5-vs-flash-sur-liphone-4-test-comparatif/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOS contre Android : Le match !</title>
		<link>http://blog.benoitletondor.com/2010/09/18/ios-contre-android-le-match/</link>
		<comments>http://blog.benoitletondor.com/2010/09/18/ios-contre-android-le-match/#comments</comments>
		<pubDate>Sat, 18 Sep 2010 10:53:29 +0000</pubDate>
		<dc:creator>Benoit Letondor</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Developpement mobile]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iOS]]></category>

		<guid isPermaLink="false">http://blog.benoitletondor.com/?p=213</guid>
		<description><![CDATA[Dans le monde du mobile et plus particulièrement du smartphone, 3 entreprises tirent particulièrement leur épingle du jeu : Apple avec son iPhone (iOS), Google et son OS Android, et RIM avec le BlackBerry. Dans cet article, je vais m&#8217;intéressé particulièrement à Android et l&#8217;iOS d&#8217;Apple, afin de tenter de comprendre pourquoi l&#8217;iPhone reste largement [...]]]></description>
			<content:encoded><![CDATA[<p>Dans le monde du mobile et plus particulièrement du smartphone, 3 entreprises tirent particulièrement leur épingle du jeu : Apple avec son iPhone (iOS), Google et son OS Android, et RIM avec le BlackBerry.</p>
<p>Dans cet article, je vais m&#8217;intéressé particulièrement à Android et l&#8217;iOS d&#8217;Apple, afin de tenter de comprendre pourquoi l&#8217;iPhone reste largement devant les autres et pourquoi il a du soucis à se faire.</p>
<p><span id="more-213"></span></p>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/iphone-vs-android.jpg" alt="iPhone vs Android" title="iphone-vs-android" width="401" height="350" class="alignnone size-full wp-image-231" /></p>
<h3>L&#8217;interface utilisateur</h3>
<p>Sur ce point, c&#8217;est Apple qui a proposé en premier des innovations, en effet, le lancement du premier iPhone a été une révolution planétaire dans le monde du smartphone avec une interface et une facilité d&#8217;utilisation qui a bluffé l&#8217;ensemble des utilisateurs. Mais qu&#8217;en est-il aujourd&#8217;hui ?</p>
<p>En effet, depuis, Google a beaucoup progressé et Android en est maintenant à sa version 2.2. Cependant, même si Android reste agréable à utiliser, je trouve que l&#8217;interface manque d&#8217;intuitivité. Mettons nous dans la peau d&#8217;un utilisateur novice, comprendre le fonctionnement d&#8217;un iPhone ne lui prendra pas plus de 5 minutes, en revanche pour Android l&#8217;affaire se complique.</p>
<p>Tout d&#8217;abord dans le choix des couleurs, globalement l&#8217;iPhone propose des couleurs lumineuse qui font ressortir les contrastes, ce qui n&#8217;est pas du tout le cas d&#8217;Android. Les icones sont plus petits et moins colorés, de même le menu principal est très désordonné et on s&#8217;y perd très facilement.<br />
La où l&#8217;écart se creuse encore plus c&#8217;est lorsque l&#8217;on se trouve dans un menu tableau comme dans les réglages du téléphone. Lorsque l&#8217;iPhone sépare les différentes options en catégories et les présentent de manière synthétique, Android se contente d&#8217;une liste sur fond noir de tous les sous menu. Globalement l&#8217;interface d&#8217;Android demande encore beaucoup de travail pour pouvoir rivaliser avec son rival à la Pomme.</p>
<h3>AppStore versus Android Market</h3>
<p>Lorsque qu&#8217;Android a fait son apparition, tous les pro-iPhone ont parlés de l&#8217;AppStore comme de la principale force de l&#8217;iPhone du fait de ses nombreuses applications et développeurs. Mais maintenant qu&#8217;Android propose l&#8217;Android Market, la donne a changé puisque les développeurs ont le choix.</p>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/17-htc-hero-iphone-3gs-300x225.jpg" alt="Android Market vs AppStore" title="Android Market vs AppStore" width="300" height="225" class="alignnone size-medium wp-image-235" /></p>
<p><b>La force de l&#8217;Android Market : La liberté des développeurs</b><br />
En effet, face à l&#8217;AppStore d&#8217;Apple, la principale force d&#8217;Android est de proposer un marché d&#8217;applications totalement libre et ouvert. Les développeurs sont libres d&#8217;utiliser les librairies, api, outils qui leurs plaisent pour créer leurs applications sans aucune restriction.</p>
<p>Mais au final, que trouve t&#8217;on de plus sur l&#8217;Android Market que sur l&#8217;AppStore : Tout d&#8217;abords des applications qui influent sur le fonctionnement du téléphone (sur l&#8217;iPhone, une application a sa sand-box de laquelle elle ne peut pas sortir), des widgets (Steve si tu lis cet article, pense-y pour l&#8217;iPhone 5), et du porno ! <br />La liberté accordée au développeurs se traduit donc par des applications plus &laquo;&nbsp;puissantes&nbsp;&raquo; mais pas plus nombreuses ni de meilleure qualité.</p>
<p><b>L&#8217;AppStore : La qualité plutôt que la quantité :</b></br><br />
Apple a toujours souhaité mettre en avant la qualité de ses produits et l&#8217;appStore n&#8217;échappe pas à la règle. Apple vérifie chaque application avant de la mettre sur l&#8217;AppStore et les règles sont plutot strictes : Interdiction du porno, controle du contenu, interdiction des versions béta, interdiction des api externes etc&#8230;<br />
Mais au final, lorsque l&#8217;on regarde le contenu de l&#8217;AppStore, on y trouve un plus d&#8217;applications de qualité que sur Android, et beaucoup plus d&#8217;applications tout court. En effet, Apple a su conserver ses développeurs depuis le début et propose donc toujours un marché d&#8217;application très dynamique.</p>
<p><b>Et l&#8217;interface utilisateur ?</b><br />
Si il y a une chose qui fait la force de l&#8217;AppStore face à l&#8217;Android Market, c&#8217;est bien son interface. En effet, face au Market de Google qui présente les applications en seulement 5 catégories globales et qui laisse l&#8217;utilisateur se retrouver au beau milieu de tout ça, Apple propose une sélection de nouveautés de qualité, de nombreuses catégories et sous-catégories et un top 50 des applications gratuites/payantes.<br />
Encore une fois, l&#8217;iPhone propose une interface bien plus &laquo;&nbsp;user-friendly&nbsp;&raquo; qu&#8217;Android et c&#8217;est encore une fois la principale force d&#8217;Apple : l&#8217;ergonomie</p>
<h3 style='margin-bottom:30px;'>Les outils de développement : Eclipse VS Xcode</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/xcode.jpg" alt="App" title="App" width="150" height="150" class="alignleft size-full wp-image-239" /></a>
<p><b>Eclipse : Le paradis du développeur ?</b><br<br />
Oui ! Sans aucun doute Eclipse est fait pour les développeurs, mais dans le cadre d'une application mobile où l'on aime soigner l'interface et l'ergonomie, il est bien souvent plus difficile qu'avec un outil graphique de produire une interface facilement pour son application Android.<br />
Ceci étant dit, le SDK d&#8217;Android s&#8217;installe très facilement sur Mac / PC / Linux et permet avec un simple plugin Eclipse de programmer très facilement et très rapidement. Google propose donc un bon outil de développement très accessible, mais qui ne plaira pas forcément aux graphistes.</p>
<p></p>
<p><b>Xcode, le Mac pour le Mac</b><br />
Apple propose lui aussi une gamme d&#8217;outil pour développer pour l&#8217;iPhone, ces outils sont les suivants : Xcode pour le code, Interface Builder pour l&#8217;interface graphique et le Simulateur iPhone pour tester votre applications. Ces outils sont, comme ceux de Google, gratuits.<br />
La où Apple fait fort, c&#8217;est qu&#8217;il a su réutiliser les outils pour développer pour Mac OS pour l&#8217;iPhone, on a donc un panel d&#8217;applications très bien pensés, et très bien rodés qui sont a la fois très pratique pour coder, et qui propose également un outil spécial pour créer son interface graphique, idéal pour satisfaire graphistes et développeurs. Notons également que la documentation et les examples de codes sont très fournis et très complets.<br />
Cependant, tout n&#8217;est pas parfait puisque ces outils ne sont disponibles que sur Mac, il vous faut donc une machine Apple pour produire une application pour l&#8217;iPhone.</p>
<h3>Un seul terminal contre des centaines</h3>
<p>Un dernier point important à souligner est le fait que l&#8217;iPhone est fait par Apple et pour Apple. L&#8217;OS est donc optimisé et les mise à jours sont régulières. Apple a toujours adopté cette philosophie, c&#8217;est la raison pour laquelle ils fabriquent eux même tout leurs ordinateurs et périphériques.<br />
En revanche, un des problèmes (mais aussi une des forces) d&#8217;Android est le fait que plusieurs marques fabriquent des téléphones fonctionnant sous Android et certains ne possèdent pas toutes les fonctionnalités du système. De même, les mise à jours doivent être adaptées par les constructeurs pour leurs mobiles et c&#8217;est souvent très long, voir même impossible des fois (ex : le HTC Hero qui ne verra jamais Android Froyo 2.2).</p>
<h3>Récapitulatif</h3>
<p><img src="http://blog.benoitletondor.com/wp-content/uploads/2010/09/Android-Vs-iPhone-Any-Winners.jpg" alt="Android Vs iPhone" title="Android-Vs-iPhone" width="300" height="300" class="alignnone size-full wp-image-232" /></p>
<p>Afin de synthétiser l&#8217;ensemble, voici un petit tableau récapitulatif des avantages et problèmes de chacun :</p>
<style>
td{
padding:5px;
}
</style>
<table border='1'>
<tr>
<td></td>
<td><center><strong>iOS</strong></center></td>
<td><center><strong>Android</strong></center></td>
</tr>
<tr>
<td><strong>Télephones</strong></td>
<td>Fabriqués par Apple, mises à jours régulières et adaptés au support</td>
<td>Nombreux fabriquants, mise à jours difficiles à mettre en place</td>
</tr>
<tr>
<td><strong>Interface</strong></td>
<td>Très ergonomique, orienté utilisateur, personnalisation limité</td>
<td>Complète et très personnalisable, parfois peu ergonomique et mal adapté</td>
</tr>
<tr>
<td><strong>Store et applications</strong></td>
<td>AppStore très dynamique, très ergonomique et très pratique. Beaucoup de choix et bien souvent une grande qualité d&#8217;application</td>
<td>Android Market dynamique mais peu pratique et ergonomique pour l&#8217;utilisateur final. Beaucoup d&#8217;applications et de moyens de personnaliser son téléphone. </td>
</tr>
<tr>
<td><strong>Développement</strong></td>
<td>SDK gratuit mais les applications sont limités dans leurs possibilités. Apple décide de la validation ou non de l&#8217;application et la liberté est donc faible. Le SDK est très complet et permet de créer facilement une interface graphique.</td>
<td>SDK gratuit et qui permet d&#8217;accéder à l&#8217;ensemble des fonctions du téléphone. Grande liberté d&#8217;action pour le développeur. Le SDK est un plugin Eclipse qui ne permet donc pas de créer facilement une interface graphique</td>
</tr>
<tr>
<td><strong>Bilan</strong></td>
<td>Très orienté utilisateur et ergonomie. Système fermé, ce qui est un inconvénient pour les développeur mais un plus en terme de qualité pour les utilisateurs</td>
<td>Manque encore un peu d&#8217;ergonomie, donne une grande liberté d&#8217;action et permet une personnalisation importante. Idéal pour un développeur, moins pour un utilisateur novice.</td>
</tr>
</table>
<p>Vous l&#8217;aurez compris, selon moi, Apple a encore de nombreux atouts face à Google, même si Android rattrape de plus en plus son retard et propose beaucoup de fonctionnalités exclusives. Apple joue la carte de la qualité pour l&#8217;utilisateur final et reste fidèle à ses convictions : proposer le meilleur produit possible pour l&#8217;utilisateur, ce qui reste pour le moment, un choix payant. Cependant, Android va prendre de plus en plus de parts de marché et nul doute que la marque à la pomme a du soucis a se faire.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benoitletondor.com/2010/09/18/ios-contre-android-le-match/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

