2010-07-02 6 views
12

Je souhaite implémenter une application web avec une interface utilisateur séparée pour mobile et PC. Savez-vous comment puis-je détecter si elle est mobile ou non? En général, avez-vous des suggestions pour implémenter une telle application dans GWT?Détection de navigateur mobile dans GWT

+0

Je ne comprends pas pourquoi cela a été fermé. La réponse acceptée est-elle incorrecte ou trompeuse? Je peux voir le PO demande plus que la question dans le titre, mais quand même ... –

+1

Cette ** question ** ne devrait pas ** être ** fermée! C'est une question très utile et pertinente. – Magick

Répondre

13

Du côté client, vous pouvez utiliser la classe Navigator pour obtenir la plate-forme et la chaîne de l'agent utilisateur:

Navigator.getPlatform 
Navigator.getUserAgent 

identifier les périphériques et plates-formes de cette façon.

6

Il y avait quelques messages concernant la manipulation de la version mobile de Safari dans GWT et les applications tactiles sur Just enough code to be dangerous:

Il pourrait y avoir quelques autres messages là qui pourraient vous intéresser - amusez-vous à creuser :)

+0

ressemble à des liens que vous fournissez ne fonctionnent plus: "Connexion à 170.225.97.112 a échoué" –

+0

@ArtemAO, merci de souligner que - fixe :) –

+0

Pas même un seul lien de travail – Prakash

7

Si vous êtes habitué à développer avec le modèle MVP ou voulez faire une version mobile d'une application existante, je suggère d'utiliser m-gwt. M-gwt fonctionne bien avec les meilleures pratiques de GWT, telles que MVP, car il essaie d'étendre le cœur de GWT avec les fonctionnalités nécessaires pour les mobiles. Beaucoup de widgets trouvés dans le noyau GWT existent dans les versions mobiles dans m-gwt, avec un meilleur support tactile, etc.

Si vous avez l'habitude de développer des applications iPhone, vous pouvez jeter un oeil à NEXT. Les interfaces suivantes utilisent son propre système MVC, alors que cela fonctionne bien avec MVP ou pour faire des versions mobiles de sites GWT existants, certaines personnes préfèrent cela à l'utilisation d'activités et de lieux et il a aussi une jolie bibliothèque de widgets.

GwtMobile a un ensemble similaire de widgets aux interfaces m-gwt et Next. GwtMobile utilise son propre système pour créer des pages où chacune de vos pages étend une classe Page, et vous avez une méthode goTo pour naviguer entre les différentes pages. Certains pourraient préférer utiliser d'autres cadres, vous pouvez utiliser les activités de Google & places à la place. GwtMobile a de bons widgets qui peuvent aussi être utilisés avec d'autres frameworks et il a aussi son propre framework de persistance. M-gwt et GwtMobile ont tous deux leur propre liaison Phonegap afin que vous puissiez télécharger les applications sur Apple App Store et sur le marché Android.

Gwt-mobile-webkit est actuellement pas tant sur mobile comme la seule chose qui est utilisable et non actuellement intégrée dans le noyau GWT est l'API de base de données. Si vous avez besoin Web SQL, puis GWT-mobile-webkit API de base de données est votre ami

Si vous voulez très simple sans fioritures widgets et aucune animation, mais la compatibilité avec les navigateurs l'âge de pierre, ont alors un oeil à informagen mobile gwt Le code est caché dans le maven repository.

L'un des a GWT liaison trouvé à http://emitrom.com/gwt4touch Sencha Touch, javascript cadres les plus populaires, Le problème avec Gwt4Touch est que les widgets dans la version actuelle ne sont pas vraiment des widgets GWT, que des emballages simples autour Sencha Touch.Cela signifie que la version actuelle n'est généralement pas très compatible avec les autres bibliothèques GWT. Selon les développeurs, la version 2.0 avec de vrais widgets GWT devrait sortir fin décembre 2011, date à laquelle elle sera beaucoup plus utilisable.

En général, les bibliothèques GWT mobiles prennent en charge les navigateurs basés sur le Webkit uniquement car ils ont tendance à utiliser des fonctionnalités de navigateur plus récentes et CSS3. Il est possible de le faire fonctionner avec d'autres navigateurs, mais vous devrez créer de nouvelles versions de certains des widgets et des animations qui n'utilisent pas des fonctionnalités CSS3 qu'on ne trouve que dans WebKit. En conclusion, si vous êtes en train de développer une nouvelle application, cherchez dans les frameworks que vous préférez, si vous faites une version mobile d'une application existante, vous êtes le meilleur avec m-gwt, surtout si vous utilisez des activités et des lieux. Il est possible que Gwt4Touch 2.0 fonctionne aussi bien pour faire des versions mobiles d'applications existantes lors de sa sortie, alors gardez un œil sur cela aussi.

+3

Ce poste a déjà été évalué par un modérateur. Voir http://meta.stackexchange.com/questions/114402 –

Questions connexes