Japan forever
Un travail de diplôme pas comme les autres
Catégories
Archives
Tuile #4

Cette semaine n’est vraiment pas ma semaine. Vous allez très vite vous apercevoir pourquoi. Dans ces moments là je dois dire que j’aurais qu’une envie c’est de rentrer au plus vite chez moi et de plus en sortir. M’enfin, on peut rien y faire sauf y faire face et faire avec :D

Comme vous le savez très certainement, je dispose depuis moins d’une semaine d’un téléphone mobile pour mon projet. J’étais très content, et lundi j’ai voulu me mettre à faire la géo-localisation au moyen du GPS. Seulement voilà, c’était sans compter un petit problème de rien du tout.

Je m’explique. Pour faire de la localisation sur l’émulateur c’est pas très compliqué, il suffit de configurer quelques trucs. Bon déjà pour faire ça il m’a fallu un après-midi parce que j’ai dû découvrir ça au petit bonheur la chance et avec quelques informations sporadiques. Finalement, j’y suis arrivé. Je peux vous dire que je me suis empressé de compléter mes documents de projet pour ne pas oublier comment faire et potentiellement créer un guide de démarrage pour développeur en herbe.

Bien après avoir finalement réussi sur l’émulateur, j’ai voulu downloader l’application sur mon mobile. Et là, c’est le début des ennuis. Je reçois une erreur du genre : « The software contains some errors ». Chouette mais ça dit pas quoi. Après quelques recherches, je comprends qu’un des paramètres configurés (TrustedAPID) n’est pas valide. Du coup je me dis, je l’enlève (sans trop y croire). Effectivement, après avoir enlevé ce param, j’ai une « SecurityException ». Donc en gros et pour faire simple – Pas de TrustedAPID valide, pas de géo-localisation possible.

Bon ok, je me dis que c’est un contretemps. Suffit de comprendre comment acquérir un TrustedAPID. Et là c’est le drame. Aucune info. Le peu d’infos me laisse deviner qu’il s’agit d’un processus long, fastidieux et surtout réservé aux compagnies qui ont de l’argent pour faire de l’argent. En gros, faut être ce qu’ils appellent chez NTT Docomo, un Trusted Content Provider, soit un un fournisseur de contenu officiel/reconnu/de confiance… En gros, pas moyen d’avoir ce statut en étant juste un pauvre étudiant en plein travail de diplôme pour faire des tests.

Par conséquent, mon projet est quelque peu remis en question si je ne peux pas faire de géo-localisation. Alors je me dis que je me suis peut-être planté en choisissant cet opérateur, mais en regardant les autres, c’est pas forcément mieux. Avec les autres je peux utiliser le GPS, mais pour mettre à dispo l’application, je dois passer par un processus de validation qui est surement long et pas forcément coulant de source. Donc, finalement mon choix n’est ni spécialement bon ni spécialement mauvais.

A présent, tout ce qui me reste à faire c’est trouver des alternatives. Plusieurs sont disponibles après quelques longues et pénibles recherches :

  1. Utiliser les QR Code (Code barre 2D) comme tag géographique. On les places à des endroits, on les répertorie étant aux endroits voulus, le joueur les capture avec son téléphone et on fait l’association entre les deux. C’est pas très pratique mais c’est une option. On perd toute la notion de suivi de déplacement, du fait que ce n’est plus qu’une localisation à des moments clés du jeu.
  2. Ne pas utiliser du tout la géo-localisation ou la déduire des quêtes. C’est le pire des scénarios parce qu’on ne peut être sûr de rien et ne plus rien faire par rapport à la géo. Je ne vais pas plus loin dans cette voie.
  3. Utiliser un tracker GPS externe qui communiquerait avec le serveur de jeu de manière externe, et après faire l’association entre ce tracker et le joueur sur le serveur. Ceci implique de connaitre parfaitement la technologie du tracker pour être sûr qu’on puisse utiliser les données de manière facile. Il faut acheter un ou plusierurs trackers qui ne sont pas bon marché et souscrire à des abonnements auprès de fournisseur de service. Il s’agit donc d’une solution très onéreuse en comparaison de l’idée de base et des idées proposées en dehors de celle-ci.
  4. Une autre option est d’utiliser une possibilité offerte par NTT Docomo de récupérer la position du GPS via une page web (iMode) sur le mobile. Pour ce faire une simple addition de « lcs » dans le tag <A HREF= » »> pour donner <A HREF= » » lcs> qui permet d’ouvrir une boite de dialogue demandant quelle localisation utiliser et ensuite si oui ou non on autorise l’envoi. Il n’est pas possible de bypasser cet aspect de validation d’envoi, ce qui fait qu’il n’est pas non plus possible d’envoyer périodiquement les informations de localisation au serveur. En terme de gameplay, ça implique de repenser une partie du jeu pour inclure la localisation comme faisant partie des manipulations que le joueur doit faire. C’est pas forcément des plus pratiques mais c’est sûrement actuellement la meilleure solution dont je dispose. Avec cette solution, le design de l’application serait totalement repensé, pour finalement n’être plus qu’une interface web (iMode) pour le téléphone et ne plus faire de client lourd sur le téléphone, ceci dans le but d’éviter de casser le flux du jeu. Il n’est pas possible de passer facilement de l’un à l’autre entre l’application (iAppli) et le site web (iMode) (encore une histoire de TrustedAPID ou simplement pas de fonctionnalité à disposition pour ça).
  5. Obtenir un TrustedAPID, mais c’est clairement utopique à mon sens, ou alors c’est que j’aurais beaucoup de chance. Il me reste encore quelques pistes à explorer de ce côté mais les chances sont très minces.

Au final, ça chamboule vraiment beaucoup mon projet, mais il faut avouer que ça fait partie des aléas de ce genre de projet. C’est à la fois super rageant et très intéressant parce que ça force à rebondir et trouver de nouvelles voies à explorer. C’est sûr que cette mésaventure m’a fait perdre énormément de temps et que par conséquent je vais devoir revoir mes exigences à la baisse pour arriver à faire quelque chose d’intéressant et le plus amusant possible.


Commentaires
Par Jonas le 29 août 2008

Petite question conne, un Nokia N95 n’aurait pas suffit?

Par Prevole le 29 août 2008

@Jonas : C’est très pertinent comme question mais je t’avoue que je n’ai pas regarder au modèle de téléphone pour commencer. Pourquoi ça ? C’est absolument simple et sans ambigüité. Chaque opérateur dispose de ces modèles, lesquelles ne peuvent pas être utiliser chez les concurrents. Donc dans ce contexte je n’ai pas regarder au mobile en premier mais à l’opérateur et sa plateforme de développement (bien que finalement, se soit du pareil au même dans les faits pour les trois).

Il se peut très bien que le N95 de Nokia soit un modèle de NTT Docomo, mais toutefois, il porte alors un autre nom et finalement doit être tout aussi bridé que les autres. Du moment que tu prends un téléphone local avec un abonnement d’un opérateur local tu es contraint. Je dois dire que je m’attendais à une certaine avance technologique mais pas à autant de barrière. Mais c’est sur qu’en matière de service ils sont bien en avance. Mais tous leurs services me font une belle jambe dans la mesure que je peux rien en faire si je m’appelle pas Google, CNN ou dieu sait qui d’autre :D

Par Jonas le 29 août 2008

Wow, pas terrible :/

Moi aussi ici quand j’ai voulu acheter une carte pre-paid ils m’ont demande mon IMEI (le numero du natel), je sais pas s’ils brident ou quoi, mais c’est pas terrib’

Par Prevole le 29 août 2008

@Jonas : C’est clair c’est pas terrible. Je peux te dire que je suis bien surpris de l’éco-système de la téléphonie mobile ici. C’est très bridé et si tu es pas une grosse société tu as aucune chance d’obtenir l’opportunité de développer un projet comme le mien.

Mais bon c’est pas grave, on trouve d’autres solutions et on fait avec :D Pas trop le choix ! Ça fait partie des aléas des projets. Ça pimente la vie.

Par Sanne le 29 août 2008

Au Japon il n’y a pas que les natels qui soient bridés ! :arf: :arf: :arf: :arf: :arf: (oui, c’est vrai, elle est facile !).

Quand aux problèmes que tu as devant toi dans ton projet, et bien n’est-ce pas pour les résoudre que les ingénieurs sont là ? :)