Créer une application - -CUSTOMER VALUE-livre.fun/LIVREF/F28/F028042.pdf · comment monÉtiser son...
Transcript of Créer une application - -CUSTOMER VALUE-livre.fun/LIVREF/F28/F028042.pdf · comment monÉtiser son...
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