2013-02-06 5 views
-1

mon site est réactif, et il a l'air bien sur Safari sur iPhone. Mais quand je navigue sur mon site web à partir de mon application Twitter sur mon iPhone, il semble ignorer la plupart de mon style de téléphone portable et semble très mauvais. Y at-il quelque chose que je peux faire pour détecter si le navigateur est une sorte d'application mobile (comme Twitter) et que la page se charge dans le navigateur mobile par défaut (Safari, navigateur, etc.)? Editer: J'ai strictement utilisé la requête CSS 'media-max' et les éléments de bloc HTML5 ciblés pour changer les largeurs en pourcentages. Sur deux nav, j'ai changé l'attribut d'affichage si nécessaire.Détecter si le navigateur est un navigateur d'application Twitter mobile?

Il s'avère que c'était un problème de mise en cache. Il se charge bien dans l'application Twitter. Bizarrement, ce n'était pas le cas avant, même après plusieurs essais.

+0

Comment avez-vous rendu le site réactif? Quels sont tes tests pour vérifier si le client est mobile? – talkol

Répondre

0

Au meilleur de ma connaissance, vous ne pouvez pas forcer le site à ouvrir dans le navigateur mobile par défaut. La décision d'ouvrir votre site dans l'UIWebView de l'application ou le navigateur Safari par défaut est prise uniquement par l'application Twitter. Si l'application Twitter était assez gracieuse pour fournir une interface pour vous de choisir, il pourrait être possible, mais ils ne le font probablement pas. La plupart des éditeurs d'applications tentent de garder les utilisateurs à l'intérieur de l'application le plus longtemps possible, et les rejeter dans une autre application va généralement à l'encontre de ce principe. Votre meilleur pari est probablement d'essayer d'améliorer la réactivité de votre site à travailler également dans l'application Twitter UIWebView ainsi (ou dans d'autres applications d'ailleurs). Si vous basez votre réactivité sur la largeur de l'écran par exemple (CSS max-width et vos amis), je suppose que cela devrait également fonctionner dans l'application Twitter UIWebView.

Le problème que vous décrivez est en effet très grave et ennuyeux. UIWebViews à l'intérieur des applications n'implémente pas par défaut tous les gestionnaires spéciaux d'Apple (qui fonctionnent dans le Safari d'origine). Le fabricant de l'application devrait les mettre en œuvre manuellement, et 99% de toutes les applications ne le font tout simplement pas. Il en va de même pour de nombreuses autres applications. L'application de recherche native de Google ouvre également des URL à l'intérieur d'un UIWebView - et les sites ont tendance à sembler moche là aussi.

Vous devriez également envisager de déposer un bug avec Twitter et les exhorter à améliorer la compatibilité du site Web lorsqu'il est ouvert dans leur application.

+0

Eh bien, merci pour la réponse. En fin de compte, il semble que c'était un problème de mise en cache. Je viens d'essayer à nouveau, et ça a l'air bien dans l'application Twitter. –

0

Vous ne pouvez pas forcer l'utilisateur à ouvrir le lien à partir d'un navigateur de votre site Web. Android WebView est restreint et, par défaut, n'autorise pas le javascript et les autres extensions.

Vous trouverez plus d'informations ici: Android WebView VS Phone Browser

Questions connexes