Android : pb sur Sony Xperia S

16 views
Skip to first unread message

Bruno Marchesson

unread,
Nov 12, 2012, 7:27:12 AM11/12/12
to toulouse-jug
Bonjour à tous,

Je publie depuis un an un petit jeu sur Android nommé Inceptio (https://play.google.com/store/apps/details?id=noon.game.inceptio), et je dois faire face à un bug de l'espace : le jeu fonctionne correctement sur la plupart des terminaux, à l'exception notable du Sony Xperia S.
Dans ce cas, allez savoir pourquoi, le code de placement des boutons du jeu n'est pas exécuté (ou mal), et du coup, le jeu deviens injouable, ce qui me vaut quelques commentaires négatifs sur le store...

Pour entrer dans des détails plus techniques, mon Activity se base sur un FrameLayout pour gérer les placement absolus et le drag and drop des éléments (oui, c'est un peu old-fashion, mais j'ai commencé à coder Inceptio il y a deux ans, quand Froyo était une grande nouveauté peu répandue ;-) ) et je me sers de l'appel à onWindowFocusChanged pour demander le placement des boutons (car il n'y a que là que les méthodes getWidth() et getHeight() de mes éléments graphiques renvoient de vraies valeurs, avant, c'est 0). Et là, c'est le drame : les icônes semblent empilés au lieu d'être répartis, le dernier recouvrant les précédents.

J'ai bien tenté quelques corrections en aveugle (forcer une taille minimale d'écran, ...) , mais sans succès pour l'instant :-(

Est-ce que l'un d'entre vous a déjà eu affaire à ce genre de problème ? Ce device est-il réputé pour avoir un quelconque problème ?

Bruno
En mode "bouteille à la mer"

Romain Mouton

unread,
Nov 12, 2012, 7:32:40 AM11/12/12
to toulou...@googlegroups.com
Bonjour Bruno, 

Dans un premier temps tu dis tenté "quelques corrections en aveugle". Pourquoi ne pas passer par un test sous un émulateur en debugmode ? Tu auras plus de chance de comprendre pourquoi ce problème (size=0, la méthode n'est pas appelée ou autre)

Bon courage, 

Romain


2012/11/12 Bruno Marchesson <bruno.ma...@gmail.com>

--
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes Toulouse JUG.
Pour envoyer un message à ce groupe, adressez un e-mail à toulou...@googlegroups.com.
Pour vous désabonner de ce groupe, envoyez un e-mail à l'adresse toulouse-jug...@googlegroups.com.
Pour plus d'options, consultez la page de ce groupe : http://groups.google.com/group/toulouse-jug?hl=fr

Bruno Marchesson

unread,
Nov 12, 2012, 7:35:09 AM11/12/12
to toulou...@googlegroups.com
Bonjour Romain,

Cela fait partie des mes tentatives infructueuses : j'ai récupéré l'émulateur "officiel" de Sony (avec l'EDK 2.0), et, grande déception, je n'ai pas pu reproduire le problème (les boutons sont affichés correctement !) :-(

Bruno

Mathias Seguy IT

unread,
Nov 12, 2012, 8:12:12 AM11/12/12
to toulou...@googlegroups.com
Bonjour,
Et pourquoi tu gardes pas ton frameLayout de haut niveau dans lequel tu mets ta view de jeux et tu rajoutes un linearLayout pour tes boutons (du coup tu contrôles leur placement independement de la taille de l'écran) et tes deux composants de haut niveau du frameLayout continue de se chevaucher.
Tu peux rajouter un layout- (l'identifiant du Xperia) dans lequel tu mets ton patch spécifique
Et sinon, dernière possibilité tu exclues le Xperia de ta cible des devices compatibles du GooglePlay via ton manifest
Mathias

Bruno Marchesson

unread,
Nov 13, 2012, 2:53:07 PM11/13/12
to toulou...@googlegroups.com
Merci Mathias pour les conseils : en partant de ton idée (placement des boutons dans un Linear Layout), j'ai pu corriger mon problème, en m'appuyant notamment sur la méthode getLocationInWindow() de View pour calculer l'intersection entre mes éléments placés par l'utilisateur et les boutons dont le placement est assuré par le Layout Android.

Je ne sais toujours pas pourquoi ça ne marchait pas sur Sony Xperia S, mais je suis content que cela marche maintenant ;-)

Bruno

Romain Mouton

unread,
Nov 13, 2012, 3:19:29 PM11/13/12
to toulou...@googlegroups.com

Cool si ça marche mieux. Je te conseillerais quand même le RelativeLayout si aucun de tes boutons n'ont besoin d'un placement en pourcentage. (Weight).

Mathias Seguy IT

unread,
Nov 14, 2012, 5:05:41 AM11/14/12
to toulou...@googlegroups.com
Eh beh super alors,
Tant mieux.
Et sinon, j'en profittes, pour celles et ceux qui ne le savent pas encore je fais des formations Android (les meilleures de la place actuellement) et la prochaine aura lieu à Toulouse du 27 au 30 Novembre. N'hésitez pas à me contacter.
A Jeudi surement,
Mathias
ps:sinon, il est très beau ton jeu.
Reply all
Reply to author
Forward
0 new messages