Avec la récente version de Chrome pour iOS, je me demandais comment activer le débogage à distance pour Chrome iOS?
Mise à jour: Avec la version iOS 6, le débogage à distance peut maintenant être effectué avecSafari.
Mise à jour:
Ceci n'est pas la meilleure réponse, veuillez suivre les conseils de gregers '.
Nouvelle réponse:
Utilisez Weinre .
Ancienne réponse:
Vous pouvez maintenant utiliser Safari pour le débogage à distance. Mais cela nécessite iOS 6.
Voici une traduction rapide de http://html5-mobile.de/blog/ios6-remote-debugging-web-inspector
Comme indiqué par réponse de Simons , il faut désactiver la navigation privée pour que le débogage à distance fonctionne.
Paramètres> Safari> Navigation privée> OFF
La réponse sélectionnée est uniquement pour Safari. Pour le moment, il n'est pas possible de faire un débogage à distance réel dans Chrome sur iOS, mais comme avec la plupart des navigateurs mobiles, vous pouvez utiliser WeInRe pour un débogage simple. C'est un peu fastidieux à configurer, mais vous permet d'inspecter le DOM, de voir son style, de le changer et de jouer avec la console.
Installer:
npm install -g weinre
weinre --boundHost -all-
Le bookmarklet est un peu plus compliqué à installer. C'est plus facile si vous avez activé la synchronisation des favoris pour les ordinateurs de bureau et mobiles Chrome. Copiez l'URL du bookmarklet à partir du serveur Weinre local (comme ci-dessus). Malheureusement, cela ne fonctionne pas car il n'est pas correctement encodé dans les URL. Alors ouvrez la console JavaScript et tapez:
copy(encodeURI('')); // paste bookmarklet inside quotes
Vous devriez maintenant avoir le bookmarklet encodé en URL dans votre presse-papiers. Collez-le dans un nouveau signet sous Signets mobiles. Appelez-le weinre ou quelque chose de simple à taper. Il devrait être synchronisé sur votre mobile assez rapidement, alors chargez la page que vous souhaitez inspecter. Puis tapez le nom du signet dans la barre d'URL, et vous devriez voir le bookmarklet comme une suggestion de complétion automatique. Cliquez dessus pour exécuter le code bookmarklet :)
Vous ne pouvez pas déboguer Chrome à distance directement sur iOS pour le moment. Il utilise un uiWebView qui peut être légèrement différent de Mobile Safari.
Vous avez quelques options.
Option 1: Débogage à distance de Safari mobile à l'aide de l'inspecteur de Safari. Si votre problème se reproduit dans Mobile Safari, c'est définitivement la meilleure solution. En fait, passer par le simulateur iOS est encore plus facile.
Option 2: Utilisez Weinre pour une expérience de débogage allégée . Weinre n'a pas beaucoup de fonctionnalités mais parfois c'est assez bon.
Option 3: Déboguer à distance un bon uiWebView qui fonctionne de la même manière.
Voici le meilleur moyen de le faire. Vous aurez besoin de installer XCode .
urlString
par l'URL que vous souhaitez tester.A ma connaissance, Google Chrome utilise UIWebView de l'iOS plutôt qu'une implémentation complète de Chrome comme son homologue Android.
De nombreuses consoles distantes fonctionnent bien. http://farjs.com est mon projet et j'ai pu déboguer avec succès les problèmes spécifiques à Crome iOS et ne se produisant pas dans Safari. (et probablement tous les autres navigateurs mobiles)
Le problème est que l’injection du code de débogage est légèrement délicate car Chrome ne vous permet pas d’installer des bookmarklets.
Au lieu de cela, vous pouvez ouvrir un onglet de la page que vous souhaitez déboguer et un autre sur farjs.com, puis cliquez sur "le bookmarklet".
Copiez le code JS du bookmarklet, revenez au premier onglet, avec la page à déboguer, puis collez le code du bookmarklet dans la barre d’emplacement.
La dernière étape consiste à faire défiler la barre d’emplacement jusqu’au début et à ajouter «javascript:», car Chrome le supprimera.
Je ne l'ai pas essayé, mais Le proxy de débogage WebKit iOS ((ios_webkit_debug_proxy/iwdp) est censé vous permettre de déboguer à distance UIWebView. À partir du fichier README.md
Le ios_webkit_debug_proxy (alias iwdp) permet aux développeurs d’inspecter MobileSafari et UIWebViews sur réel et des appareils iOS simulés via l'interface utilisateur de Chrome DevTools et le protocole de débogage à distance de Chrome. Outils de développement les demandes sont traduites dans le service Remote Web Inspector d’Apple appels.
La «navigation privée» doit également être désactivée.
Paramètres> Safari> Navigation privée> OFF
Vorlon.JS est idéal pour le débogage à distance d’iOS ou de tout autre client.
npm i -g vorlon
vorlon
<script src="http://<yourExternalIP>:1337/vorlon.js"></script>
Notez que cette approche peut également être utilisée pour déboguer des applications ne s'exécutant pas sur localhost à l'aide de ngrok. Voir https://stackoverflow.com/a/45443203/2073920 pour plus de détails
Références
Avertissement
Je ne suis qu'un utilisateur et je ne suis pas affilié à Vorlon.JS et ngrok
Adobe Edge Inspect ( https://creative.Adobe.com/products/inspect ) est un autre moyen de déboguer tous vos périphériques mobiles IOS et Android (pas de Windows Phone cependant). Il utilise weinre pour l'inspection/modification DOM à distance. Ce n'est pas la plus rapide des méthodes, mais cela fonctionne sous Windows.
Remarque: je n'ai aucune affiliation avec les créateurs de Ghostlab, Vanamco.
Il était important pour moi de pouvoir déboguer des problèmes spécifiques à Chrome. Je me suis donc mis à la recherche de solutions pouvant aider à résoudre ce problème. J'ai fini par jeter mon argent sur Ghostlab 3 . Je peux tester les navigateurs mobiles Chrome et Safari comme si je les visualisais sur mon ordinateur. Cela me donne simplement une adresse LAN à utiliser pour tout périphérique que je souhaite déboguer. Chaque application utilisant cette adresse apparaîtra dans la liste de Ghostlab.
Hautement recommandé.
Il y a un bogue ouvert sur Chromium: https://bugs.chromium.org/p/chromium/issues/detail?id=584905
Malheureusement, pour cela, Apple doit ouvrir une API dans WKView, après quoi le débogage peut-être sera disponible à partir de Safari.
J'utilise remotedebug-ios-webkit-adapter, .__ fonctionne bien pour moi avec IOS et le débogueur ouverts dans Chrome sous Windows 10.
Sera heureux si cela aide quelqu'un Lien
Même moi, je recherche la même fonctionnalité et, à ce jour, elle n’a pas encore été mise en œuvre. Je peux penser à deux options cependant,
J'ai remarqué que les comportements de Chrome et de Safari sont assez identiques. Chrome prend même en charge le Gyroscope et d’autres événements connexes pris en charge par Safari. Je suis en train de déboguer mon application Web en activant la console de débogage sur Safari (Via Paramètres-> Safari)
Essayez également Adobe Shadow, qui permet le débogage/inspection à distance et la synchronisation.
HTH.