j'ai mis le nez dans Android :)

Hello,


 


Ce week end, j'ai mis un peu le nez dans Android car on reprend un peu le taf sur l'appli ClimbingAway Android qui est vieille et pas très optimisée..


 


Chaque fois qu'on fait des accès à  la DB sqlite, ça rame pas mal.


Du coup, j'ai voulu faire comme sur iOS. Dans l'appli iOS, vu le faible volume de données (5000 sites de grimpe), je charge tout en mémoire dans un tableau.


 


Le chargement est quasi instantané et ne cause pas de pb de perfs. Les recherches sont rapides, bref, ça tourne et ce, depuis qques années déjà .


 


J'ai essayé de faire pareil sous Android. Un bon vieux select * suivi d'une boucle sur le curseur pour mettre tout ça en mémoire.


 


Ben croyez le ou non, sur un device récent (One+One), la mise en mémoire en tâche de fond prends entre 5 à  8 secondes... ???


 


C énorme...


Je pige pas...


 


Vous avez déjà  vécu ce genre de choses ?


Quand on voit les jeux qui tournent sur cette plateforme, je me dit qu'on a dû zapper un truc...


 


 


Réponses

  • ça marche bien l'application Android (en nombre de téléchargements) ?


  • LeChatNoirLeChatNoir Membre, Modérateur

    Oui, ça va. Mais les notes commencent à  faire transpirer que les utilisateurs Android l'ont mauvaise de pas avoir la même qualité que sur iOS...


     


    En même temps, vu la bouze que c'est niveau gestion mémoire... (un peu troll mais bon...)


  • J'attaque Android depuis une petite semaine pour le boulot, et je suis effaré par Android Studio. Les simulateurs sont une blague, non ?


     


    Sur un Mac Pro Xeon 8 coeurs, il faut au moins 5 mn pour démarrer la première fois le simulateur, et après chaque Run est un enfer. Il est 10x plus rapide de bosser sur un téléphone branché en USB...


     


    Pour Android en lui même, je n'ai pas assez de recul pour être objectif.


  • AliGatorAliGator Membre, Modérateur
    Il n'y a pas de simulateur sur Android.
    Ce sont des émulateurs. Ca fait toute la différence. C'est aussi pour ça que c'est plus long à  lancer et que c'est la plaie.

    Pas mal de des devs Android utilisent GenyMotion qui permet d'avoir des émulateurs sous forme de VM qui bootent bien plus vite. Mais c'est payant, et ça reste pas aussi rapide qu'un simulateur.


  • Ce sont des émulateurs. Ca fait toute la différence.




    Ok, je regarderai GenyMotion, merci...

  • Je viens de tester GenyMotion, c'est un vrai bonheur Ali :-)


     


    Bon, les accès réseaux sont à  partir de la version payante à  11$/mois, mais pour une entreprise ce n'est pas grand chose...


  • SmySmy Membre
    octobre 2015 modifié #8

    Pas de troll, pas de troll, pas de troll, mais purée, les passages de paramètres entre activités sont surréalistes.


     


    (et je vais arrêter de pourrir ce sujet, mais comme il s'appelle "j'ai mis le nez dans Android" je n'ai pas trop honte)


  • LeChatNoirLeChatNoir Membre, Modérateur

    nan vazy, lâche toi. Ca fait du bien :)


     


    T'as vu les async task ?


     


    Tu trouves pas ça naze ?


  • CéroceCéroce Membre, Modérateur

    T'as vu la gestion des rotations d'écran ?


  • Ouais mais eux rigolent quand ils voient tout ce qu'il faut faire dans le storyboard pour des choses très simples avec leur layout :)



  • nan vazy, lâche toi. Ca fait du bien :)


     


    T'as vu les async task ?




    Oui, ça fait du bien !


     


    Non, pas encore eu besoin de threads


     




    T'as vu la gestion des rotations d'écran ?




    :-)


     




    Ouais mais eux rigolent quand ils voient tout ce qu'il faut faire dans le storyboard pour des choses très simples avec leur layout :)




    Bein tu n'as aucune obligation de faire du storyboard, des xib séparés ça marche bien aussi hein...

  • Bah justement, j'ai fais une course avec un pote pour dev une sorte d'app de caisse enregistreuse très sommaire (il y avait 4 controllers). Avec le storyboard je l'ai littéralement poutré en temps :D Une heure plus tard il y était toujours ^^ En même temps je rigolais bien quand il lançait son "simulateur".


    Perso j'adore le storyboard, évidement faut savoir faire sans, et avec le xib, mais c'est tellement pratique en terme de visu. Puis il y a l'autolayout aussi (oui aussi dans le xib) qui est quand même autre chose qu'en code.


  • Quand je parles Storyboard je voulais dire l'interface utilisateur en faite. Donc Storyboard ou xib.


     


    Quand les développeurs iOS ont plus de difficultés de gérer des devices avec différentes tailles d'écrans, sur Android c'est bien plus simple. Pas besoin de gérer des contraintes etc. D'ailleurs le StackView de Apple qui facilite la chose est une copie de ce qui existe sur Android.  


  • AliGatorAliGator Membre, Modérateur
    Quand je vois comment nos développeurs Android galèrent quand faut adapter la taille des éléments dynamiquement selon la taille d'écran ou s'ils sont sur tablette ou smartphone en même temps c'est moi qui me marre.


    Ok quand tu fais que des écrans où ce sont de simples LinearLayout oui c'était plus chiant à  faire en iOS avant la UIStackView " bien qu'il existait ORStackView ou autres pour y pallier. Mais par contre quand je vois l'appli pour nos clients bancaires où selon la place disponible faut mettre un graphique ou le compacter s'il n'y a pas de place, ça avec Size Classes et Autolayout ça se fait en 2-2. Alors que sur Android ils en ont chié.


    Certes le moteur AutoLayout nécessite un peu + de temps à  prendre en main mais une fois que tu le comprend bien c'est tellement plus puissant que pour faire les UI alambiquées que nous demandent souvent les clients bah c'est du coup bien pratique.
  • Oui mais c'est vrai avec les Size Class ça mais quand des applications sont déployés sur iOS 6 ou 7 minimum tu peux pas te permettre d'utiliser les dernières nouveautés.


     


    Comme sur Android, depuis le départ le nombre de device est important ils ont fait quelque chose de bien mieux pensé que sur iOS où à  priori ça devait rester en 3.5 inch. Maintenant heureusement que iOS évolue de ce coté là  mais faut quand même gérer des versions précédentes.


     


    Et puis ici c'est qu'une partie. De chaque coté (iOS-Android) il y a des choses plus faciles à  gérer par rapport à  l'os concurrent.




  • De chaque coté (iOS-Android) il y a des choses plus faciles à  gérer par rapport à  l'os concurrent.




    C'est ça, il y a de bonnes choses de chaque coté... ...surtout sur iOS.

  • DrakenDraken Membre
    octobre 2015 modifié #18
    Smy, la plaquette de médicaments de ton avatar, c'est pour soigner le nez ?


  • Smy, la plaquette de médicaments de ton avatar, c'est pour soigner le nez ?




    C'est le chat qui a mis son nez, moi juste les doigts.


     

     


    Ce n'est pas une plaquette de médicaments mais des fraises Tagada avec celle du milieu découpée en forme de pomme Apple ::).


     


    Le 1er décembre 2010, j'ai eu la mauvaise idée de vouloir faire un calendrier de l'avant Apple, avec une pomme par jour. Rigolo les premiers jours, taré les suivants : http://www.smy.fr/apple/calendrier-de-l-avent-pomme-apple_403.html

Connectez-vous ou Inscrivez-vous pour répondre.