Solvedremotedebug ios webkit adapter Windows not able to inspect iOS 11

The issue is of course that the bundled ios-webkit- debug-proxy-win32 doesn't support it.
I installed this https://github.com/google/ios-webkit-debug-proxy then modified iosAdapter.js to use that instead of the bundled version under vs-libimobile - that way I was able to get the debugging to work!

But remotedebug_ios_webkit_adapter keeps logging an error while getting the device version:

...
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
New websocket connection to /ios_116146f0a7fea095bc5254fa3a1b35ec07699c7f/PID:433
Connection established to ws://127.0.0.1:9101/devtools/page/1
iosAdapter.getTargets
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
...

I'm guessing it's unable to get the version of the device from node_modules/vs-libimobile/lib/ideviceinfo.exe, when I run that directly, it says:

socket_receive_timeout: fd=456 recv returned 0
ERROR: Could not connect to lockdownd, error code -3
43 Answers

✔️Accepted Answer

I finally got it to work with a lot of failed attempts. Here were my steps for any future users attempting to do the same. I am running Windows 10 with iOS 11 on my device.

  1. Following from this StackOverflow post, I installed Node, iTunes, and enabled web inspector on my iPad (Settings > Safari > Advanced). Using Powershell as administrator, install the remote debugger: npm install remotedebug-ios-webkit-adapter -g I attempted to run the adapter: remotedebug_ios_webkit_adapter --port=9000. I saw iosAdapter.getTargets over and over, but the page at chrome://inspect/#devices didn't show any remote targets at port 9000. (This is a recreation of the problem).

Now is the part where I try to make the edit for iOS 11.

  1. Download the latest release of https://github.com/google/ios-webkit-debug-proxy/. No need to install scoop. Just get the zip release. I grabbed version 1.8: https://github.com/google/ios-webkit-debug-proxy/releases/download/v1.8/ios-webkit-debug-proxy-1.8-win64-bin.zip

  2. Unzip that release. I chose to put it in the same folder as the broken library (to make the edit easier), in %AppData%\npm\node_modules\remotedebug-ios-webkit-adapter\node_modules\vs-libimobile\ios-webkit-debug-proxy-1.8-win64-bin

  3. Edit the file %AppData%\npm\node_modules\remotedebug-ios-webkit-adapter\out\adapters\iosAdapter.js. On line 132, it reads:
    const proxy = path.resolve(__dirname, '../../node_modules/vs-libimobile/lib/ios_webkit_debug_proxy.exe');
    Change this location to point to the location of the ios_webkit_debug_proxy.exe you unzipped earlier. I changed this line to say:
    const proxy = path.resolve(__dirname, '../../node_modules/vs-libimobile/ios-webkit-debug-proxy-1.8-win64-bin/ios_webkit_debug_proxy.exe');

Now try to run again:

  1. Re-open Chrome to chrome://inspect/#devices and run PowerShell as an administrator. Run remotedebug_ios_webkit_adapter --port=9000 and make sure Chrome is configured to search for a network target on that port (Discover Network Targets > Configure). Open Safari on your iPad. Hopefully this works.

I also had to unplug and re-plug my iPad before this would work. It appeared Windows hadn't yet configured the drivers properly. I can confirm that I also see the repeated error message mentioned by @taneltm above. Seeing this message may be a good confirmation that things should be working.

...
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
iosAdapter.getTargets
error.iosAdapter.getTargets.getDeviceVersion.failed.fallback, device=[object Object]
...

Other Answers:

I was able to get it running to the point where my remote target shows up in DevTools (without having to perform @bdice's workaround), but when I click inspect nothing shows up in the inspector window. Powershell just keeps repeating the same messages he mentioned at the bottom of his post. This is on an 8 Plus running iOS 12.2.

This issue has been opened two years ago, for IOS 11. Two years later, and two IOS versions later, the issue has still not been resolved.
However, the documentation still represents the library as a solution for debugging IOS Safari from Windows. I suggest updateing the documentation to make it as clear as possible that this solution doesn’t currently work.
Installing this tool on Windows isn’t trivial (it requires 4 installations), so presenting this info before hand can save valuable time to other programmers.
@taneltm @bdice

I really appreciate the contribution of the library and the contributors. However, it has been two weeks since I wrote #79 (comment), and two years since this issue was originally opened.

Currently

  • This solution doesn't work for modern IOS for 2 years.
  • The documentation presents the library as a working solution for debugging IOS on Windows.
  • As a result developers install 4 separate installations and to invest their time for a solution we already know doesn't work.

We must update documentation and notify users about this limitation. I'll submit a suggestion.
@auchenberg @JoeMeeks @taneltm @vaskevich @skrat @qkdreyer @paulirish @pandreyn @ninjaonsafari @kriserickson @gogoprog @elitree @cmaraglio @benzhe @arilotter @Sardtok @OliverJAsh @AamuLumi

unfortunately I have the same issue. Following the instructions above didn't solve my problem.

Related Issues:

121
remotedebug ios webkit adapter Windows not able to inspect iOS 11
I finally got it to work with a lot of failed attempts Here were my steps for any future users attem...
11
remotedebug ios webkit adapter Nothing to inspect in chrome://inspect/#devices on iPad iOS 13.3
Also having this issue with both iPhone 6s and iPad Pro with iOS version 13.3 when trying to inspect...
21
lighthouse Crashes on Docker with emulated-form-factor=desktop
I've had the same issue and found a workaround Apparently chrome relies on shared memory which is mo...
19
lighthouse ECONNREFUSED error, I don't understand...
@sonyarianto I was experimenting the same issue on Chrome 60 and adding --no-sandbox flag solved the...
17
lighthouse Question: How to test page behind authentication?
Just a comment if you're using basic authentication you can run lighthouse this way: ...
17
lighthouse Is there a way to generate html report using lighthouse programmatically.
@patrickhulce thank you for that! I'm still confused and I did it work in a hacky way All I want is ...
16
lighthouse Using lighthouse in combination with Puppeteer
This should work: Hello I'm would like to launch a chrome instance connect puppeteer to it to login ...
7
chromedp An example to capture a screenshot of the full page
Here's what I'm using As a bonus it also handles page scaling Click to expand Is it possible to get ...
733
byebug "Sorry, you can't use byebug without Readline"
To fix this (for OSX tested on Sierra) I started encountering this issue inside a Rails app with bye...
164
react native debugger It looks like you are passing several store enhancers to createStore()
I've just had this same problem with almost exactly the same code and have managed to fix it Instead...
47
delve OS X: cannot get thread count
Just want to throw this in here as an alternative to manually checking out and installing the HEAD v...
46
react native debugger redux devtool doesn't get any data
@DesignMonkey remote-redux-devtools by default sends data via remotedev.io Hi.. For some reason my r...
34
delve Version of Delve is too old for this version of Go (maximum supported version 1.12, suppress this error with --check-go-version=false)
The right way is upgrade GoLand to newer and the issue will be fixed Here is a temporary solution: ...
32
vscode react native View tag JS breaks vscode code formatting
I suspect that you may have installed JS-CSS-HTML Formatter plug-in effects try to remove it or disa...
24
vscode react native Breakpoint set but not yet bound
Hi everyone Actual Behavior Breakpoint does not stop code execution Expected Behavior Breakpoint sto...
17
vscode go debug: support function calls via delve 'call'
Answer (as it didn't stand out to me in the above comment after sifting through a sea of other comme...
17
react native debugger Error with redux-saga middleware
If you want to take compose function should use __REDUX_DEVTOOLS_EXTENSION_COMPOSE__ instead of __RE...
15
vscode react native Could not debug. error: more than one device/emulator
Exact same problem here Running adb -s 192.168.0.100:5555 reverse tcp:8081 tcp:8081 always gives err...
11
gdb dashboard UnicodeEncodeError: 'ascii' codec can't encode characters in position 5-7: ordinal not in range(128)
Here's another thing you can try: I'm sorry if I'm shooting in the dark here the way Python handles ...
11
delve could not launch process: stub exited while waiting for connection: exit status 0
In case this helps someone else I found that having a missing/botched 127.0.0.1 localhost entry in /...
8
delve Apple M1 ARM support
@andig pay attention that you go version should be 1.16 darwin/arm64 instead of 1.16 darwin/amd64. ...
7
vscode go Testing API
Change https://golang.org/cl/330809 mentions this issue: src/goTestExplorer: implement a test provid...
5
gomacro Allow to import from Go modules
Commit caa3eae adds support to import from Go modules It requires compiling gomacro with Go >= 1.11 ...
5
delve stub exited while waiting for connection: exit status 0
For whomever stumbles upon this thread: This is due to a MacOS restriction Please answer the followi...
5
delve Issue with variable value and stepping through the code on Apple arm64
FYI stolen from https://youtrack.jetbrains.com/issue/GO-10640: Run go get -u -v github.com/go-delve/...
4
react native debugger In IOS console.log has been mysteriously filtered without any filter applied
I saw the one possibility is that you filtered all logs from index.ios.bundle: If you have do it ple...
108
che event-stream-3.3.6.tgz not found in Yarnpkg.
this is due to : https://blog.npmjs.org/post/180565383195/details-about-the-event-stream-incident to...
107
redux devtools extension Getting Error on my application with new version v 2.16.0
In case anyone is looking for temporary work around(for chrome) Error: You may not call store.getSta...
46
compodoc [BUG] Angular 9.0.5 compodoc not considering module and its component
After switching from -p tsconfig.app.json to -p tsconfig.json it worked We have both files ...
37
ndb Failed to install ndb
sudo npm install -g ndb --unsafe-perm=true --allow-root ftw Steps to reproduce Tell us about your en...
31
apollo client devtools Unable to detect Apollo Client after page reload
Same bug with an electron app using Next.js and hooks My solution right now is to close dev tools an...
20
che Starting eclipse che with parameters in docker outputs "You are missing a mandatory parameter"
I have the same issue when I follow the instructions here: Neither using sudo nor using nightly nor ...
20
mailcatcher Ruby 1.9 no longer supported due to Mailcatcher's dependencies?
Try this which worked for me on ruby 1.9.3-p551 with an empty gemset: Despite this error: ...
20
redux devtools extension Redux Dev Tools Extension version 2.16.0 clashing my working code
2.16.1 is available on Crome Store Please let me know if it helps. My code is working fine when the ...
19
compodoc [BUG] Incompatible with Angular 8
with angular 8 use compodoc -p tsconfig.json -s and everything is working including routing ...
16
redux devtools extension Getting ERROR: Blocked a frame with origin "http://localhost:3000" from accessing a frame with origin "null".
I did manage to resolve my firebase/Redux DevTools issue Getting error: VM1651:1123 Uncaught Securit...
15
webpack dashboard Cannot integrate with webpack-dev-server
you should try this https://github.com/FormidableLabs/webpack-dashboard/blob/master/docs/getting-sta...
15
redux devtools extension Actions must be plain objects. Use custom middleware for async actions. :(
Yep deployed and fixed it I was doing this before: But switching it to this fixed the error: thanks ...
14
kubefwd kubefwd does not work for ClusterIP without any selectors
I ended up doing something like this I created an ExternalName service as above Then I ran a tempora...
13
redux devtools extension getting 'whitelist' of undefined in new version (2.16.0)
Published 2.16.2 which includes 969619c patch It should be available on Chrome Store in an hour. ...
12
webpack dashboard Could not load module/asset sizes. after upgrade from 0.4.0 -> 1.0.0-3
@jpduckwo Thanks That error is resolved after upgrading to 1.0.0-7 But getting new error Any leads t...
12
hotel What would be a better tld than .dev? [Feedback welcome]
http://www.faqs.org/rfcs/rfc2606.html - reserved TLDs guaranteed to never collide: .test .example .i...
11
msw server.use() or server.resetHandlers do not appear to be working within/between tests
I have tried as above and it works Let me know if I'm wrong Describe the bug server.use() or server....
11
webdriverio Actions example does not work
@christian-bromann the problem with gitter is questions won't get found as easy as in the issues (at...
10
webpack dashboard Dashboard only shows log
I removed the port from configuration and it worked for me. Please provide a description of the bug ...
9
redux devtools extension Redux Uncaught Error: It looks like you are passing several store enhancers to createStore()
try this Hi Since a couple of days I can't access to my remote web appplication anymore while enabli...
8
msw Failed to construct 'Response': The status provided (0) is outside the range [200, 599]
Based on the amazing job done by @timdeschryver and other participants of this thread I've added a p...
6
msw Error: Error: connect ECONNREFUSED 127.0.0.1:80
Hi @slim-hmidi your configuration seams right :) Could I ask you to replace with and check then your...
5
webdriverio Disable Chrome clipboard popup/notification WebdriverIO
Hi all I managed getting it working for me I insert these options inside wdio.conf.js capabilities: ...
4
devtron require('devtron').install()
I changed some fields in the manifest.json file and seems to work for me: Use patch-package to creat...