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.
- jar files are essentially solid zip archives [JAR (file format)],
which can be "unzipped" using just about any archiving utilityy; I use PeaZip.
- Download the original Opera Mini jar: http://mini.opera.com/download-4/opera-mini-latest-advanced-en-us.jar?no_redir&ismobile=false
- 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.
- Using a hex editor, I suggest HxD. Open up h.class.
- 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.
- 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.
- 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.
- 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.