IOS के लिए Chrome की हालिया रिलीज़ के साथ, मैं सोच रहा था कि आप Chrome iOS के लिए दूरस्थ डिबगिंग कैसे सक्षम कर सकते हैं?
अपडेट: iOS 6 की रिलीज के साथ, अब रिमोट डिबगिंग सफारी के साथ किया जा सकता है ।
IOS के लिए Chrome की हालिया रिलीज़ के साथ, मैं सोच रहा था कि आप Chrome iOS के लिए दूरस्थ डिबगिंग कैसे सक्षम कर सकते हैं?
अपडेट: iOS 6 की रिलीज के साथ, अब रिमोट डिबगिंग सफारी के साथ किया जा सकता है ।
जवाबों:
अपडेट करें:
यह वह जगह है नहीं सर्वश्रेष्ठ उत्तर अब, का पालन करें gregers 'सलाह।
नया उत्तर:
वेनरे का उपयोग करें ।
पुराना उत्तर:
अब आप रिमोट डिबगिंग के लिए सफारी का उपयोग कर सकते हैं। लेकिन इसके लिए iOS 6 की जरूरत है।
यहाँ http://html5-mobile.de/blog/ios6-remote-debugging-web-inspector का त्वरित अनुवाद है
जैसा कि सिमंस ने कहा है कि दूरस्थ डिबगिंग कार्य करने के लिए निजी ब्राउज़िंग को बंद करने की आवश्यकता है।
सेटिंग्स> सफारी> निजी ब्राउज़िंग> बंद
चयनित उत्तर केवल सफारी के लिए है। फिलहाल iOS पर क्रोम में वास्तविक रिमोट डिबगिंग करना संभव नहीं है, लेकिन अधिकांश मोबाइल ब्राउज़रों के साथ आप कुछ सरल डीबगिंग के लिए WeInRe का उपयोग कर सकते हैं । यह स्थापित करने के लिए थोड़ा काम है, लेकिन आपको DOM का निरीक्षण करने, स्टाइल देखने, DOM को बदलने और कंसोल के साथ खेलने देता है।
स्थापित करना:
npm install -g weinre
weinre --boundHost -all-
बुकमार्कलेट स्थापित करने के लिए थोड़ी अधिक परेशानी है। यह आसान है अगर आपने डेस्कटॉप और मोबाइल क्रोम दोनों के लिए बुकमार्क-सिंक चालू कर दिया है। स्थानीय weinre सर्वर से बुकमार्कमार्क यूआरएल की प्रतिलिपि बनाएँ (ऊपर के रूप में)। दुर्भाग्य से यह काम नहीं करता क्योंकि यह url- एन्कोडेड ठीक से नहीं है। तो जावास्क्रिप्ट कंसोल खोलें और इसमें टाइप करें:
copy(encodeURI('')); // paste bookmarklet inside quotes
अब आपके क्लिपबोर्ड में url- एन्कोडेड बुकमार्कमार्क होना चाहिए। इसे मोबाइल बुकमार्क के तहत एक नए बुकमार्क में पेस्ट करें । इसे वीनरे या कुछ सरल टाइप करें। यह आपके मोबाइल पर बहुत तेजी से सिंक होना चाहिए, इसलिए उस पृष्ठ को लोड करें जिसे आप निरीक्षण करना चाहते हैं। फिर url-bar में बुकमार्क नाम टाइप करें, और आपको बुकमार्क को एक ऑटो-पूर्ण-सुझाव के रूप में देखना चाहिए। बुकमार्क कोड चलाने के लिए इसे क्लिक करें :)
Ctrl-Shift-B
यदि यह दृश्यमान नहीं है तो टूलबार दृश्यमान करें )।
npm install -g weinre
मेरे लिए काम नहीं कर रहा था। इसलिए मुझे इसे संस्करण के साथ चलाना पड़ा npm install -g weinre@2.0.0-pre-I0Z7U9OV
। नवीनतम संस्करण यहाँ npmjs.com/package/weinre देखें ।
वर्तमान में आप iOS पर सीधे Chrome डीबग नहीं कर सकते हैं। यह एक uiWebView का उपयोग करता है जो मोबाइल सफारी की तुलना में भिन्न रूप से कार्य कर सकता है।
आपके पास कुछ विकल्प हैं।
विकल्प 1: सफारी के निरीक्षक का उपयोग करके रिमोट-डिबग मोबाइल सफारी। यदि आपका मुद्दा Mobile Safari में पुन: पेश होता है, तो यह निश्चित रूप से जाने का सबसे अच्छा तरीका है। वास्तव में, आईओएस सिम्युलेटर के माध्यम से जाना और भी आसान है।
विकल्प 2: स्लिमिंग डाउन डीबगिंग अनुभव के लिए वेनरे का उपयोग करें । Weinre में बहुत अधिक विशेषताएं नहीं हैं लेकिन कभी-कभी यह काफी अच्छा होता है।
विकल्प 3: दूरस्थ डिबग एक उचित uiWebView जो समान कार्य करता है।
यहाँ यह करने का सबसे अच्छा तरीका है। आपको XCode इंस्टॉल करना होगा ।
urlString
उस URL को बदलें जिसे आप परीक्षण करना चाहते हैं।मेरी समझ से, Google Chrome Android समकक्ष की तरह क्रोम के पूर्ण विकसित कार्यान्वयन के बजाय iOS के UIWebView का उपयोग करता है।
कई रिमोट कंसोल ठीक काम करते हैं। http://farjs.com मेरी परियोजना है, और मैं क्रोम iOS के लिए विशिष्ट मुद्दों को सफलतापूर्वक डीबग करने में सक्षम था और इसका उपयोग करके सफारी में नहीं हो रहा था। (और शायद सभी अन्य मोबाइल ब्राउज़र)
समस्या यह है कि डिबगिंग कोड को इंजेक्ट करना थोड़ा मुश्किल है क्योंकि क्रोम आपको बुकमार्कलेट स्थापित करने की अनुमति नहीं देता है।
इसके बजाय आप उस पृष्ठ पर एक टैब खोल सकते हैं जिस पर आप डीबग करेंगे, और farjs.com पर एक और फिर "बुकलेट" पर क्लिक करें
बुकमार्क जेएस कोड को कॉपी करें, पहले टैब पर वापस जाएं, उस पृष्ठ के साथ जिसे डिबग किया जाना चाहिए, और स्थान पट्टी में बुकमार्क कोड पेस्ट करें।
अंतिम चरण स्थान पट्टी की शुरुआत में स्क्रॉल करना और "जावास्क्रिप्ट:" जोड़ना है, क्योंकि क्रोम इसे हटा देगा।
मैंने इसे आज़माया नहीं है, लेकिन iOS WebKit डीबग प्रॉक्सी (ios_webkit_debug_proxy / iwdp) माना जाता है कि आपको UIWebView को दूरस्थ रूप से डिबेट करने देता है। README.md से
Ios_webkit_debug_proxy (उर्फ iwdp) डेवलपर्स को Chrome DevTools UI और Chrome रिमोट डिबगिंग प्रोटोकॉल के माध्यम से वास्तविक और सिम्युलेटेड iOS उपकरणों पर MobileSafari और UIWebViews का निरीक्षण करने की अनुमति देता है । DevTools अनुरोधों का अनुवाद Apple के रिमोट वेब इंस्पेक्टर सेवा कॉल में किया जाता है।
Vorlon.JS का उपयोग iOS या किसी अन्य क्लाइंट के दूरस्थ डीबगिंग के लिए किया जा सकता है।
npm i -g vorlon
vorlon
<script src="http://<yourExternalIP>:1337/vorlon.js"></script>
ध्यान दें कि इस दृष्टिकोण का उपयोग लोकलहोस्ट पर चलाने वाले ऐप्स को डीबग करने के लिए भी किया जा सकता है जो एनरोक का उपयोग कर रहे हैं । देखें https://stackoverflow.com/a/45443203/2073920 जानकारी के लिए।
अस्वीकरण
मैं सिर्फ एक उपयोगकर्ता हूं और मैं Vorlon.JS और ngrok से संबद्ध नहीं हूं
आपको 'निजी ब्राउज़िंग' भी बंद करनी होगी।
सेटिंग्स> सफारी> निजी ब्राउज़िंग> बंद
यहां तक कि मैं उसी सुविधा की तलाश में हूं, और आज के रूप में, अभी तक इसे लागू किया जाना है। मैं हालांकि दो विकल्पों के बारे में सोच सकता हूं,
मैंने देखा कि क्रोम और सफारी का व्यवहार काफी समान है; क्रोम यहां तक कि जाइरोस्कोप और अन्य संबंधित घटनाओं का समर्थन करता है जो सफारी द्वारा समर्थित हैं। मैं वर्तमान में सफारी पर डिबग कंसोल (सेटिंग्स के माध्यम से- सफारी) को सक्षम करके अपने वेब ऐप को डिबग कर रहा हूं
एडोब शैडो भी आज़माएं, जो रिमोट डीबगिंग / निरीक्षण और सिंक की अनुमति देता है।
HTH।
एडोब एज इंस्पेक्ट ( https://creative.adobe.com/products/inspect ) आपके सभी मोबाइल उपकरणों IOS और Android (कोई विंडोज फोन हालांकि) को डिबग करने का एक और तरीका है। यह दूरस्थ DOM निरीक्षण / परिवर्तन के लिए weinre का उपयोग करता है। यह विधियों का सबसे तेज़ नहीं है, लेकिन यह विंडोज पर काम करता है।
क्रोमियम पर एक खुला बग है: https://bugs.chromium.org/p/chromium/issues/detail?id=584905
दुर्भाग्यवश वे ऐसा करने के लिए WKView में एक एपीआई खोलने के लिए Apple पर निर्भर हैं, जिसके बाद शायद डीबगिंग सफारी से उपलब्ध होगी।
नोट: मेरा घोस्टलाब के रचनाकारों वनामको के साथ कोई संबंध नहीं है।
क्रोम-विशिष्ट समस्याओं को डीबग करने में सक्षम होना मेरे लिए महत्वपूर्ण था, इसलिए मैंने कुछ ऐसा खोजने की कोशिश की जिससे मुझे मदद मिल सके। मैंने घोस्टलैब 3 पर अपना पैसा खुशी से फेंक दिया । मैं Chrome और Safari मोबाइल ब्राउज़र का परीक्षण कर सकता हूं जैसे कि मैं उन्हें अपने डेस्कटॉप पर देख रहा था। यह सिर्फ मुझे एक लैन एड्रेस देता है जिसका उपयोग मैं किसी भी डिवाइस के लिए कर सकता हूं जिसे मैं डिबग करना चाहता हूं। उस पते का उपयोग करने वाला प्रत्येक एप्लिकेशन घोस्टलैब की सूची में दिखाई देगा।
अत्यधिक सिफारिशित।
सफारी डेस्कटॉप आईओएस खोलें
विकसित -> उत्तरदायी डिजाइन मोड
डिवाइस के तहत "अन्य" पर क्लिक करें
इसे चिपकाएँ: मोज़िला / 5.0 (iPad, मैक OS X की तरह CPU OS 10_2_1) AppleWebKit / 602.1.50 (KHTML, Gecko की तरह) CriOS / 56.0.2924.79 मोबाइल / 14D27 सफारी / 602.1
सफारी निरीक्षण उपकरण का उपयोग करें।
अस्वीकरण: मैं BrowserStack पर काम करता हूं। [पुष्टि की गई] कि क्या मुझे इसे पोस्ट करने की अनुमति है ( क्या मैं सुझाव दे सकता हूं कि कंपनी का कोई उत्पाद किस पर काम कर रहा है? )
IOS पर डीबग सफारी (अभी तक क्रोम के लिए नहीं, अधिक जानकारी के लिए आगे पढ़ें।)
यह कैसे काम करता है?
रियल फोन के साथ DevTools का उपयोग करना
तत्वों पर होवर करें, HTML, सीएसएस को उसी तरह संपादित करें जैसे डेस्कटॉप ब्राउजर डिवुल्स काम करते हैं।
DevTools का उपयोग करके वास्तविक फोन में जावास्क्रिप्ट निष्पादित करना
Console
टैब पर स्विच करें , जावास्क्रिप्ट कोड निष्पादित करें, console.log()
आउटपुट वगैरह चेक करें ...
नेटवर्क टैब, रिक्वेस्ट हेडर, प्रतिक्रिया वगैरह ...
BrowserTack पर DevTools के लिए समर्थन?
DevTools पर उपलब्ध हैं:
क्लाइंट ब्राउज़र को क्रोम या फ़ायरफ़ॉक्स होना चाहिए। इसका मतलब है कि आपको ब्राउज़रस्टॉक रियल डिवाइस देवटूल का उपयोग करने के लिए मैकओएसएक्स या विंडोज पर क्रोम या फ़ायरफ़ॉक्स ब्राउज़र का उपयोग करने की आवश्यकता है।
नोट: आपको सभी वास्तविक उपकरणों पर परीक्षण करने के लिए एक योजना खरीदने की ज़रूरत है, एक नि: शुल्क उपयोगकर्ता के रूप में, आपको रियल एंड्रॉइड डिवाइस (टैबलेट्स) और रियल आईओएस डिवाइसों के जोड़े (टैबलेट्स शामिल हैं) के कुछ जोड़े मिलेंगे। इसके अलावा, रियल डिवाइसेज शब्द पर जोर दिया जाता है क्योंकि वे एमुलेटर भी प्रदान करते हैं।
इस बारे में अधिक जानकारी, कृपया मोबाइल फीचर पेज पर DevTools अनुभाग देखें ।