Liste des choses à faire avant de publier l'application Android sur le marché [fermé]

317

Je suis sur le point de publier ma première application sur le marché Android, et j'aimerais savoir si certains d'entre vous ont des conseils sur les expériences que vous avez pu rencontrer en ce qui concerne la publication d'une application qui va au-delà de l'évidence et déjà documenté.

Des mises en garde cachées et / ou des idées sur ce qu'il faut faire avant de publier une application sur le marché? Par exemple, un de mes amis m'a recommandé de supprimer tous les commentaires de mon code au cas où quelqu'un accèderait au code source, ce qui rendrait plus difficile pour le prétendu "code jacker" de déchiffrer le code. J'ai pensé que c'était une suggestion sensée.

Quelles sont toutes les choses à faire avant de publier leur application sur le marché Android?

dell116
la source
1
Une liste de contrôle vient d'être publiée dans la documentation officielle pour s'assurer que vous répondez aux attentes de base des utilisateurs de tablettes.
Jeff Axelrod
48
Étrange, il n'est pas constructif et a obtenu 16K vues lol
require_once
61
Clôturer une question aussi constructive que «non constructive» est un exemple frappant de la raison pour laquelle la politique de modération de Stackoverflow devrait être modifiée!
Orion
7
Doit vous assurer que votre application est riche en mots clés et faire des recherches de mots clés avant de publier .. voir comment j'ai utilisé l' outil de tendance Google pour la recherche de mots clés
NabeelSaleem
2
Passez par la politique des développeurs de Google Play et assurez-vous que votre application ne viole rien, vous devez être très prudent avec Google, cela fait très mal quand vous êtes sur le cloud 9 avec 2 millions de téléchargements et tout d'un coup, votre application est suspendue car vous n'avez pas suivi leur politique.
Yauraw Gadav

Réponses:

339

J'espère qu'il n'est pas trop tard, voici quelques conseils:

  • Lancez votre application à la fin de la semaine (le jeudi après-midi est généralement un bon moment). Pourquoi Eh bien, aucune entreprise ne souhaite publier une application seulement 1,5 jour avant le week-end -> trop dangereux (en cas de problème nécessitant un temps de réaction rapide).

  • Utilisez proguard sur votre application (généralement, il vous suffit d'ajouter cette ligne: proguard.config=proguard.cfgdans le default.propertiesfichier). Cela optimisera, réduira et obscurcira votre code, très utile pour empêcher les voleurs de code. Vous n'avez pas besoin de supprimer les commentaires, ils sont automatiquement supprimés au moment de la compilation.

  • Optimisez vos images (à l'aide de Paint.NET , PNGCrush ou OptiPNG ).

  • Optimisez vos mises en page pour la plupart des tailles d'écran. Vous pouvez le faire en modifiant simplement la taille de l'écran lors de la modification d'une disposition dans AndroidStudio ou Eclipse.

  • Essayez / interceptez toutes les exceptions sur l'interface utilisateur et affichez un simple toast qui indique à l'utilisateur qu'un problème est survenu. En attendant, récupérez l'erreur avec Crashlytics ou quelque chose de similaire.

  • N'utilisez pas trop de bibliothèques .jar, préférez les projets de bibliothèque (optimisez la taille du code) et ajoutez-les à l'aide de gradle.

  • Préférez utiliser des images vectorielles car cela réduira la taille de l'APK et s'adaptera correctement à tous les appareils.

  • N'utilisez pas les fenêtres de préférences Android -> ce n'est pas vraiment beau, même si c'est dans les directives Android, préférez créer votre propre page de paramètres. Mais si vous conservez les préférences Android: pensez à ajouter des icônes et des couleurs.

  • Ne pas afficher le titre de votre application sur l'écran principal ( this.requestWindowFeature(Window.FEATURE_NO_TITLE);): les bonnes marques n'ont pas besoin de prendre autant d'espace sur un écran pour être reconnues (afficher une icône ou un titre dans le menu ou quelque part qui n'est pas toujours visible) et envisagez d'utiliser le mode plein écran ( this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);) lorsque vous traitez des jeux et du contenu très immersif.

  • Utilisez Google Analytics , Fabric Answers ou Flurry pour de futures analyses -> essayez d'obtenir autant d'informations que possible, mais ne saisissez rien qui viole l'identité anonyme du client. N'oubliez pas de récupérer les exceptions (erreurs et traces de pile) qui se produisent côté utilisateur.

  • Demandez à vos amis de faire des tests de singe, apprendre des utilisateurs apporte généralement beaucoup de bonnes choses (telles que des priorités et de nouvelles idées).

  • Pensez à publier votre application avant d'avoir terminé toutes les fonctionnalités (fonctionnalité la plus importante uniquement), vous ne savez pas déjà ce que vos utilisateurs voudront ou auront besoin en plus de votre fonctionnalité principale.

  • Ajoutez une section "Plus d'applications" ou "Plus de développeur" dans votre application, ce sont des annonces gratuites.

  • Ajoutez une section "Envoyer des commentaires" pour donner à l'utilisateur la possibilité de demander une nouvelle fonctionnalité ou de signaler un bug.

  • Demandez à vos utilisateurs de traduire votre application en fournissant le strings.xml quelque part sur le Web comme Crowdin .

  • Essayez votre application sur chaque version Android avec l'émulateur -> de nombreux bugs ou problèmes de conception seront détectés de cette façon. Pour cela, vous pouvez utiliser l'émulateur fourni ou utiliser Genymotion à la place (Genymotion a beaucoup de fonctionnalités très utiles).

  • Pensez au nom de l'application -> quels mots clés utiliseriez-vous pour rechercher votre application? Ces mots clés doivent être le nom de votre application (Google vous aidera à vous faire découvrir de cette façon).

  • Pensez à inclure des mots clés dans la description de l'application, mais de manière descriptive (faites des phrases compréhensibles en utilisant vos mots clés). N'ajoutez jamais de liste de mots clés telle qu'elle est dans la description.

  • Soyez le premier à évaluer votre application avec 5 étoiles et demandez à votre famille et à vos amis de faire de même -> cela influencera probablement les notes des futurs utilisateurs.

  • Pensez à utiliser Google pour traduire votre application soit pour la description, soit pour le strings.xml ou les deux.

  • Envisagez d'afficher des annonces dans vos applications et utilisez la médiation pour améliorer vos revenus AdMob .

  • Au lieu de fournir une version payante, envisagez de facturer dans l'application -> les utilisateurs sont plus susceptibles de payer dans l'application plutôt que de payer pour une version payante.

  • Ajoutez un journal des modifications dans l'application -> les utilisateurs aiment généralement savoir ce qui a changé depuis la dernière version.

  • Ajoutez une section "Merci" pour les utilisateurs qui vous ont aidé -> cela engagera les utilisateurs à votre produit.

  • Ajoutez un lien "Si vous aimez cette application, veuillez la noter" (à votre description Google Play) dans votre application -> vous obtiendrez plus de 5 étoiles (généralement une fenêtre contextuelle au démarrage ou après une action de fonctionnalité).

  • Pensez à expliquer votre produit via une section "Conseils" ou "Instructions" dans votre application.

  • Enregistrez votre fichier de clés et vos informations d'identification dans un endroit sûr. Vous ne pourrez pas publier de mise à jour pour votre application si vous perdez votre magasin de clés.

  • Rendez votre icône très simple et claire. L'icône est la première et surtout la dernière chose qui incitera l'utilisateur à télécharger votre application.

  • Sauf si ce n'est pas possible, préférez une installation externe ( android:installLocation="preferExternal"dans AndroidManifest.xml).

  • Lisez les conseils et les articles de blog d' AppAnnie , il vous donnera des conseils sur la façon d'améliorer ASO et vous aidera à mieux comprendre vos utilisateurs.

Mathieu de Brito
la source
2
si vous avez un problème avec le test sur les différents émulateurs dans Eclipse, vous pouvez obtenir émulateur genymotion, thats si faster.also aux images de Optimize www.tinypng.com est bon choix
Arash
2
Vraiment utile, mais gardez à l'esprit que, afin de fournir une expérience UX appropriée, vous feriez mieux d'avoir des raisons valables d'aller en plein écran. Comme si vous voulez que l'utilisateur se concentre sur un seul élément et supprime toutes les autres distractions en cours de route.
whizzkid
1
applicationIdn'a pas pu être réinitialisé une fois que vous avez publié votre application. Plusieurs fois, il contient des mots (comme votre nom d'utilisateur) que vous ne voulez pas révéler. Réglez-le dans le build.gradlefichier de votre projet dans Android Studio.
gsinha
7
Je viens à StackOverflow pour des réponses aux questions. Ma question était "Que dois-je faire avant de publier une application Android?" C'est une réponse très utile et j'imagine qu'il pourrait y en avoir beaucoup d'autres, donc fermer la question comme "Pas constructif" ne semble pas très constructif.
user872985
2
Merci pour les conseils .. Je veux savoir une chose de plus, si quelqu'un ouvre mon application dans le Play Store, je veux afficher mes applications comme une suggestion comme "Plus du développeur", y a-t-il un moyen de le faire
Geethu
47

Vraiment, ne vous embêtez pas à supprimer les commentaires de code. Votre code source ne parvient pas au téléphone de l'utilisateur - seul le code compilé y parvient et ne contient aucune référence à vos commentaires.

Les utilisateurs d'Android ont tendance à apprécier que les applications soient aussi petites que possible, alors vérifiez que vous n'incluez que les ressources (images, etc.) qui sont toujours utilisées dans votre application. Utilisez OptiPNG / PNGCrush sur toutes les images .png que vous avez dans votre application - ce qui peut réduire la taille du fichier image d'environ 10%, ce qui peut représenter une part importante de la taille globale de votre application.

Utilisez également un éditeur audio tel que Audacity pour réduire autant que possible la taille de tout son. Opter pour des fichiers mono OGG Vorbis est souvent préférable et sonne assez bien sur un téléphone.

teedyay
la source
1
Si ma mémoire est bonne, je pensais avoir lu quelque part que lorsque le .apk est empaqueté, le code n'est pas compilé. J'ai supposé que le .apk contient tous les fichiers source, un peu comme vous le verriez si vous alliez dans le dossier de l'espace de travail du projet pour Eclipse ..... et le Dalvik compile le code à la volée lorsqu'il est exécuté au téléphone?? J'espère que je me trompe, car même lorsque je lisais l'article, je me disais: "ce n'est pas sûr". Je suis également membre de xda-developers.com, et ils semblent publier tout le temps des fichiers apk déodexés pour les applications.
dell116
16
Non, la source brute n'est pas expédiée. Le fichier .apk est juste un fichier .zip déguisé, alors renommez-le et jetez un œil. Tout ce qui se trouve dans / assets et / res / raw est expédié tel quel, tout comme les drawables dans / res. Les fichiers xml dans / res sont modifiés d'une certaine manière (peut-être que quelqu'un d'autre ici sait s'ils sont chiffrés ou simplement compressés?). Votre code source est compilé dans classes.dex. Si vous ouvrez cela dans le Bloc-notes, vous constaterez qu'il contient de nombreuses chaînes de votre code source (noms de méthode et de variable, etc.) mais aucun de vos commentaires.
teedyay
7
les fichiers xml sont compilés pour optimiser leur analyse et leur navigation. il existe des outils pour les décompiler.
bigstones
@bigstones De quel type de programmes de compilation parlons-nous ici?
Robert Massaioli
@RobertMassaioli Juste AAPT, cela se fait automatiquement au moment de la construction.
bigstones
36

Ne vous inquiétez pas des commentaires. Si vous êtes préoccupé par la dissection malveillante de votre application, exécutez-la via un obscurcisseur comme ProGuard.

Autres conseils que j'offrirais:

  • Ayez tous vos graphiques et documents promotionnels prêts à l'avance.
  • Planifiez votre sortie de manière stratégique lorsque vous n'avez pas grand-chose d'autre dans votre vie (comme juste avant un week-end) afin que vous ayez le temps de répondre RAPIDEMENT si la première poignée d'utilisateurs commence à avoir des problèmes. De faibles notes au début peuvent vous tuer, mais une réponse rapide par e-mail et des correctifs peuvent totalement racheter l'opinion d'un client sur votre application.
  • Je suis d'accord avec les commentaires précédents sur la réduction de la taille des images autant que possible.
  • Mettez votre code en contrôle de code source s'il ne l'est pas déjà. Vous êtes sûr d'avoir besoin de publier des mises à jour et des correctifs à un moment donné, et le contrôle des sources peut jouer un rôle important à cet égard.
Blumer
la source
4
+1 pour libérer lorsque vous avez le temps de réparer les choses rapidement!
teedyay
Merci pour votre réponse. Je suis sûr que les autres vous en seront reconnaissants également. J'utilise Eclipse Galileo pour créer mon application, et un autre fil sur SO dit que Subversive pour Eclipse est l'un des outils de contrôle de source les plus faciles à utiliser. Sur cette note, le site Web d'Eclipse a une version de Subversive à télécharger, mais je ne vois qu'un lien pour une version Helios. Est-ce que vous ou quelqu'un d'autre savez si ce plugin fonctionne avec Galileo?
dell116
Je ne sais pas, en fait. Je fais mon contrôle de version non intégré à Eclipse car je n'ai pas pris la peine de le configurer. J'utilise TortoiseSVN lorsque je suis sous Windows et les outils de ligne de commande Subversion lorsque je suis sur ma boîte Linux.
Blumer
En parlant de mises à jour, est-ce aussi simple que de reconditionner l'application avec les fichiers mis à jour et de remplacer l'ancien .apk sur le marché par un nouveau qui a un numéro de version différent? Je me souviens avoir essayé de réinstaller mon application en plus d'une installation préexistante (sans désinstaller l'application pour essayer de simuler une "mise à jour"), mais elle a échoué, ce qui m'a fait penser que cela pourrait se produire lorsque j'émets une mise à jour . Mais, pour les besoins de l'argument, le .apk "update" que j'ai installé au-dessus de mon ancienne installation n'avait pas de numéro de version différent dans le manifeste. Merci encore pour tout conseil!
dell116
1
Lorsque vous allez télécharger votre nouveau .apk sur le marché, il vérifiera que le numéro de version a augmenté depuis la dernière fois. Lors de l'installation d'une mise à jour sur un appareil, je pense qu'elle ne vérifie PAS les numéros de version, mais installe plutôt ce que vous lui dites. Je sais que l'installation d'un .apk mis à jour échouera, cependant, si les clés avec lesquelles l'ancienne et la nouvelle version ont été signées ne sont pas les mêmes. Vous devrez d'abord désinstaller l'ancien, puis installer la mise à jour.
Blumer
32

Je ne sais pas si vous avez déjà vu cela, mais vous devriez exercer votre interface utilisateur avec le singe - mon application n'a subi qu'un seul crash, mais elle n'en aurait eu aucun si je l'avais d'abord testée avec Monkey.

RivieraKid
la source
18

J'en ajouterai une évidente mais importante: enregistrez votre clé de signature dans un endroit sûr et effectuez une sauvegarde. Si vous laissez Eclipse gérer cela pour vous, faites attention à l'endroit où il crée votre fichier de clés et enregistrez-en une copie de sauvegarde. Et n'oubliez pas les mots de passe du magasin de clés ou des clés de signature individuelles.

Pourquoi: vous devez signer les mises à jour de votre application avec le même certificat que vous avez utilisé pour signer l'original. Si vous perdez ce certificat (ou perdez l'accès à celui-ci), vous ne pouvez pas mettre à jour votre application. Vous devrez créer une nouvelle fiche sur le marché Android.

zlovelady
la source
1
J'ai presque perdu ma clé en faisant une restauration d'ordinateur ... Heureusement, j'ai eu une sauvegarde!
Ruchir Baronia
17

Quelques points que j'ai tendance à oublier:

  • revérifiez votre minSdkVersiondans le manifeste
  • testez votre application sur un émulateur avec votre minSdkVersion
  • laissez vos amis tester votre application pour voir si elle est explicite

Si vous prévoyez de fournir des mises à jour dans votre application:

  • vous voudrez peut-être ajouter une sorte de dialogue "Quoi de neuf dans cette version"
  • sauvegardez votre ancienne version!
  • n'oubliez pas d'augmenter versionCodeet versionNamedans votre manifeste
Maaalte
la source
6
De bons points, et dans le même ordre d'idées, si votre application utilise une base de données SQLite, assurez-vous que vos procédures de création et de mise à niveau de table sont toutes en bon état de fonctionnement.
Blumer
13

N'oubliez pas de rendre debuggable = false dans votre manifeste. Cela m'a attiré quelques fois.

Je ne suis pas totalement sûr, mais je pense que cela comprendrait alors beaucoup d'informations facilitant un peu la vie des pirates de code.

Je me souviens il y a des années, j'ai accidentellement supprimé la source d'un projet java, horrifiée, j'ai réalisé que je n'avais pas de sauvegarde! J'ai utilisé un utilitaire appelé jad pour décompiler le fichier jar sur le serveur de production, il avait toutes les variables intactes et était presque parfait. Je ne me souviens pas si les commentaires étaient là ou pas, mais je n'ai pas mis beaucoup de commentaires à l'époque quand même :) C'est parce que j'incluais des symboles lors de la compilation.

Kevin
la source
2
android: la valeur par défaut débogable est fausse selon Google developer.android.com/guide/topics/manifest/… . Recherche sur le texte "android: debuggable".
L'original Android
11

En plus des excellentes suggestions ci-dessus, pensez à utiliser Flurry pour l'analyse mobile. Je ne le savais pas lorsque j'ai commencé à publier mes applications, mais maintenant que je les ai mises à jour pour les inclure, j'aime voir ce que les utilisateurs font réellement avec l'application. Cela peut fournir des commentaires et des conseils précieux sur des choses qui peuvent être difficiles à trouver pour les utilisateurs ou qui ne sont pas intéressantes / utiles pour l'utilisateur.

Riches
la source
8

Pour autant que je sache, les commentaires ne sont inclus dans l'application sous aucune forme.

Le seul "piège" pour un développeur que j'ai trouvé lors de la soumission de l'application était les différents graphiques que vous pouvez fournir au marché. Soyez prêt à prendre plusieurs captures d'écran et à créer plusieurs tailles d'icônes d'application ainsi que des graphiques promotionnels.

Du bon côté, préparez-vous à ce que votre application apparaisse instantanément dans la boutique - il n'y a pas de processus d'approbation à suivre pour les applications Android Market.

Matthew Willis
la source
7

Je m'assurerais également que vous disposiez d'une sorte de rapport d'erreurs afin que vous sachiez combien d'utilisateurs rencontrent des erreurs. Vous souhaiterez peut-être conserver une copie de votre ancienne version lors de la mise à jour de votre application au cas où vous auriez besoin de revenir en arrière. Il est également agréable de compiler une liste de contrôle spécifique à votre application que vous pouvez parcourir à chaque fois.

Pour ajouter à cela, vous voudrez peut-être utiliser un trimmer pour supprimer les morceaux de code qui ne sont pas utilisés pour réduire la taille globale du fichier (car l'espace téléphonique est assez limité). Vous pouvez également vouloir obscurcir votre code pour une protection supplémentaire.

ninjasense
la source