Hey everyone, I wrote a script to bring DevTools (based on eruda) to Android Chrome. It works on any website, and you can access it by shaking your phone. It uses a local VPN tunnel to dynamically inject the script into a page. Installation is simple, takes around 10 minutes.
Some features include:
Execute JavaScript on page
Select an element on the page to view its properties
Inspect incoming and outgoing network requests
A 1-minute demo:
Feel free to check out the repo here!
Andure — DevTools for Android Chrome
Based on eruda, andure dynamically injects web-based DevTools into any website through a local VPN tunnel (using AdGuard HTTPS filtering), allowing for inspection and debugging similar to desktop Chromium DevTools.
To start DevTools for a website, simply shake your phone and a prompt will appear.
To install, follow the installation section below.
1-Minute Demo
Andure.Demo.mov
Visit https://youtu.be/fVCdcvZ7Cv8 if the above video cannot be played.
Features
- Execute JavaScript on page
- Select an element on the page to view its properties
- Inspect incoming and outgoing network requests
- Inspect website source
- Show localStorage, and cookie information
- etc.
See eruda docs for more features.
Installation
- Download the andure script from this repo and save it on your phone. (For browsers with
devicemotion
disabled, e.g. Brave, there is another script that shows the DevTools button persistently) - Install AdGuard for Android and enable HTTPS filtering.
- In
Settings >
…
Top comments (6)
I feel terrible for pointing this out, but remote debugging is built right into your desktop Chromium browser by default!
Hey Peter, no need to feel terrible! I'm aware that remote debugging is the "official" way of doing it - but there are times we are on our phones and need DevTools - like dealing with those article paywalls, or figuring out what's behind the API from a website scanned by QR code, etc. Plus, DevTools on mobile is just cool (I'm definitely biased though)
Thanks haha
That's a valid set of use cases I hadn't considered, and I've got to say your implementation is quite nifty as well!
Wow, that's so cool
Thanks Danish!
😉