86

Créer une applicationmeslivres.site/LIVREF/F28/F028042.pdf · Rendez-vous sur le menu d’Android Studio puis cliquez sur New Project. Une fenêtre s’ouvre, choisissez un nom pour

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

CréeruneapplicationANDROID

LesprincipalesfonctionsutilesLamonétisationLapromotion

DylanTEIXEIRA

TabledesmatièresINTRODUCTION

LESBASES

ANDROID?KÉSAKO?

COMMENTFONCTIONNEUNEAPPLICATIONANDROID?

APPRENDREÀUTILISERANDROIDSTUDIO

L’INSTALLATION

L’INTERFACE&L’UTILISATION

LACOMPILATION

DÉBUTERENPROGRAMMATIONJAVA

NOTREPREMIÈREAPPLICATION

QUELQUESEXEMPLES…

CRÉERUNEAPPLICATIONCALCULATRICE

CRÉATIONDESBOUTONS

CALCULDESOPÉRATIONS

ETUDIONSQUELQUESFONCTIONSUTILES

RETIRERL’ACTIONBARDENOTREAPPLICATION

CRÉERUNEWEB-APPLICATION

DÉBOGAGEDIRECTEMENTSURUNTÉLÉPHONE

RENDRESONAPPLICATIONDISPONIBLEENPLUSIEURSLANGUES

UTILISONSLESFONCTIONSPHYSIQUESDUTÉLÉPHONE

UTILISATIONDESTOUCHESPHYSIQUESDUTÉLÉPHONE(VOLUMEHAUT&BAS,RETOURETTACTILE)

LEVIBREUR

LEFLASH

LEGPS

LESANIMATIONSSOUSANDROID

AFFICHERDESIMAGESGIFDANSUNEACTIVITÉ

PASSERUNEVARIABLED’UNEACTIVITÉÀUNEAUTRE

SAUVEGARDERDESVARIABLESDEVOTREAPPLICATION

UTILISERUNEPOLICEDETEXTEPERSONNALISÉE

PUBLIERMONAPPLICATIONSURLESTORE

PUBLIERUNENOUVELLEAPPLICATION

ENVOYERUNENOUVELLEVERSIONDEMONAPPLICATION

COMMENTMONÉTISERSONAPPLICATION?

LESAPPLICATIONSTOTALEMENTGRATUITES

LESAPPLICATIONSFREEMIUMS

LESAPPLICATIONSPAYMIUMS

LESAPPLICATIONSPAYANTES

LAPUBLICITÉADMOB

CRÉATIONDENOTREBANNIÈRE

CRÉATIOND’UNEPUBLICITÉINTERSTITIELLE

COMMENTPROMOUVOIRSONAPPLICATIONANDROID?

POURQUOIPROMOUVOIRSONAPPLICATION?

CIBLERLEBONPUBLIC

PROPOSERPREMIÈREMENTSONAPPLICATIONÀUNPUBLICTEST

ENCOURAGERLESUTILISATEURSDEVOTREAPPLICATIONÀLAISSERUNAVIS

PRENDREENCOMPTELESAVISDESUTILISATEURS!

ORGANISERUNECAMPAGNEDEPUBLICITÉ

PRÉSENTERVOTREAPPLICATIONSURDESPLATEFORMESADAPTÉES

LESYSTÈMEDEPARRAINAGEETL’ORGANISATIONDEJEUXCONCOURS

OPTIMISERLESTEXTESDESPAGESDEPRÉSENTATIONDESONAPPLICATION

L’APPROCHESEO

L’APPROCHECOPYWRITING

RÉALISEZUNTESTDEVOTREAPPLICATION

LESDERNIERSMOTS…

INTRODUCTION

LeGooglePlayStoreestlaplateformeoùnouspublieronsnotreapplication,ilvouspermettraderendrevotreapplicationàlaportéedeplusd’unmilliarddesmartphonesdanslemondeentier.

En 2013, le Play Store a généré plus de 2 milliards de dollars de revenus.Pourquoi ne pas rejoindre la partie ? Ce guide simple et illustré vousexpliquera les démarches à suivre, de début à la fin, c’est-à-dire dutéléchargementdel’AndroidStudioàlapublicationdevotreapplication.

Ce livre enrichi vous apprend la base nécessaire à la création de touteapplication,mais n’oubliez pas qu’Android est enperpétuelle évolution, desnouveautés s’ajoutent à la liste tandis que certaines fonctions deviennentuseless.N’oubliezpaslaveilletechnologique,soyeztoujoursàjour.

Danscetteversionenrichienousallonsapprendredesfonctionpluspoussées,del’usagedesfonctionsphysiquesdutéléphoneauxanimations…

Cette version enrichie de notre livre contient également deux chapitrescouvrantlamajoritédesmoyensdemonétisationetdepromotiondevotreapplicationAndroid.Bonnelecture!

LesbasesAndroid?Késako?

Qu’est-ce qu’Android ? – cette question est inévitable. La réponse elle, est trèsintéressante. Tout d’abord Android est un système d’exploitation, il est présent sur lamajorité des smartphones aumonde. En effet,Android est le numéro 1 avec environ80%des smartphones aumonde équipé avec ce système ! Cela ne vous donne pasenviedeconcevoirvospropresapplications?

Android est un système d’exploitation open source basé sur Linux. Il fut créé par unestartuprachetéeen2005parGoogle.

Au commencement il était destiné aux smartphones, mais fût étendu à la technologieembarquée. On peut doncmaintenant voir des télévisions Android, des autoradios, desmontres,desvoitures…

Vousconnaissezsûrementcelogo,c’estBUGDROID,lelogod’Android.

Android comporte une machine virtuelle nommée Dalvik qui permet à l’utilisateurd’exécuterdesprogrammesdestinésà laplateformeJAVA.C’estd’ailleurs leJAVAquenousallonsapprendrepourdéveloppernosapplications.SivousconnaissezdéjàleJAVA,tantmieux!Sinonjevousconseilledecommenceràapprendrequelquesbases,histoired’êtreàl’aisepourlasuite.

CréeruneapplicationAndroidn’estpasuneminceaffairesil’onn’apasdeconnaissancesni demode d’emploi.Dans ce livre nous apprendrons à comprendre le fonctionnementd’uneapplicationAndroid,àlacréer,àlarentabiliseretàlapubliersurleGooglePlayStore.

CommentfonctionneuneapplicationAndroid?

Nousallonstoutdesuiteposerlesbases

Notrefutureapplicationestconstituéedeplusieursactivités,reliéeslesunesauxautres.

Uneactivité,c’estunedes«fenêtres»d’uneapplication.

Nousallons,commecelle-ci,lescréeruneàune.

ChaqueactivitécontientunfichierJAVAetunfichierXML(auminimum). Par défaut la première activité s’appelleMainActivity.java,etsoninterfacegraphiquelayout_main.xml.

Ils servent respectivement au code JAVA et à l’interfacegraphique, et sont bien-sûr reliés. Par exemple lorsque nouscréerons notre activité, nous placerons les éléments graphiques(texte, image, formulaires…) dans le fichier XML, et nous yaccéderonsdanslefichierJAVAenlesdéclarants.

Lesactivitéspeuventavoirplusieursétats.

L’état«active»,çasignifiequ’elleestenpremierplan.L’état«suspendue»,çasignifiequ’elleestouverte,maisqu’unefenêtréobstruepartiellementlavuedecelle-ci.L’état « arrêtée », ça signifie qu’elle est fermée, elle peut être visible dans legestionnairedestâches.

ApprendreàutiliserAndroidStudioL’installation

Nousallonsavoirbesoindeplusieurschoses:

LeJavaDéveloppementKitAndroidStudioEventuellementunsmartphoneAndroid

Pour commencer, rendez-vous à cette adresse :http://www.oracle.com/technetwork/java/javase/downloads/index.html

TéléchargezleJDK(JAVADéveloppementKit),ilestnécessaireaubonfonctionnementd’AndroidStudio.

TéléchargezetinstallezAndroidstudio:https://developer.android.com/sdk/index.html

Après l’installation, rendez-vous sur le SDK Manager (Accueil d’Android Studio >Configure>SDKManager)etinstallezlesdifférentesversionsd’Android.

Letéléchargementetl’installationsonttrèslongsetpeuventdurerplusieursheures!

L’interface&l’utilisationLacréationdemapremièreapplication…

Rendez-vous sur le menu d’Android Studio puis cliquez surNew Project.Une fenêtres’ouvre,choisissezunnompourvotreprojet,puisun«CompanyDomain»,vousdevezleformercommeuneURL,voiciunexemple:monnom.monentreprise.fr,celaformeraaveclenomdevotreapplication,lenomdupackagedevotreapplication.

Cliquez sur suivant, vous pourrez choisir la version minimum nécessaire au terminalutilisant votre application. Vous pourrez également le rendre disponible sur les TVcompatiblesAndroidetlesSmartwatch.

Cliquezunenouvelle fois sur suivant, cette étapevouspermet de sélectionner l’activitéprincipaledevotreapplication,oudenepasenmettre.Pourdébuternousallonschoisir«BlankActivity»,c’estuneactivitévierge.

Suivant.Vouspouvezchoisirlenomdevotreactivitéprincipale,ainsiquesonlayout(lefameuxfichierXML),pourl’instantnemodifiezrien.

CliquezsurFinish,votrepremièreapplicationestcréée!

Voicil’interfacegraphique(lelayout)delapaged’accueildevotreapplication.

Laflèchevertevouspermetdecompilervotreapplicationetdeladémarrerendébogage.

Voici la hiérarchie de votre projet, vous pourrez chercher ici certains fichiers. Les

ressourcessontdansledossier«res»,contenant les layout,lesdrawables(lesimagesdevotreprojet)…

Voici la fenêtreprincipale,icielleaffiche l’interfacegraphique devotre activité,vous pouvezaccéder au codede celui-ci via lebouton«text»en

basàgauche.

Celapeutêtretrèsutilepourmodifiervialecodeetdoncplusprécisémentvotrelayout.

Cette partie affiche les propriétés de l’élément que voussélectionnez, vous pouvez essayer en sélectionnant le texte« hello world » vous pouvez modifier sa taille (entrez unevariabledanslechamp«size»).

Voici la listede tous les élémentsquevouspouvezplacerdansvotre layout, vous avezsimplementàcliquersurunélémentetàleglisserdanslafenêtre.

Placez-leoùvousvoulezdansvotrelayout.

Commentçamarche?

Vous pouvez apercevoir danslafenêtre«ComponentTree»les éléments présents dansvotrelayout.

Nous pouvons donc voir quel’élément « RelativeLayout »contient le texte « HelloWorld».

«RelativeLayout»estdonc…votrelayout!Ilprendtoutelaplace de l’ecran et permet de

placer vos éléments comme vous le souhaitez. Vous pouvez leremplacerparunautretype,commeleLinearLayout.Vosélémentsneseplacerontpasdelamêmefaçon,àvousdetester.

OuvrezlefichierJAVAMainActivity.java

C’esticiquevousmodifierezlapartie«fonctionnelle»devotreapplication.

Vousobtiendrezdonc lecodeJAVAqui formevotreactivité. Jevaistoutvousexpliquer.

packagefr.badapps.myapplication;

importandroid.support.v7.app.ActionBarActivity;importandroid.os.Bundle;

importandroid.view.Menu;

importandroid.view.MenuItem;

publicclassMainActivityextendsActionBarActivity{

@Override

protectedvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

}

@Override

publicbooleanonCreateOptionsMenu(Menumenu){

//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.

getMenuInflater().inflate(R.menu.menu_main,menu);

returntrue;

}

@Override

publicbooleanonOptionsItemSelected(MenuItemitem){

//Handleactionbaritemclickshere.Theactionbarwill

//automaticallyhandleclicksontheHome/Upbutton,solong

//asyouspecifyaparentactivityinAndroidManifest.xml.

intid=item.getItemId();

//noinspectionSimplifiableIfStatement

if(id==R.id.action_settings){

returntrue;

}

returnsuper.onOptionsItemSelected(item);

}

}

Lacompilation

Nousallonscréeruntelephonevirtuelquivas’executersurnotreordinateur,pourpouvoirdirectementtesternotreapplication.

Démarrerl’AVD(AndroidVirtualDevice)puiscliquezsur«Createvirtualdevice»,vouspouvezicichoisirlemodèledetéléphonequevousallezcréerpuissaversiond’Android.Jevousconseilledemettreladernièreversiondisponible.

UnefoislechargementeffectuéetvotreAVDcréé,appuyezsurleboutonpourcompiler(laflècheverte).AprèslacompilationunelistedesTerminauxdisponibles’affichera,vousavezqu’àchoisirlevôtrepuisàlancerleprogramme.

/!\L’AVDmetbeaucoup(vraimentbeaucoup)detempsàdémarrer,vousn’avezpasbesoindelefermerentrechaqueessai,laissezleouvertpourgagnerdutemps/!\

Je vous montrerai plus tard comment démarrer l’application en mode débogagedirectement depuis votre téléphone relié en USB ; cette technique permet de gagnerconsidérablementdutemps.

Votre«HelloWorld»s’afficherasurleterminalvirtuel.

DébuterenprogrammationJAVANotrepremièreapplicationCommepremièreapplication,nouschercheronssimplementàafficherunformulairequivousdemandevotreprénom,puisàl’afficher!

Nous allons d’abord commencer par créer l’interface graphique. Rendez-vous dans lefichierlayout_main.xml.

Nousallonscentrernotre«HelloWorld»,puisrajouterunchampdetexteendessous.

N’hésitezpasàétirervotrechampdetextedegaucheàdroitedel’écran.

Doublecliquezsurcechamp.Unefenêtreapparaîtavecl’IDdecelui-ciet le textequ’ilcontient.L’IDseratrèsimportantecarellepermettraderécupérerlavaleurqu’ilcontientdepuislescript.

Nous allons également placer unboutondessous le champpour permettre de valider leformulaire.Glissezun«button»depuis leswidgets.Double cliquez également dessus.Vouspouvezmodifierletextequ’ilcontient,moij’aimis«Valider».

AllonsmaintenantdanslefichierMainActivity.java.

Nousallonscommencerpardéclarernotretexte,notrechampetnotrebouton:Buttonvalider;

TextViewMontexte;

EditTextChamp;

Pourquoiilss’affichentenrouge?Toutsimplementparcequelesclassescorrespondantàcesélémentsnesontpasencoreimportées.

Ilvadoncfalloirimporterlesclassespources3éléments:

importandroid.widget.Button;

importandroid.widget.EditText;

importandroid.widget.TextView;

ASTUCE:Pourimporterautomatiquementlesclassespourchaqueélément,sélectionnezl’élément(parexemple,cliquezsur«button»)puisfaiteslacombinaisonALT+ENTREEetlaclasseseraautomatiquementimportée.

Nousallonsmaintenant«relier»lesélémentsquenousavonscréésdansnotrelayoutàceuxquenousavonsdéfinisdanslescript:

Montexte=(TextView)findViewById(R.id.ENTREZICIL’IDDEVOTRETEXTE);

valider=(Button)findViewById(R.id.ENTREZICIL’IDDEVOTREBOUTON);

Champ=(EditText)findViewById(R.id.ENTREZICIL’IDDEVOTRECHAMP);

Voicicequeçadevraitdonner,jevousexpliquemaintenant.NousavonsdéfiniMontexte,valider et Champ, il fautmaintenant les assigner à ceux de votre layout, pour pouvoireffectueruneactionlorsquel’utilisateurinteragitavecl’interfacegraphique.

Nousallonsrajouterunelignesousladéclarationdubouton:valider.setOnClickListener(this);

C’esttoutsimplementpourlerendrecliquable.

Nousallonsmaintenantcréervotreinteraction.RetournezdanslelayoutetmodifiezvotreHelloWorldpar«Entrezvotreprénom».Retournezdanslescript,ilvamaintenantfalloirrentrenotreboutonutilisable.

Pourréagirlorsquel’utilisateurappuiesurlebouton,nousallonsgérerunévènement,unlistener.VousallezrajouterdansladéclarationdelaclasseimplementsView.OnClickListenerpourdonnercela:

publicclassMainActivityextendsActionBarActivityimplementsView.OnClickListener{

Vousaurezuntraitrougedessous,c’estnormal.Maintenantrajouterlafonctionquigèreleclickàlafindevotrescript,avantladernièreaccolade:

@OverridepublicvoidonClick(Viewv){

}

C’estdanscettefonctionquenousgéreronsl’évènementduclicksurlebouton.Ajoutezuneconditiondanscettefonction:

Qu’est-cequenousvoulonslorsduclick?Lebutestderécupérerlavaleurduchampetdel’afficheràlaplacedutexteau-dessus.

Nous allons créer dans notre condition une variable de type String (une chaîne decaractère).Danslaquellenousmettronslecontenuduchamp:StringTexteChamp=Champ.getText().toString();

Etnousl’afficheronsàlaplacedutexte:

Montexte.setText(“Tonnomest”+TexteChamp+”!”);

Voicilecodecompletainsiquelerésultat.

C’estsûr,votreapplicationn’estpourlemomentpastrèsjoliemaisutile,maissachez qu’il existe de nombreuses possibilités pour l’embellir, et ce sansdevoirdépenserdesheuresdetempsenprogrammationouendesign!

Quelquesexemples…Tout d’abord, si vous voulez quelques exemples, vous pouvez vous aider de ceux deGoogle.IlsregroupentunegrandepartiedespossibilitéssurAndroid.

Essayez-en quelques-uns pour vous faire la main, on ne progresse qu’en s’exerçant !Sachez tout demême, que la plupart de ces exemples est compliquée à comprendre enayantpeudeconnaissances,maisn’hésitezsurtoutpasàentesterquelques-unspourvousperfectionner!

Lesimages

Voiciunepetiteintroductionauximages.

Toutd’abordnousallonsajouteruneimageauprojet,choisissezuneimagesurvotrePCetcopiez-lapuiscollezlàdansledossier«drawable».

Nousallonsmaintenantpouvoirl’afficherdansnotrelayout.Glissezune«ImageView»dansvotrelayoutpuisdoublecliquezdessus.Dans«src»,sélectionnezl’imagequevousvenezd’ajouter,normalementelledevraitêtreverslebasdelaliste.

Ensuite allez dans les propriétés de l’ImageView puis cochez la case « Ajust ViewBounds»,celapermetderetirerlesmargescrééesparAndroidStudio,etainsivousaideràmieuxplacervotreimage.

Nous allons maintenant voir comment la changer via le script, ajoutez une deuxièmeimagedansledossierdrawable.

Nousallonstoutd’aborddéfinirnotreimage:

ImageViewMonImage;

Puisnousallonsrelierl’imagedulayoutànotrescript:

MonImage=(ImageView)findViewById(R.id.ID_DE_MON_IMAGE);

Puisenfinnousallonsmodifierl’imagelorsquel’utilisateurcliquesurleboutonvalider:

MonImage.setImageResource(R.drawable.Image2);

«Image2»représentelenomdel’imagequevousavezrajoutédansledossierdrawable,sanslaracine.

Lorsquel’utilisateurcliquesurleboutonvalider,l’image1passeàl’image2!Sachezégalementquevouspouvezrendreuneimagecliquable,commeunbouton.Ilsuffitdelatraitercommecelui-cienrajoutantVotre_Image.setOnClickListener(this);etenajoutantsonnomdansOnClick().

CréeruneapplicationcalculatriceNous allonsmaintenant créer notre première vraie application, ce sera une calculatricepermettantd’effectuerdeopérationsbasiques(+-x/).

Icinousallonscréernotreinterfacegraphique.Créez10boutonspour les chiffres de 0 à 9 ainsi que ceux pour les opérations(addition, soustraction, multiplication, division) ainsi qu’unetoucheentrée,unetoucheeffaceretunTextViewpourafficherlesopérations.J’aidonnécommeIDauxboutonsdeschiffres«b0»,«b1»,«b2»,«b3»…

Leboutonsuppr.AuracommeID«suppr».

Lesboutonsd’opérationsaurontcommeID«op0»à«op4»dehautenbas.

LeboutonGoauracommeid«go».

Créationdesboutons

Nousallonsmaintenantpasseràlapartieducode.

Premièrementilvafalloirdéclarertousnosboutonsetletexteaffichantlescalculs.

Puisnousallonsrendrecesboutonscliquables.

N’oubliez pas dedéclarer vosboutons et leTextView.Déclarez également un stringaunomdecalcul.

Stringcalcul;

AjoutezcelasouslepublicMainActivity.

Calculdesopérations

A chaque clique sur un chiffre, nous allons ajouter celui-ci dans la chaine de caractère« calcul », c’est la même chose pour les opérations. La chaine de caractère seraentièrement calculée lorsque l’utilisateur appuie surGogrâce à la librairieExp4j.Pourgérerlescliques,c’estlamêmechosequepourl’applicationprécédente,ilfautgérercesévènementsdansonClick().

Jevousexpliquerailapartiegriséeaprès.Pourchaquebouton,nousajoutonssavaleuràlafindelachainedecaractère.

Au-dessusde lapartiegrisée(quicorrespondauboutonGo), ilya text.setText(calcul) ;celasignifiequenousaffichons lecalculencoursà l’ecrandans leTextView.LeboutonGodanslapartiegriséeestséparédesautres,carilagitdifféremment.Ilcalculelachaînedecaractère«calcul»puisl’affichedansleTextView.

Pour cela j’ai donc utilisé la librairie Exp4J, voilà comment l’installer : File > ProjectStructure>app>Dependencie.

Cliquezsurle+,sélectionnezLibraryDependenciespuisentrezExp4jetsélectionnezlepremierlien.Enregistrez,AndroidStudiol’installeralui-même.

Expressioncalc=newExpressionBuilder(calcul).build();doubleresult1=calc.evaluate();text.setText(””+result1);

Nous calculons donc la chaîne de caractère « calcul » puis nous l’affichons dans leTextView.

Pourquoi””+result1pourafficherleresultat?Toutsimplementcarnousdevonsafficherunechainedecaractèreetnonun integerdans leTextView,celapermetdoncd’afficherunechaînedecaractèresansforcémentdevoirtransformernotreintegerenchaînedecaractère,disonsquec’estunepetiteastucepourgagnerdutemps.

Votrecalculatricedevraitmaintenantfonctionnercorrectement,nousallonsvoircommentl’enrichir.

Un grand avantage avec cette librairie, c’est qu’elle gère des calculs avancés. Nouspouvonsdoncrajouterdesboutonsavecdesparenthèses,despuissances…Dequoifaireunecalculatricefonctionnelleetpuissante!J’aidoncrajoutécecodepourlesparenthèsesetjelesaicrééesdanslelayout.

par1=(Button)findViewById(R.id.par1);par2=(Button)findViewById(R.id.par2);par1.setOnClickListener(this);par2.setOnClickListener(this);

elseif(v==par1){calcul=calcul+“(“;}elseif(v==par2){calcul=calcul+“)”;}

EtudionsquelquesfonctionsutilesRetirerl’ActionBardenotreapplication

Qu’est-cequel’ActionBar?

L’action bar c’est tout simplement la barre en haut del’application,quicontientsonnom,onpeutégalementyrajouterdesicônestelsqueceluidesparamètres.

Voicicommentleretirer:

Tout d’abord nous récupérons la version d’android du terminalqui démarre l’application. Pourquoi cela ? Parce que notre

fonctionnefonctionnequ’àpartirdelaversion11duSDKAndroid.

Nousrécupéronsl’actionBardel’activitéetnouslacachons,c’estaussisimplequeça.

intsdkVersion=android.os.Build.VERSION.SDK_INT;if(sdkVersion>=11){ActionBaractionBar=getActionBar();actionBar.hide();}

Rendez-voussurvotrelayoutpuiscliquezsurcebouton:

Il vous permet de sélectionner un thème pour votre application, choisissez-en un quicontientdanslenom«NoActionBar».

Pourterminer,rendez-vousànouveausurlecode,etremplacez

publicclassMainActivityextendsActionBarActivityimplementsView.OnClickListener{

par

publicclassMainActivityextendsActivityimplementsView.OnClickListener{

VotreActionBarn’estmaintenantplusvisible.

CréeruneWeb-application

Premièrement créons un nouveau projet. Rendons-nous sur notre layout principal puiscréezunWebView(danslemenuàgauche)etétirez-lesurtoutelasurface.

NousallonsmaintenantdansnotrefichierJAVAetnousdéclaronsnotreWebView:

privateWebViewwebView;

Relionslemaintenantànotrelayout:

webView=(WebView)findViewById(R.id.webView);

PourterminernousallonsactiverlejavascriptsurnotreWebViewpuischargerunepageweb:

webView.getSettings().setJavaScriptEnabled(true);webView.loadUrl(“http://www.google.fr”);

Unedernièrechose!

Rendons-nousdansledossierManifestspuisdanslefichierAndroidManifest.xml.

Nousallonsdonnerl’autorisationànotreapplicationpouraccéderàinternet:

<uses-permissionandroid:name=“android.permission.INTERNET”/><uses-permissionandroid:name=“android.permission.ACCESS_NETWORK_STATE”/>

Votreapplicationpourramaintenantaccéderàinternetpouraffichernotrepageweb!

AquoisertlefichierManifestd’ailleurs?

C’est ici que nous déclarons les permissions que demandera l’application, mais aussitoutesvousactivitésainsiquecertainsparamètrespourcelui-ci.Vouspouvez,parexemplerendrevotreactivitéseulementvisibleenmodepaysageouportrait,voicicommentfaire:

Ilfautajouterleparamètreandroid:screenOrientation=“portrait”oulandscapepourpaysage.

<activityandroid:name=“.MainActivity”android:label=“@string/app_name”android:screenOrientation=“portrait”><intent-filter><actionandroid:name=“android.intent.action.MAIN”/>

<categoryandroid:name=“android.intent.category.LAUNCHER”/></intent-filter></activity>

DébogagedirectementsuruntéléphoneJusqu’à maintenant nous utilisions l’Android Virtual Device (AVD) pour tester nosapplications,maissivousdisposezd’unterminalandroidetd’uncableUSB,vouspouvezfaire lesessaisdirectementsurvotre terminal!Aquoiçasert?Àgagnerdutempstoutsimplement,votreterminalsera+rapidequel’AVDquidoitensimulerun…

Ledébogagesurunterminalphysiquen’estpascompatibleavectouslesterminaux!

Toutd’abord,rendez-voussurlesiteADBDriver:http://adbdriver.com/ettéléchargezledriverpuisinstallez-le.

Passez votre téléphone en mode débogage et connectez-le en USB. Lorsque vouscompilerez, votre téléphone sera automatiquement ajouté à la liste. Sélectionnez-le,l’applicationselanceraautomatiquementsurvotreterminal.

RendresonapplicationdisponibleenplusieurslanguesCommevouslesavez,GooglePlaypermetdeproposervotreapplicationdanslemondeentier,maisàquoicelasert-ilsicelle-cin’estqu’enfrançais?

Nousallonsvoircommenttraduirevotreapplicationenfonctiondelalangueduterminal.

LefichierString.xml

Ilestsituédanslerépertoireres/values.Celui-cicontienttouteslesphrasesprésentesdansvotreapplication,dumoinsillescontiendraaprèscechapitre.Nouspouvonsdupliquercefichierafind’encréerunpourchaquelanguedésirée.

Commententrervotretextedanslefichierstrings.xml?

Ilyadeuxsolutions:

Lorsquevouspassezparlelayout,cliquezsurl’icôneàcôtédechaqueélément,letexte que cet élément contient apparaîtra dans votre string.xml. Dans ResourceName,inscrivezunmotquivouspermettradereconnaitrevotrephrase.

Lorsquevousécrivezun textevia lecodeJAVA, ilvafalloirmanuellementcréerunelignedanslefichierstring.xmlpuisle«relier»àvotrecode.

<stringname=“NOM_DE_VOTRE_TEXTE”>Ecrivezvotretexteici.</string>

PouraffichervotretexteenJAVA,vousdevrezentrerceciàlaplacedevotretexte.

R.string.NOM_DE_VOTRE_TEXTE

Voiciunexempleconcret.Jeveuxafficher«Bonjour»suràl’accueildemonapplication,jecréeunelignedanslefichierstring.xml.

<stringname=“Texte1”>Bonjour</string>

Puisj’affichemontextecommececi:

textView.setText(R.string.Texte1);

Maintenantnousallonscréerunedeuxièmelangue.

Pour créer votre deuxième langue, vous allez faire un click droit sur votre fichierstrings.xmlpuislecollerdanslemêmedossier(ledossiervalues).

Lorsquelafenêtrequivousdemandelecheminpourcollerlefichiers’ouvre,vousallezrajouteruntiretpuislalanguedésirée,parexemple–enpouranglaiset–espourespagnol.Unsecondfichierstrings.xmlapparaîtraavecundrapeau.

Audémarragede l’application,celle-ci reconnaîtautomatiquement la languedusystèmeetutiliselebonfichierstrings.xml.

Utilisons les fonctions physiques dutéléphone

Utilisationdestouchesphysiquesdutéléphone(Volumehaut&bas,Retourettactile)

Nousallonsicivoircommentutiliserlestouchesphysiquesdevotreterminal,àsavoirlestouchesdevolumeetlatouchederetouretletactile.

Pourcommencernousallonscréeruneactivitévideavecuntextlabel.Celui-cinousserviraàmontrerl’actionexécutéeparl’utilisateur.

Comment savoir quelle touche a utilisé l’utilisateur ? Grâce aux classes OnKeyDown() et OnKeyUp() qui sontextrêmementsimplesàutiliser.

OnKeyDownestdéclenchéquandl’utilisateurpresseunetouche;

@Override

publicbooleanonKeyDown(intkeyCode,KeyEventevent){

switch(keyCode){caseKeyEvent.KEYCODE_BACK:actionLabel.setText(“Toucheretourpressée”);Toast.makeText(this,“Appuyezunesecondefoispourquitter”,Toast.LENGTH_SHORT).show();counter++;if(counter>1){super.onBackPressed();}returntrue;caseKeyEvent.KEYCODE_VOLUME_UP:actionLabel.setText(“VOLUMEUPpressé”);returntrue;caseKeyEvent.KEYCODE_VOLUME_DOWN:actionLabel.setText(“VOLUMEDOWNpressé”);returntrue;}

returnsuper.onKeyDown(keyCode,event);}

EtOnKeyUpestdéclenchéquandl’utilisateurrelâcheunetouche;

@OverridepublicbooleanonKeyUp(intkeyCode,KeyEventevent){switch(keyCode){caseKeyEvent.KEYCODE_BACK:actionLabel.setText(“Toucheretourpressée”);

returntrue;caseKeyEvent.KEYCODE_VOLUME_UP:actionLabel.setText(“VOLUMEUPpressé”);returntrue;caseKeyEvent.KEYCODE_VOLUME_DOWN:actionLabel.setText(“VOLUMEDOWNpressé”);returntrue;}returnsuper.onKeyDown(keyCode,event);}

Pourfairesimple, lorsquel’utilisateur interagitavecsonterminal,OnKeyUp()etOnKeyDownsontsystématiquementappelées.,NousmettonsparlasuitesimplementàjourleTextLabelaffichantlatouchepresséeourelachée.

Danslecasdelafonctiontactileduterminal,nousallonsutiliserlaclasseOnTouchEvent():

@OverridepublicbooleanonTouchEvent(MotionEventevent){floatx=event.getX();floaty=event.getY();actionLabel.setText(“Tactilepresséàx:”+x+”y:”+y);returntrue;}

LevibreurActiver le vibreur du téléphone dans votre application peut être très utile, par exemplepouravertirl’utilisateurd’unévènement,d’unchangementquelconquedansvotreappli…Rassurez-vous il est très simple à mettre en place, commençons par demander lapermission:

<uses-permissionandroid:name=“android.permission.VIBRATE”></uses-permission>

AprèsavoirfaitcelanousallonscréerunevariabledetypeVibratorquevousallonsassocierauvibreurdenotretéléphone.

Vibratorvib;vib=(Vibrator)getSystemService(Context.VIBRATOR_SERVICE);

Puisvouspouvezlancerlevibreurquandvousvoulez,n’oubliezpasdechoisirletempsdecelui-cienmilisecondes:

vib.vibrate(10000);

Leflash

Nombreuxsontceuxquiontvoulucréerpourpremièreapplicationunelampetorche.Oui,maiscomment?C’estrelativementsimple,commepourlevibreur.C’estuneapplicationsimpleàréaliserquis’estdéjàlargementdémocratisée;decefait,ilestinutiled’encréerunepuisdelapostersurlestorecommesimplelampetorche,tropd’applicationsjouentcerôle.Maisvouspouvezcependantutiliserleflashpourpleinsd’autreschoses!

Toutd’abordondemandelapermission.

<uses-permissionandroid:name=“android.permission.CAMERA”/><uses-permissionandroid:name=“android.permission.FLASHLIGHT”/><uses-featureandroid:name=“android.hardware.camera”/><uses-featureandroid:name=“android.hardware.camera.autofocus”/><uses-featureandroid:name=“android.hardware.camera.flash”/>

Pourfairefonctionnerleflash,ilfaututiliserlesfonctionsdelacamera,carnativementleflashnesertqu’àlacamera.

Cameracam=Camera.open();Parametersp=cam.getParameters();p.setFlashMode(Parameters.FLASH_MODE_TORCH);cam.setParameters(p);cam.startPreview();

Puispourl’éteindre:

cam.stopPreview();

cam.release();

Cependantfaitesattention,enfonctiondesterminaux,certainsnepossèdentpasdeflash,ouilnefonctionnepasdelamêmemanière!

Pourdétectersileterminalaunflash,onvacréerunevariableboolean:«privatebooleanflash»

Onvaensuitemettre le résultatbooléende la fonctionandroidquivérifiesi le terminaldisposed’unflashdansvotrevariable.

flash=getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

LeGPS

Il peut être pratique dans certains cas pour votre application de savoir où est l’utilisateur, voilà comment obtenir lalatitudeetlalongitudegrâceauGPS:

finalLatLnglatLng=newLatLng(location.getLatitude(),location.getLongitude());

doublelat=location.getLatitude();doublelon=location.getLongitude();

Lalatitudeetlalongitudeestdoncmaintenantcontenuedanslesvariableslatetlon.

Simple,n’est-cepas?

LesanimationssousAndroid

NousallonsvoiricicommentréaliseruneanimationsousAndroid:«rotater»uneimage.

PourcommencervousallezcréerundossierAnimdansvotredossierRes.

VousallezensuitecréerunfichierXMLaunomdevotreanimationàl’intérieur,moijel’aiappelé«Rotator.xml».

CommencezpardéclarerquevotrefichierestunXML…

<?xmlversion=“1.0”encoding=“utf-8”?>

Nousallonsmaintenantincorporernotreanimationdanslefichierxml;

<?xmlversion=“1.0”encoding=“utf-8”?>

<setxmlns:android=“http://schemas.android.com/apk/res/android”android:interpolator=“@android:anim/linear_interpolator”><rotatexmlns:android=“http://schemas.android.com/apk/res/android”android:fromDegrees=“0”android:interpolator=“@android:anim/linear_interpolator”android:toDegrees=“720”android:pivotX=“50%”android:pivotY=“50%”android:duration=“900”android:startOffset=“0”/><scaleandroid:duration=“600”android:fromXScale=“0.1”android:fromYScale=“0.1”android:toXScale=“1.0”android:toYScale=“1.0”android:pivotX=“50%”android:pivotY=“50%”/></set>

(Enbasvousavezunlienversd’autresanimations!)

Concrètement,cetteanimationferatournerdeuxdésetlesferagrandirpetitàpetit.Toutcelasurenvironunesecondeetdemie.

Maintenantilvafalloirlancernotreanimation!çasepasseducôtéduJAVA.

Rendez-vousdansvotreactivitéetdéclarezl’objetquevousvoulezanimer.

Nousallonschargernotreanimation:

rotation=AnimationUtils.loadAnimation(this,R.anim.rotator);

Unefoisnotreanimationchargée,plusqu’àlalancer!

des.startAnimation(rotation);des2.startAnimation(rotation);

Personnellement j’ai placémon animation sur un OnClick. Lorsque l’utilisateur appuie sur les dés, ils semettent àtourner.

Cette méthode reste encore la plus simple pour créer des animations sous Android. N’hésitez pas à créer plusieursfichiersdansledossierAnimpourtoutesvosanimations!

Pourplusd’informationssurlesanimationsdisponibles,jevousconseilledevisiterladocdeGoogle:http://developer.android.com/guide/topics/resources/animation-resource.html

Voicidesexemplesd’animationsprêtesàêtreutilisés:http://forum.xda-developers.com/showthread.php?t=2331728

AfficherdesimagesGifdansuneactivité

Danscettepartienousallonsvoircommentafficheruneouplusieursimagesanimés(Gif)dansuneactivité.Pourcelanousallonsutiliserlalibrairie«Glide».

Pourcommenceretcommed’habitudelorsquel’onutiliseunelibrairie,ilfautl’intégrerànotreprojet:

compile‘com.github.bumptech.glide:glide:3.6.0’

Aprèsavoirsynchronisénotreprojet,nousdonnonslapossibilitéànotreapplicationdeseconnecteràinternetdanslemanifest:

<uses-permissionandroid:name=“android.permission.INTERNET”/>

Rendez-vousparlasuitedanslelayoutdevotreactivitépuisajoutez-yuneImageView:

<ImageViewandroid:layout_width=“wrap_content”android:layout_height=“wrap_content”android:id=“@+id/imageView1”android:layout_alignParentBottom=“true”android:layout_alignParentRight=“true”android:layout_alignParentEnd=“true”android:layout_alignParentLeft=“true”android:layout_alignParentStart=“true”/>

PassonsmaintenantdansnotrefichierJAVAetimportonslaclassedeGlide:

importcom.bumptech.glide.Glide;

Récupéronsparlasuitenotreimagedanslescript:

ImageViewimage1=(ImageView)findViewById(R.id.imageView1);

Etpourterminerajoutonsl’imageGifànotreImageView:

Glide.with(this).load(“http://media.giphy.com/media/R3S6MfUoKvBVS/giphy.gif”).into(image1);

N’oubliezpasquevotre imagesera téléchargéed’internet,ducoupsi le terminalutiliseuneconnexionlente,celle-cimettraunpeudetempsavantdes’afficher…

Voicicequel’exempledevrait-donnersurvotreterminal.

Passerunevariabled’uneactivitéàuneautreNousallonsvoiricicommentpasserunesimplevariabled’uneactivitéàuneautre,unpseudoparexemple.

Nouscommençonsparenregistrerlecontenudelavariable:

intent.putExtra(“Pseudo”,“Pseudodelutilisateur”);

//Vouspouvezmaintenantlancerl’activitésuivante

Puismaintenantvousallonslerécupérédansl’activitésuivante:

StringPseudo=intent.getStringExtra(“Pseudo”);

Voilà,c’étaittrèssimplemaiségalementtrèsutile!

Sauvegarder des variables de votreapplicationC’estvrai, le titrenevousévoquesûrementpasgrand-chose,mais jevousapprendre làune technique trèsutilepourenregistrer le contenu des variables que vous désirez, par exemple pour retenir les préférences de l’utilisateur (Son,vibreuretc)…

Cette technique est très simple et est composée de deux parties : l’enregistrement de la variable d’une part, puis larécupérationdecelle-cid’autrepart.

Enregistrementdelavariable:

J’aicrééuneclassepourpouvoirenregistrermesvariablesplussimplement;

privatevoidsavePreferences(Stringkey,Stringvalue){SharedPreferencessharedPreferences=PreferenceManager.getDefaultSharedPreferences(this);SharedPreferences.Editoreditor=sharedPreferences.edit();editor.putString(key,value);editor.commit();}

Elles’utilisecommececi:

savePreferences(“Vibreur”,“Oui”);

Vibreurestlenomdelavariableàenregistrer,etOuiestsoncontenu.Vousauriezpumettreun1pourOuietun0pournonparexemple.

Maintenant nous allons récupérer l’information au démarrage de l’application, pour savoir si nous pouvons ou nonutiliserleVibreur;

SharedPreferencessharedPreferences=PreferenceManager.getDefaultSharedPreferences(this);

StringVibreur=sharedPreferences.getString(“vibreur”,“Non”);

Ici,lapremièrelignes’occupedechargerlesvariablesenregistréesaupréalable.

Ladeuxièmelignerécupèrelecontenudelavariable«vibreur»,danslecasoùrienn’aencoreétéenregistréaunomdecettevariable,«Non»seraautomatiquementajoutédanscelle-ci.

UtiliserlesSharedPreferencesestquasi-indispensablepourvotreapplicationAndroid,poursauvegarderlesparamètresdel’utilisateur(Quoideplusennuyantqu’uneapplicationquinesauvegardejamaisnosparamètres?!).

Utiliserunepolicedetextepersonnalisée

Danslecasoùvoustrouverezlapolicedebasemonotone,sachezquevouspouvezajoutercellequevousvoulez!

Pourcommencer téléchargez lapoliceTTFdevotrechoix,nousallons l’inclureànotreprojet.Pourcelarendez-vousdansledossierdevotreprojetpuissuivezlecheminapp>src>mainetcréezundossier«Assets»puisledossier«fonts»àl’intérieur,collezvotrepolicededans.

NousallonsmaintenantcréerunTextViewtoutsimple.

CôtéJAVA,nousallonsappliquerlapolicedecaractèreànotreTextView;

Ajoutezcetteclasseàvotreactivité:

publicvoidsetFont(TextViewtextView,StringfontName){if(fontName!=null){try{Typefacetypeface=Typeface.createFromAsset(getAssets(),“fonts/”+fontName);textView.setTypeface(typeface);}catch(Exceptione){Log.e(“FONT”,fontName+”introuvable”,e);}}}

Maintenant vous avez juste à déclarer votre TextView et à appliquer la police grâce à notre classe ajoutéeprécédemment;

TextViewtextView2=(TextView)findViewById(R.id.text1);

setFont(textView2,“font.ttf”);

Voilàlerésultat!

PubliermonapplicationsurleStorePublierunenouvelleapplicationCompilermonapplicationenversionrelease

Pourcommencer,nousallonscréerunfichierkeystorepournotreapplication,celui-ci–ànesurtoutpasperdre–nouspermettradepubliernotreapplicationetàéviterdeselafaireusurper.

Rendez-vousdanslemenuBuildenhautdevotrefenêtrepuiscliquezsurGeneratesignedAPK.CliquezsurCreateNewetremplissezlesinformations.

Keystorepath:oùvousallezenregistrervotrefichierkeystore.Keystorepassword : lemotdepassedevotre fichier, il seraà remplirplusieursfois.Keyalias:nomdevotreapplication.Firstandlastname,organisationetc…remplissezaumoinsundeceschamps.

Validez,entrezcesinformationsànouveaupuispassezàl’étapesuivante.

Danscertainscas,AndroidStudiovousdemanderaàentrerunMasterPassword.

Validezànouveau,votreapplicationvaêtrecompilé,ouvrezledossierquicontientvotrefichierAPK,gardez-ledecôtépourplustard.

Créermoncomptesurleplaystore

Sachezpourcommencer,quepourcréervotrecomptesur legoogleplaystore, il faudrapayer25$.

Rendez-vous sur cette page : https://play.google.com/apps/publish/signup/ et connectez-vous à votre compte google, acceptez les conditions d’utilisation puis continuez. Vousallezpayer25$,ceseraleseulpaiementàfournirpourleplaystore.

Nousallonsmaintenantpubliernotreapplication,rendez-voussurlapaged’accueildelagoogleplayconsole.

Cliquezenhautàgauchesur«Ajouterunenouvelleapplication».Choisissezla langueprincipalepuis le nomdevotre application et poursuivez enpréparant la fichedevotreapplication.

Ilvafalloirentrerbeaucoupd’informations!

Commençonsparlafichedevotreappli;

Le nom, la description, des screenshots de votre appli, une icône, une imagepromotionnelle…Classifiezvotreapplicationenfonctiondesoncontenu.

Nousallonsmaintenantuploadernotreapplication.Rendez-voussurlemenuàgaucheetcliquezsurFichierAPK.ImportezunnouveaufichierAPKpuisglissez-ledansl’encadré.

Ilvafalloirremplirtoutelesfichesdumenuàgauche,ilseraimpossiblederendrevisiblevotreapplicationtantqueceneserapasfait.

Une fois votre application en ligne, vous pourrez accéder aux statistiques et voirl’évolutiondevotreapplication.

Envoyerunenouvelleversiondemonapplication

Vouspourrezégalementenvoyerunenouvelleversiondecelle-ci,voicicommentfaire:

Etant donné que le google play gère les versions, pour pouvoir publier une nouvelleapplication,ilvafalloirchangersaversion.

Rendez-voussurAndroidStudiopuiscliquezsurFile>ProjectStructure>app>Flavors

Dansversioncode,changezle1en2,etdansversionname,mettezcequevousvoulez,c’est tout simplement le nom de votre version. Compilez votre projet comme nousl’avions vu précédemment puis uploadez la nouvelle version. Google Play peut mettrequelquesheuresavantqu’ellenesoitvisible.Puisvouspourrezvoirdanslesstatistiqueslepourcentage des utilisateurs qui ont l’ancienne version et ceux qui sont passés à lanouvelle.

Commentmonétisersonapplication?

Enfonctiondupublicvisé,del’utilitédevotreapplication,desacatégorie,etc…ilvafalloirdéfinirquelleseralasourcederevenudevotreapplication.

Voicilesprincipalessolutions:

Lesapplicationstotalementgratuites

Vousavezréalisévotreapplicationpourleplaisir,vousnevoulezpaslamonétisercettepartienevousconcernedoncpas.

LesapplicationsFreemiums

Les applications Freemiums sont certainement les plus répandues. Le principe est simple ; votre application estdisponiblegratuitementsurleGooglePlayStore,seulementpourpouvoirl’utiliserentièrement,ilvafalloirpayer.

LesystèmeFreemiumpeutêtre limitéparuncertainnombrede temps(gratuitependant7 jourspuispayante)ouparoptionspayantes(ParexempledansnotrejeuFrequency,les3premiersniveauxsontgratuits,maisilfautpayerlejeupourl’avoirenentier…).

Cetteméthodeestdoublementrentable,carvouspouvezaccessoirementafficherdespublicitéspourlesutilisateursnesouhaitantpaspayer,celavouspermetquandmêmed’êtreunminimumrentableaveclesradins.

LesapplicationsPaymiums

Ressemble au système Freemium sauf que votre application est payante au départ, mais moins cher qu’elle devraitl’être…Vouscomblerezcemanquedans la trésoreriepardesachats in-apppourENRICHIRl’application(Attention,pour ce cas-là il ne faut pas parler de limiter l’utilisateur puisqu’il a payé l’application, il faut parlerd’enrichissement…).

Votreapplicationattireraplusd’utilisateursgrâceàsonmoindrecoût.

Cesystèmen’existepasdepuislongtempsetn’apasencorefaitsespreuves…

Lesapplicationspayantes

Lesapplicationssimplementpayantes:sivousn’avezpasenviedevousprendrelatêteàproposerdesachatsin-appouàproposerpleinsd’options,vouspouvezproposervotreapplicationenmodetoutsimplementpayante;Unseulachatpourprofiterdel’applicationcomplète.

Attentiontoutdemême,unutilisateurauradumalàpayeruneapplicationqu’iln’apasputesteretqu’ilneconnaîtpas,l’idéalétantdeproposeruneapplicationpayantelorsquevousavezdéjàréaliséquelquesapplicationsquiontfaitleurspreuves.

PourajoutervotreapplicationenpayantedanslePlayStorec’esttrèssimple!Ajoutezsimplementvotreapplicationsurleplaystorepuisrendez-vousdansl’onglet«Tarifetdisponibilité»

Vouspourrezainsimettreunprixàvotreapplicationpourchaquepaysetchaquedevise.

Attention:unefoisquevousavezvalidé,vousnepourrezplusrepasservotreapplicationengratuite!Enrevanchevouspourrezchangersonprix.

LapublicitéAdMob

Méthodetrèsrentable,notammentpourlesapplicationsdites«futiles»,c’est-à-direquinesontpasassezélaboréesouutilespourêtreachetéesparunutilisateur.Grâceàceprocédé,votreapplicationafficheradespublicité(vouspourrezchoisirleformat),chaqueaffichagedepublicitéestappeléuneimpression.

Nousallonsvoiricicommentafficherdespublicitéssurvotreapplication.

Commencez par vous créer un compte sur AdMob (https://apps.admob.com/), vous pouvez utiliser votre compteGoogle.

Unefoissurl’interfacemembred’AdMob,cliquezsur«Monétiserunenouvelleapplication».

Entrezlesinformationsrelativesàvotreapplication.SivotreapplicationestdisponiblesurleGooglePlay,sélectionnezlepremierongletetentrezlenomdevotreapplication.

Pourleformatdel’annonce,sélectionnez«Bannière»pourcommencer,entreztouteslesinformationsdemandées.Alafinvousobtiendrezuncodedutype«ca-app-pub-XXXXXXXXXXXXXXXXX».

Créationdenotrebannière

Rendons-nousmaintenantsurnotreprojet.NousallonscommencerparafficherdansleLayoutlabannièreAdMob:

<com.google.android.gms.ads.AdViewandroid:id=“@+id/adMob”android:layout_width=“fill_parent”android:layout_height=“wrap_content”ads:adSize=“BANNER”ads:adUnitId=“ca-app-pub-XXXXXXXXXXXXXXXXX”android:layout_alignParentBottom=“true”android:layout_alignParentLeft=“true”android:layout_alignParentStart=“true”android:layout_alignParentRight=“true”android:layout_alignParentEnd=“true”/>

Rendons-nousdanslefichierJAVAdenotreactivitéetimportonslesclassesnécessaires:

importcom.google.android.gms.ads.AdRequest;importcom.google.android.gms.ads.AdView;

Déclaronsnotrebannière:

AdViewadView=(AdView)this.findViewById(R.id.adMob);

Puisaprèsnousaffichonslapublicitédansnotrebannière:

adView.loadAd(adRequest);

Créationd’unepublicitéinterstitielle

Leprocédén’estpasbeaucoupdifférentpourafficherunebannièreinterstitielle(quirecouvreentièrementl’écran).

Tout d’abord il faut créer sur le site d’AdMobune publicité de type interstitielle, puis le reste se passe surAndroidStudio.

Importonsnotreclassed’interstitielle:

importcom.google.android.gms.ads.InterstitialAd;

DéclaronsnotrepublicitésurnotrefichierJAVA:

privateInterstitialAdinterstitial;

Affichonsmaintenantnotrepublicitéinterstitielle:

interstitial=newInterstitialAd(this);interstitial.setAdUnitId(“ca-app-pub-XXXXXXXXXXXXXXXXXXXXXXX”);AdRequestadRequest=newAdRequest.Builder().build();interstitial.loadAd(adRequest);

Voilà,voussavezmaintenant

Comment promouvoir son applicationAndroid?

Pourquoipromouvoirsonapplication?

L’applicationAndroid,peuimportesondomaine,n’attirerapaslesvisiteurscommeparmagie.LeGooglePlayesttrèsefficacepourpromouvoir son applicationAndroidmais çane suffit pas, pour augmenter le tauxd’installation il faututiliserd’autresméthodesquenousallonsvoirci-dessous.

SIvousavezdécidéd’utiliserdesméthodesonéreusespourpromouvoirvotrenouvellecréation,n’oubliezpasqu’ilfautqu’ellevoussoitrentabled’unemanièreoud’uneautrepourpouvoirespérerunretoursurinvestissement.

Promouvoirvotreapplicationpermettradefaitd’obtenirplusd’installationsetdoncd’augmenterletauxd’utilisationdevotreapplication.

Ciblerlebonpublic

Toutd’abordilvafalloirciblerlepublicquiutiliseravotreapplication.Cen’estpaslamêmecatégoried’utilisateursquiutiliserauneapplicationderévisiondubaccalauréatouuneapplicationsurlapréparationàlaretraite…

Sivotre application est déjà disponible au téléchargement et à déjà recueilli quelquesutilisateurs, rendez-vous sur leGooglePlaypuiscliquezsurl’onglet«Statistiques»devotreapplication;

Vous pourrez de ce fait savoir quel est la langue principale de vos utilisateurs, la taille de leurs terminaux, leursopérateurs…Toutestàprendreencomptepourobtenirunrésultatoptimisé.

Proposerpremièrementsonapplicationàunpublictest

Certes vos amis et votre famille peut tester votre application et vousdonner des pistes d’amélioration,mais ce n’estvraimentpaslepublicidéal.Sivotreapplicationneplaitpasilsaurontdumalàledire.Tournez-vousplutôtversunecommunautédedéveloppementAndroidouabordantlethèmedevotreapplicationpoursavoircequinevapasetréglerlesbugsoufautes.

EncouragerlesutilisateursdevotreapplicationàlaisserunavisC’est sûr, c’est agaçant ! Mais cette boite de dialogue est nécessaire pour rappeler auxutilisateurs de laisser un avis sur votre application !Google Play apprécie vivement que lesutilisateurs laissent des avis, cela peut nettement améliorer le référencement de votreapplicationetlarendreplusvisiblesurleStore.

Sicen’estpassouslaformed’uneboitededialogue,envisagezaumoinsunpetitboutonsurvotreapplication.

Pour inciter les utilisateurs à voter, vous pouvez leur proposer un gain contre leur vote,Notammentsivotreapplicationestunjeu.

Prendreencomptelesavisdesutilisateurs!

Ilesttrèsimportantdeprendreencomptelesremarquesdesutilisateursetd’améliorervotreapplicationenfonctiondeceux-ci.Deplus,vosutilisateursapprécierontd’avoiruneréponseàleurscommentaires.

OrganiserunecampagnedepublicitéQuecesoitenpassantparAdmob,parleGooglePlay,Facebook,Adwordetc…Ilpeutêtreutiledefairedelapublicitépourvotreapplication,tantqu’ellerapporteparlasuite;lapublicitéestpayante,ilfautdoncenvisagerunestratégiederetoursurinvestissement.

Dans lecasd’Admob,sivouspossédezdéjàuneouplusieursapplicationsquicumulentdesutilisateurs,vouspouvezélaborerunecampagned’autopromotion;lapublictiépourvotrenouvelleapplicationseragratuitementdéployéesurvosautresapplications.(Paged’accueilAdmob>Promouvoir>«Promouvoirunenouvelleapplication»)

Dans le cas d’une publicité Facebook, Adword et autres, vous pouvez saisir précisément le public qui verra vospublicités.Pourleréseausocial,vouspouvezmêmeciblerenfonctiondesloisirs,deslieuxvisités,del’age…

PrésentervotreapplicationsurdesplateformesadaptéesLeGooglePlayn’estpaslaseuleplateformeoùvouspouvezproposervotreapplication!

Voiciquelquesplateformesalternatives:

AmazonAppStoreSlideMeAndroidPitOperaMobileStoreMobangoAppDownloaderYandexStore(Russie)…

Ilexisted’autresplateformes,notammentenChine,mais lapublicationd’applicationdanscesplateformes-làest trèsdifficile.

Lesystèmedeparrainageetl’organisationdejeuxconcours

Depuisle20décembre2014,lesorganisateursdejeux-concoursenFrancen’ontplusbesoindedéposerlesrèglementsàuneautorité juridique,et iln’yapasbesoind’avoirunHuissier.Danscetteoptique, l’organisationd’un jeuconcourspeutêtreuneidéejudicieusepourfaireconnaîtrevotreapplication,parexempleorganisésurunréseausocialoùilfautpartagervotreapplicationpourpouvoirs’inscrireauditjeu…

Pourunfaiblecoût(legaindujeuconcours)vouspouvezobtenird’innombrables installations…Pourexemple,nousavons récemment organisé un jeu concours pour faire connaître un de nos jeux disponibles surAndroid, l’utilisateuravaitjusteàtéléchargerl’application,àcliquersurunboutondessuspourpartagerlejeuàsesamisetavaitunechancedegagnerunetablettetactile…çaamarchédutonnerre!

Optimiserlestextesdespagesdeprésentationdesonapplication

Ilfautoptimiserlestextesdelapagedeprésentationdevotreapplicationpourdeuxraisons:

L’approcheSEO

Lapagedeprésentationdevotreapplication–commen’importequellepageinternet–doitêtreréférencéecorrectementpourpouvoirêtretrouvéefacilementsurlesmoteursderecherche(SEOsignifieSearchEngineOptimization),c’estpourcetteraisonqu’ilvafalloirentrerunmaximumdemotsclésconcordantavecvotreapplicationpourqu’ellepuisseêtretrouvéefacilement.

Pourrevenirsurlejeudontvousavionsorganisésnotreconcours,ils’appelle«Frequency».OrentappantcemotsurleGooglePlayStore,ontombesurplusieurscentainesd’applications…Pourpallieràceproblèmenousl’avonsrenommé«FrequencyRythm»puisquec’estunjeuderythme,elleapparaîtducoupenpremieretpeutêtrefacilementtrouvéepourquiconqueentendantparlerdecejeu.

L’approcheCopywriting

Qu’est-cequec’estencorequececharabia?Pourfairesimple,lecopywritingestl’artdeséduireaveclesmots.Agencersubtilementvosphrasestelunsophistepourdonnerenvieàl’utilisateurdetéléchargervotreapplication.Jenevaispasvous expliquer en détails comment faire ici car le copywriting est un métier… Je vous invite à vous rendre surl’excellentsitewww.copywriting-pratique.compourapprendrelesbases!

Réalisezuntestdevotreapplication

Pourfaireconnaîtrevotreapplication,riendemieuxquederéaliserunevidéopublicitaireoudefairetestercelle-ciparunepersonnerenomméedansvotrethématique.IlréaliseraparlasuiteunevidéopourvotreapplicationsursachaineYouTube.Unarticlesponsoriséestaussiunebonnealternativeautestvidéo,publiésurunblogdelamêmethématiquequevotreapplication.

Lesderniersmots…

Vous avez maintenant entre vos mains les bases du développement Android, vouspermettantdecréerdesapplicationsAndroidperfectionnéesetsurtoututiles.

N’oubliezpasqueledéveloppementd’applicationsAndroidpeutêtretrèsrentablelorsquevouscréezdesapplicationsutilesetmûrementréfléchiesetmonétisées,quecesoitgrâceauxachatsin-app,auxventespuresouencoregrâceauxpublicités.

N’oubliez pas que même si le principal est de créer une application géniale, il fautégalement garder beaucoup de temps pour en assurer la promotion ; En effet, si votreapplication est super mais n’a aucuns utilisateurs, vous allez au-devant de sérieuxproblèmes…

CréeruneapplicationANDROID

DylanTEIXEIRA