Search

Opera Mini v4 patched for free web access - 06 Jan 2011

NOTE: no more free T-Mobile web service with keyword hole.

I just wanted to say that before any of you on AT&T, Verizon, Virgin, or other (excessively over-priced) mobile transit providers get excited, that I have just tested this on T-Mobile (less over-priced), I'm not sure how the "other guys" do it, but I would be curious to know if they have a similar opening that works by inserting keywords into URLs.
Edit July 13 2011: While traveling around the Midwest this summer, I was able to continue to get free web-access with my T-Mobile SIM while roaming on AT&T/Cingular (Northern Minnesota and North/South Dakota), and Rogers Wireless (Manitoba).

That said, this is a reasonably easy hack conceptually, but there are a few odd things that I had no idea if they would work or not; until it worked (tested on my Motorola V195S and Razr V3).
Edit July 13 2011: This process outlines creating a patched version of Opera Mini for J2ME capable mobile devices.
  1. jar files are essentially solid zip archives [JAR (file format)], which can be "unzipped" using just about any archiving utilityy; I use PeaZip.
  2. Download the original Opera Mini jar: http://mini.opera.com/download-4/opera-mini-latest-advanced-en-us.jar?no_redir&ismobile=false
  3. Once you unzip the jar file (probably going to want to move the jar file into a new directory), you should now have a bunch of files along with the original jar file. DON'T OPEN ANY OF THE FILES WITH ANY OLD EDITOR, IT WILL SCREW UP THE FILE FORMATTING. I mention this, because I fell into this trap trying to edit h.class with vi.
  4. Using a hex editor, I suggest HxD. Open up h.class.
  5. Search and replace the string "server4.opermini.com" with "tmobile4.vraidsys.com". Save your changes and close up your hex editor. Edit August 6 2011: "tmobile4.vraidsys.com" is a CNAME that points to "server4.opermini.com" so that one can make it appear as if the Opera Mini thin client is making backend calls to a tmobile service. I also had to add a "tmobile4-1.vraidsys.com" CNAME to my DNS records pointing to "server4.opermini.com" so that the initial install of Opera Mini would work correctly.
  6. Now, open up a terminal/command line window and issue the command jar -uf opera-mini-4-advanced-en-us.jar h.class to update the original archive with the modified class file. If you get a command not found error, you might have to do some digging. My system did not have the jar command in the system path from the jdk package I use, either.
  7. Optional: create a new kickass i.png file to use as the icon instead of the default Opera logo. Keep it 15 by 15 pixels.
  8. Transfer the jar onto your mobile device and enjoy.
opera-mini-4.2.18887-advanced-en-us.jar - Last version that does not try to auto-patch to newer version.
opera-mini-4.4.26736-advanced-en-us.jar
opera-mini-4.4.27461-advanced-en-us.jar

Cheers everybody!
Want to comment or have a question? Drop me a line on twitter: @jasonzerbe.