Comments (10)
Hi Umar,
Yes, good idea. I'll modify the proxy to add a command-line arg for the
URL (http:// or local file://), so you can point it to different DevTools
files.
The proxy currently uses an old copy of DevTools that's hosted on appspot.
Ideally we could use Blink's Git website URL, but it looks like they only
provide marked-up HTML views of files, not "raw" views. I'll send them an
email. Once this works, I'll change the proxy's default URL.
Lastly, I plan to add support to read Chrome's "resources.pak" file. That
way the proxy will reuse Chrome's local DevTools files by default, with no
special setup or network access! I've already figured out the pak format
and indexing, but it'll be a couple weeks before I find time to implement
this.
Todd
from ios-webkit-debug-proxy.
Hey Todd, that's great, thank you for the update.
from ios-webkit-debug-proxy.
Hi Umar, I just committed support for a new command-line argument to specify the DevTools URL. Please try it out!
Here's info from `ios_webkit_debug_proxy --help`: -f, --frontend URL DevTools frontend UI path or URL, defaults to: http://chrome-devtools-frontend.appspot.com/static/18.0.1025.74/devtools.html E.g. to use a local WebKit checkout: /usr/local/WebCore/inspector/front-end/inspector.html E.g. to use a remote server: http://foo.com:1234/bar/inspector.html The value must end in ".html" --no-frontend Disable the DevTools frontend. As noted above, the default URL is the same appspot server as before, but I plan to change that soon, once we figure out where to host our copy of DevTools -- options include chromium.googlesource.com, gstatic.com, and our own webpagetest.org. Blink's Git repo contains ".qrc" files that are compiled into ".js", so if you run from the repo as-is the inspector won't load, but the proxy will print the easy fix: Missing code-generated WebKit file: /usr/local/WebCore/inspector/front-end/InspectorBackendCommands.js A matching ".qrc" exists, so try generating the ".js": cd /usr/local/WebCore/inspector/front-end/.. mkdir -p tmp ./CodeGeneratorInspector.py Inspector.json --output_h_dir tmp --output_cpp_dir tmp mv tmp/*.js /usr/local/WebCore/inspector/front-end
from ios-webkit-debug-proxy.
Btw, if you just up the version number to a more recent chrome build it
will also work. I believe there are hosted versions from every chrome
release on the appspot project.
Sent from my slab of glass with no keyboard so it will be a miracle if you
receive what I meant to type.
On May 24, 2013, at 7:57 PM, Todd Wright [email protected] wrote:
Hi Umar, I just committed support for a new command-line argument to
specify the DevTools URL. Please try it out!
Here's info from ios_webkit_debug_proxy --help:
-f, --frontend URL DevTools frontend UI path or URL, defaults to:
http://chrome-devtools-frontend.appspot.com/static/18.0.1025.74/devtools.html
E.g. to use a local WebKit checkout:
/usr/local/WebCore/inspector/front-end/inspector.html
E.g. to use a remote server:
http://foo.com:1234/bar/inspector.html
The value must end in ".html"
--no-frontend Disable the DevTools frontend.
As noted above, the default URL is the same appspot server as before, but I
plan to change that soon, once we figure out where to host our copy of
DevTools -- options include chromium.googlesource.com, gstatic.com, and our
own webpagetest.org.
Blink's Git repo contains ".qrc" files that are compiled into ".js", so if
you run from the repo as-is the inspector won't load, but the proxy will
print the easy fix:
Missing code-generated WebKit file:
/usr/local/WebCore/inspector/front-end/InspectorBackendCommands.js
A matching ".qrc" exists, so try generating the ".js":
cd /usr/local/WebCore/inspector/front-end/..
mkdir -p tmp
./CodeGeneratorInspector.py Inspector.json --output_h_dir tmp
--output_cpp_dir tmp
mv tmp/*.js /usr/local/WebCore/inspector/front-end
—
Reply to this email directly or view it on
GitHubhttps://github.com//issues/12#issuecomment-18436069
.
from ios-webkit-debug-proxy.
That's great Todd, nice work! Patrick, good to know, you're right, most Chrome releases seemed to work for the hosted DevTools.
A few small issues I noticed were various things in the DevTools not working (using 29.0.1518.2 for the DevTools version). For example adding styles wouldn't work (for me at least), kept getting JavaScript errors like:
Request with id = 249 failed. [object Object]
not sure if that's a problem with the DevTools however - but basically various UI elements in the DevTools would not react like expected when clicked upon, often resulting in JavaScript errors (note I tried various Chrome releases for the hosted DevTools).
Also just thought I'd mention, after running the commands multiple times, my iOS device froze! Not sure if it's related to this tool though, errors were:
usbmuxd_get_result: Received packet is too small!
usbmuxd_connect: Connect failed, Error code=-1
Could not connect to lockdownd. Exiting.: Undefined error: 0
A hard reset of the device fixed this.
That being said, a lot of new things did work which was cool to use with iOS! The Safari Inspector doesn't feel as feature rich, so this is a powerful thing for developers.
from ios-webkit-debug-proxy.
It's interesting that adding styles doesn't work. Do you get the same error in the Safari Inspector? Also, did you see this error in the old DevTools (18.0.1025.74) or only the latest DevTools (29.0.1518.2)?
I've never seen that usbmuxd error before. My guess is that it's either a usbmuxd bug or an iOS bug -- if it's the latter, I imagine that Safari's inspector would have frozen, too. Please let me know if it happens again, especially if you can create a reproducible test case.
from ios-webkit-debug-proxy.
I didn't get the same error in Safari's Inspector. With 27.0.1453.93 & 29.0.1518.2 I do get the errors e.g.
(That's the Chrome DevTools inspecting http://localhost:9222/devtools/devtools.html?host=localhost:9222&page=1
)
Trying version 18.0.1025.74 seems to work perfectly.
from ios-webkit-debug-proxy.
Added "-f" support to specify a different inspector URL. Changing the default URL is blocked on #20 element styles.
from ios-webkit-debug-proxy.
@umaar / @wrightt where can I find a list of the most recent hosted devtools versions?
A local checkout of this doesn't seem to work.
from ios-webkit-debug-proxy.
@schickling You can get a list of devtools versions from this page: https://src.chromium.org/chrome/releases/
Although most are not hosted on chrome-devtools-frontend.appspot.com
from ios-webkit-debug-proxy.
Related Issues (20)
- can not work on ios 14.4 HOT 11
- Hi
- It broke my computer configuration
- configure: error: Package requirements (libimobiledevice-1.0 >= 1.3.0) were not met: HOT 2
- No connection with iOS 15.1 HOT 11
- In the iphone13 pro max simulator、ios 15(not real device), chrome://inspect can't detect any webview? HOT 1
- On win10, iOS 15.3 , how to solve this problem: 'could not start com.apple.webinspector'. The safari webinspector has set ‘on’. HOT 16
- ios-webkit-debug-proxy dependencies not built for the x86_64 CPU architecture HOT 2
- Hey
- provide prebuilt binaries via github actions
- No device found, is it plugged in? (Windows 11) HOT 17
- Can't connect my ios device!!! HOT 1
- make compilation error on fedora 37 HOT 2
- Unable to obtain content HOT 1
- Compile issue with libplist Version 2.3.0 HOT 1
- Passing --disable-static to ./configure breaks examples compilation HOT 1
- Is it possible to debug service worker? HOT 1
- .
- Upgrade OpenSSL version HOT 4
- Compilation error because `iwdpm_new()` declaration is different than definition signature HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ios-webkit-debug-proxy.