Grab and save your OTA updates without root for android 6 or later
[No root required]
I was needed to test my android (Marshmallow) update various times as I was failing to install it due to some tweaking in stock ROM. It was unjust to download file of around 600 MB again and again so I Googled for a solution to fetch OTA file URL. Unfortunately I couldn't find any method which could give me success on Marshmallow or later. Although I found some hints by which I got to the goal and decided to write a blog to share my knowledge.
The famous method of 'logcat' inspection through adb doesn't work on latest versions as complete URL of OTA update file isn't logged.
What You need:
1. Some linux distro (preferably ubuntu. You can use windows if are able to find and install some proxy server on it)
2. Tinyproxy: a lightweight proxy server.
3. Platform tools for android. (ADB)
Install Tinyproxy:
In shell, give command: sudo apt-get install tinyproxy
Modify /etc/tinyproxy.conf file using any text editor like gedit or nano:
sudo gedit /etc/tinyproxy.conf
Look for lines:
#Allow 192.168.0.0/16
#Allow 172.16.0.0/12
#Allow 10.0.0.0/8
and uncomment (remove leading '#') from the network similar to your LAN. (Check your ip address)
Save the file and close.
Restart tinyproxy:
Now open any website, if you are able to navigate, you are good to go, if you see some error from tinyproxy, you'll need to check /etc/tinyproxy.conf file againto make sure you allowed network from which your Android and Computer's IP addresses belong.
Open Linux shell and enter command: sudo tail -f /var/log/tinyproxy/tinyproxy.log
You should see access log here whenever you open a web address from your smartphone along with complete URL.
Now open Settings > About Phone > Wireless Update in you android. Click 'Check for updates'.
Carefully observing access log in linux shell, click 'Download' on your android if some OTA update is available for your device. As soon as you click 'Download', you will get complete URL of the ZIP file your phone is fetching from the internet!
Just copy URL and download ZIP file from your preferred download manager. Copy that file to your SD card or use ADB command: adb push ota_update_file.zip sdcard/ and install it by selecting 'Local update' from Wireless update option in your phone.
I was needed to test my android (Marshmallow) update various times as I was failing to install it due to some tweaking in stock ROM. It was unjust to download file of around 600 MB again and again so I Googled for a solution to fetch OTA file URL. Unfortunately I couldn't find any method which could give me success on Marshmallow or later. Although I found some hints by which I got to the goal and decided to write a blog to share my knowledge.
The famous method of 'logcat' inspection through adb doesn't work on latest versions as complete URL of OTA update file isn't logged.
What You need:
1. Some linux distro (preferably ubuntu. You can use windows if are able to find and install some proxy server on it)
2. Tinyproxy: a lightweight proxy server.
3. Platform tools for android. (ADB)
Install Tinyproxy:
In shell, give command: sudo apt-get install tinyproxy
Modify /etc/tinyproxy.conf file using any text editor like gedit or nano:
sudo gedit /etc/tinyproxy.conf
Look for lines:
#Allow 192.168.0.0/16
#Allow 172.16.0.0/12
#Allow 10.0.0.0/8
and uncomment (remove leading '#') from the network similar to your LAN. (Check your ip address)
Save the file and close.
Restart tinyproxy:
sudo /etc/init.d/tinyproxy stop sudo /etc/init.d/tinyproxy startNow, in you android, open wifi connections and disconnect/forget Wifi connection. Connect again and when asked password, click advance in the same dialog and enter IP address of your computer where you just installed 'tinyproxy'. Enter port: 8888 and connect wifi.
Now open any website, if you are able to navigate, you are good to go, if you see some error from tinyproxy, you'll need to check /etc/tinyproxy.conf file againto make sure you allowed network from which your Android and Computer's IP addresses belong.
Open Linux shell and enter command: sudo tail -f /var/log/tinyproxy/tinyproxy.log
You should see access log here whenever you open a web address from your smartphone along with complete URL.
Now open Settings > About Phone > Wireless Update in you android. Click 'Check for updates'.
Carefully observing access log in linux shell, click 'Download' on your android if some OTA update is available for your device. As soon as you click 'Download', you will get complete URL of the ZIP file your phone is fetching from the internet!
Just copy URL and download ZIP file from your preferred download manager. Copy that file to your SD card or use ADB command: adb push ota_update_file.zip sdcard/ and install it by selecting 'Local update' from Wireless update option in your phone.
Comments
Post a Comment