<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Uber Geeky! &#187; Android</title>
	<atom:link href="http://ubergeeky.com/blog/tag/android/feed" rel="self" type="application/rss+xml" />
	<link>http://ubergeeky.com/blog</link>
	<description>Let the hackfest begin...</description>
	<lastBuildDate>Mon, 30 Aug 2010 14:30:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Google Maps &#8220;Caching&#8221; for Android</title>
		<link>http://ubergeeky.com/blog/263-google-maps-caching-for-android</link>
		<comments>http://ubergeeky.com/blog/263-google-maps-caching-for-android#comments</comments>
		<pubDate>Wed, 18 Aug 2010 14:39:11 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Google Maps]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=263</guid>
		<description><![CDATA[This may not be a problem for people who live in huge cities, but Australia is a big place, I&#8217;m sure most of it has no mobile phone tower coverage. So what do you do when travelling 100&#8242;s of kilometres from one town to another and you don&#8217;t know exactly where to turn? You could [...]]]></description>
			<content:encoded><![CDATA[<p>This may not be a problem for people who live in huge cities, but Australia is a big place, I&#8217;m sure most of it has no mobile phone tower coverage. So what do you do when travelling 100&#8242;s of kilometres from one town to another and you don&#8217;t know exactly where to turn?</p>
<p>You could try scrolling across the route using Google Maps and hope that the maps stay cached until you need them. This works some of the time. If you just want to know roughly when to turn, getting the blue directions line is usually good enough to keep you on track. I think I found sometimes even that gets lost if you use the phone for anything other than google maps or perhaps just leaving it idle for a long time.</p>
<p>I don&#8217;t know about you, but in such situations I want to leave little up to fate. On my old Nokia I used to have <a href="http://wap.mgmaps.com/" target="_blank">MGMaps</a> installed. At the time Google had pressured them into stopping support for Google Maps images, but it was still possible with a little hackery pokery to get their scripts to slurp them down. Despite the occasional bum steer I&#8217;ve had asking Google Maps for direction (driving for an hour down an increasingly poor quality dirt road in New Zealand which Google had marked as a highway, only to end up nearly bogged in the middle of a forest on a track that had foot long grass growing on it comes to mind), I still find Google has the best maps. So I wasn&#8217;t prepared to settle for <a href="http://androidandme.com/2010/04/applications/mapdroyd-true-offline-maps-for-your-android/" target="_blank">MapDroyd</a> too quickly. But that is the easy option.</p>
<p>Skip that and go for <a href="http://www.cyrket.com/p/android/com.robert.maps/" target="_blank">RMaps</a>. If you see the comments, lots of people have trouble figuring out the offline maps features. <a href="http://www.taranfx.com/android-offline-google-maps" target="_blank">Taranfx blog post</a> to the rescue!! Follow those simple steps to get your Google Maps goodness when you are out of range of the Google hive mind.</p>
<p>But wait! SQLite library for Ubuntu is not included with <a href="http://mobac.dnsalias.org/" target="_blank">Mobile Atlas Creator</a> <img src='http://ubergeeky.com/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> . In the included README.HTM it says that you can download the <a href="https://sourceforge.net/projects/trekbuddyatlasc/files/SQLite%20library" target="_blank">required Java SQLite libraries from sourceforge</a>. But it seems to me all those links are currently broken.</p>
<p>To compile it, I installed a whole bunch of packages:</p>
<ul>
<li><code>openjdk-6-jdk</code></li>
<li><code>sqlite</code></li>
<li><code>libsqlite0-dev</code></li>
<li><code>libsqliteodbc</code></li>
<li><code>sqlite3</code></li>
<li><code>libsqlite3-dev</code></li>
</ul>
<p>I&#8217;m not certain that all of these are required. Of course you&#8217;ll also need the regular <code>build-essential</code> packages required to compile stuff. Now you can follow the steps in the README.HTM, although you should download the latest version of javasqlite package (changes highlighted).</p>
<pre><code>wget http://www.ch-werner.de/javasqlite/<span style="background-color: yellow;">javasqlite-20100727.tar.gz</span></code>
<code>tar xzvf <span style="background-color: yellow;">javasqlite-20100727.tar.gz</span></code>
<code>cd <span style="background-color: yellow;">javasqlite-20100727/</span></code>
<code>./configure <span style="background-color: orange;">--with-jdk=/usr/lib/jvm/java-6-openjdk</span></code>
<code>make</code>
<code>cp .lib<span style="background-color: yellow;">s</span>/lib* /[MOBAC installation path]</code></pre>
<p>If you can&#8217;t find your java home, you may need to add <code><span style="background-color: orange;">--with-jdk=/usr/lib/jvm/java-6-openjdk</span></code> to the end of the configure command (this is the path for Ubuntu 10.04 anyway).</p>
<p>Now return to <a href="http://www.taranfx.com/android-offline-google-maps" target="_blank">Taranfx blog post</a> and then enjoy RMaps with offline Google Maps.<br />
<img src="http://lh6.ggpht.com/_fPD0YWoytOI/TGvha7iXgCI/AAAAAAAAAsM/CnDycZP9nmw/s800/OfflineMaps.png" alt="Offline Maps" /></p>
<p>Update August 30, 2010:<br />
You can migrate your tracks and markers from Google Maps too! The current version only displays 1 track at a time, but it does route lines along roads. For some reason it wont show any markers until you are at least zoom level 14. I wish this was configurable as my markers are sometimes 50kms apart, so it would be good to see them when zoomed right out. I may have to go and flag all the turn offs for my upcoming holiday, as I&#8217;m worried I could miss a few from the looks of things now.</p>
<p>To import them firstly export KML file from google maps either by following this <a target="_blank" href="http://sites.google.com/site/gmapstips/export-my-map-as-kml">post from Gmaps Tips group</a> or using the <a target="_blank" href="http://www.elsewhere.org/journal/gmaptogpx/">GMapToGPX javascript</a>. Once you have the KML file downloaded, copy it to /sdcard/rmaps/import/ on the phone. Then go into the Track and POI menus and import it (import once in POI and once in track). You might notice that it has horrible div tags around all the text, you&#8217;ll have to clean that up from the KML file manually if it bothers you too much (how&#8217;s your regular expression skills?).</p>
<p>All in all this has been sufficiently geeky for my liking, and the end result is exactly what I wanted! Now I have an offline GPS totally compatible with my Google Maps &#8220;My Maps&#8221; (if that makes sense).</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/263-google-maps-caching-for-android/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VPNC Android GUI Package</title>
		<link>http://ubergeeky.com/blog/167-vpnc-android-gui-package</link>
		<comments>http://ubergeeky.com/blog/167-vpnc-android-gui-package#comments</comments>
		<pubDate>Wed, 22 Jul 2009 13:46:03 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Cisco VPN]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=167</guid>
		<description><![CDATA[Forget my post about running VPNC from the G1 terminal. Wmealing has just released the Android package that does it all in GUI form. Grab the get-a-robot-vpnc package now. Not much to add, except &#8220;oh the awesome!&#8221;. Here&#8217;s a little screen shot of the add connection GUI&#8230; If you have trouble figuring out what to [...]]]></description>
			<content:encoded><![CDATA[<p>Forget my post about <a href="http://ubergeeky.com/blog/110-connect-to-cisco-vpn-from-android">running VPNC from the G1 terminal</a>. <a href="http://code.google.com/u/wmealing/">Wmealing</a> has just released the Android package that does it all in GUI form. Grab the <a href="http://get-a-robot-vpnc.googlecode.com/files/VPN_Connections-r89.apk">get-a-robot-vpnc package</a> now.</p>
<p>Not much to add, except &#8220;oh the awesome!&#8221;. Here&#8217;s a little screen shot of the add connection GUI&#8230;</p>
<p><img class="aligncenter" title="get-a-robot-vpnc add connection" src="http://lh3.ggpht.com/_fPD0YWoytOI/SmcXF0Bo3WI/AAAAAAAAAno/9-K_v6sX2JQ/s800/vpnc_add.png" alt="" width="320" height="480" />If you have trouble figuring out what to enter into those fields, check out my old <a href="http://ubergeeky.com/blog/110-connect-to-cisco-vpn-from-android">get-a-robot-vpnc post</a> for some hints.</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/167-vpnc-android-gui-package/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cupcake update pushed to JFv1.51 US/UK</title>
		<link>http://ubergeeky.com/blog/161-cupcake-update-pushed-to-jfv1-51-usuk</link>
		<comments>http://ubergeeky.com/blog/161-cupcake-update-pushed-to-jfv1-51-usuk#comments</comments>
		<pubDate>Wed, 22 Jul 2009 13:20:54 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Conspiracy]]></category>
		<category><![CDATA[G1]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=161</guid>
		<description><![CDATA[This morning I checked my phone only to find a message about updates downloaded and ready to install. That&#8217;s an odd thing, since I&#8217;ve got modded firmware that should have disabled such behaviour to prevent conflicts. I was a bit worried, but an ADP G1 wielding colleague pointed me to this notice&#8230; http://andblogs.net/2009/07/otas-in-jfv1-51/ I followed [...]]]></description>
			<content:encoded><![CDATA[<p>This morning I checked my phone only to find a message about updates downloaded and ready to install. That&#8217;s an odd thing, since I&#8217;ve got modded firmware that should have disabled such behaviour to prevent conflicts. I was a bit worried, but an ADP G1 wielding colleague pointed me to this notice&#8230; <a href="http://andblogs.net/2009/07/otas-in-jfv1-51/">http://andblogs.net/2009/07/otas-in-jfv1-51/</a></p>
<p>I followed JF&#8217;s 2nd and 3rd suggestion and so far so good. Here&#8217;s the exact steps I took to disable the update.</p>
<ol>
<li>Download and extract JFv1.51 ADP firmware and copy build.prop to the sdcard. Or use this <a href="http://ubergeeky.com/blog/wp-content/uploads/2009/07/build.prop">build.prop</a> (freshly extracted for your convenience).</li>
<li>Mount /system on the G1 as read/write. Two simplest ways to do this is either install &#8220;DroidSans Tweak Tools&#8221; or run &#8220;mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system&#8221; in a terminal.</li>
<li>Replace build.prop and make the permissions the same as the old one with something like:
<pre>$ su</pre>
<pre># mv /system/build.prop build.prop.bak</pre>
<pre># cp /sdcard/build.prop /system</pre>
<pre># chmod 644 /system/build.prop</pre>
</li>
<li>Find the update in the /cache directory and &#8220;chmod 000&#8243; it&#8230;
<p style="text-align: center;"><img class="aligncenter" title="Disable Cupcake OTA update screenshot" src="http://lh5.ggpht.com/_fPD0YWoytOI/SmcQUsuXfSI/AAAAAAAAAng/wX1EH_wWMNY/s800/1248265947089.png" alt="Disable Cupcake OTA update screenshot" width="480" height="320" /></p>
</li>
<li>Now I actually clicked on the &#8220;restart and install&#8221; option on the update dialog. The phone rebooted, and the update failed. I rebooted with Home+Back and haven&#8217;t had the update prompt as yet.</li>
</ol>
<p>So far so good. One odd thing I noticed is the update is gone from the /cache directory.</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/161-cupcake-update-pushed-to-jfv1-51-usuk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Browse for Android apps without the eye strain</title>
		<link>http://ubergeeky.com/blog/157-browse-for-android-apps-without-the-eye-strain</link>
		<comments>http://ubergeeky.com/blog/157-browse-for-android-apps-without-the-eye-strain#comments</comments>
		<pubDate>Tue, 30 Jun 2009 14:44:49 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[G1]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/157-browse-for-android-apps-without-the-eye-strain</guid>
		<description><![CDATA[The Cyrket website is an &#8220;Android Application Browser&#8221; for the desktop. Makes it much easier to search for applications and works especially well in conjunction with &#8220;Barcode Scanner&#8221; app installed on the handset. Now why didn&#8217;t Google just do that in the first place?]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.cyrket.com/">Cyrket</a> website is an &#8220;Android Application Browser&#8221; for the desktop. Makes it much easier to search for applications and works especially well in conjunction with &#8220;Barcode Scanner&#8221; app installed on the handset.</p>
<p>Now why didn&#8217;t Google just do that in the first place?</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/157-browse-for-android-apps-without-the-eye-strain/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Android MarketEnabler</title>
		<link>http://ubergeeky.com/blog/148-android-marketenabler</link>
		<comments>http://ubergeeky.com/blog/148-android-marketenabler#comments</comments>
		<pubDate>Tue, 16 Jun 2009 22:40:37 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[G1]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=148</guid>
		<description><![CDATA[Looks like some Italians figured out a way to access paid applications on the Android Market. Check out this English translation which contains a link to the MarketEnabler app they wrote. I&#8217;ve tested it out and it stills work quite well.]]></description>
			<content:encoded><![CDATA[<p>Looks like some Italians figured out a way to access paid applications on the Android Market. Check out this <a href="http://strazzere.com/blog/?p=255">English translation</a> which contains a link to the MarketEnabler app they wrote. I&#8217;ve tested it out and it stills work quite well.</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/148-android-marketenabler/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Connect to Cisco VPN from Android</title>
		<link>http://ubergeeky.com/blog/110-connect-to-cisco-vpn-from-android</link>
		<comments>http://ubergeeky.com/blog/110-connect-to-cisco-vpn-from-android#comments</comments>
		<pubDate>Mon, 01 Jun 2009 16:13:16 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Cisco VPN]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=110</guid>
		<description><![CDATA[Instructions to enable Android VPN connection on a rooted device.]]></description>
			<content:encoded><![CDATA[<p><strong>Tested on:</strong></p>
<ul>
<li>Rooted G1 (clean <a title="JFv1.51" href="http://jf.andblogs.net/2009/05/24/jfv151-images-are-out/">JesusFreke v1.51</a> US image)</li>
</ul>
<p><strong>Prerequisites:</strong></p>
<ul>
<li>VPN connection settings or a pcf file</li>
<li>If you need to decrypt enc_GroupPwd from pcf, Linux box with vpnc installed</li>
<li>Something to extract bz2 files</li>
<li>BusyBox (or alternative copy method that doesn&#8217;t use tar)</li>
<li><a href="http://code.google.com/p/get-a-robot-vpnc/downloads/list">Get-a-robot-vpnc</a> package</li>
<li>Root access!</li>
</ul>
<p>First of all, this is an alternative version of instructions from <a href="http://forum.xda-developers.com/showthread.php?t=511849&amp;page=3#post3814574">xda-developers post</a> by Phlogiston. I&#8217;ve included more complete details for those people who wouldn&#8217;t know the first thing about getting started with vpnc. Big win credit to <a href="http://code.google.com/u/wmealing/">wmealing</a> for bringing vpnc to Android!</p>
<p>Extract the bz2 file (not on the phone yet). Note the directory structure is <code>/data/data/org.codeandroid.vpnc/...</code>, this is designed to be extracted directly to the root of the phone.</p>
<p>Open <code>/data/data/org.codeandroid.vpnc/etc/vpnc/vpnc.conf</code> and place your VPN connection settings in there. Very important that you remove or comment out the line &#8220;<code>IKE authmode hybrid</code>&#8221; or later you will have errors about missing openssl components. If you are not sure about the <code>vpnc.conf</code> settings and you have the .pcf file, map the following values&#8230;</p>
<table style="height: 129px;" border="0" width="367">
<tbody>
<tr>
<th>Typical .pcf</th>
<th>vpnc.conf</th>
</tr>
<tr>
<td>Host</td>
<td>IPSec gateway (lowercase)</td>
</tr>
<tr>
<td>GroupName</td>
<td>IPSec ID</td>
</tr>
<tr>
<td>GroupPwd*</td>
<td>IPSec secret</td>
</tr>
<tr>
<td>Username (usually omitted)</td>
<td>Xauth username</td>
</tr>
<tr>
<td>UserPassword (usually omitted)</td>
<td>Xauth password</td>
</tr>
</tbody>
</table>
<p>You should know your user name and password. Of course I&#8217;m not going to recommend that you store them in plain text in this file, but it sure does make life a whole lot simpler.</p>
<p>*If GroupPwd is blank and instead you have enc_GroupPwd you need to use the cisco-decrypt tool that usually comes with a standard vpnc installation (in my distro it&#8217;s found at <code>/usr/lib/vpnc/cisco-decrypt</code>). Simply run:</p>
<blockquote><p><code>/usr/lib/vpnc/cisco-decrypt &amp;lt;enc_GroupPwd hash&amp;gt;</code></p></blockquote>
<p>Open <code>/data/data/org.codeandroid.vpnc/etc/vpnc/vpnc-script</code> and change the first line to &#8220;<code>#!/system/bin/sh</code>&#8221; (replace bash with just sh).</p>
<p>Now you need to get it all on to your phone. Confirm you have the tar command on the phone by opening up the terminal app and typing &#8220;<code>tar</code>&#8220;. If you don&#8217;t have it, you might want to get BusyBox.</p>
<p><img class="aligncenter" title="BusyBox tar command" src="http://lh5.ggpht.com/_fPD0YWoytOI/SiP0Wt-TpTI/AAAAAAAAAm4/g_ODnF0kjIE/s800/0.png" alt="" width="480" height="320" /></p>
<p>From the directory where you extracted the bz2 file, run the following to make a tarball:</p>
<blockquote><p><code>$ tar -cvf vpnc.tar ./data/data</code></p></blockquote>
<p>Copy that to the phone&#8217;s sdcard. While you have the sdcard mounted on your PC, create a directory called <code>vpnc</code> and create two empty files in there named <code>go</code> and <code>prep</code> (you can name them anything really).</p>
<p>Open <code>go</code> and paste the following (this is one single long line of text):</p>
<blockquote><p><code>/data/data/org.codeandroid.vpnc/bin/vpnc /data/data/org.codeandroid.vpnc/etc/vpnc/vpnc.conf --script /data/data/org.codeandroid.vpnc/etc/vpnc/vpnc-script --pid-file /data/data/org.codeandroid.vpnc/etc/vpnc/vpnc-pid --no-detach --debug 1</code></p></blockquote>
<p>Open <code>prep</code> and paste the following:</p>
<blockquote><p><code>modprobe tun<br />
lsmod<br />
mkdir /dev/net<br />
ln -s /dev/tun /dev/net/tun</code></p></blockquote>
<p>These scripts will help you type less on the handset. Now unmount the sdcard and wait for the phone to check it. Open up a terminal and run the following:</p>
<blockquote><p><code>$ su<br />
# cp /sdcard/vpnc.tar /data<br />
# cd /data<br />
# tar xvf vpnc.tar<br />
# rm vpnc.tar<br />
# cd /sdcard/vpnc<br />
# sh prep<br />
# sh go</code></p></blockquote>
<p>If all went well you should see the following happy little message!</p>
<p style="text-align: left;"><img class="aligncenter" src="http://lh3.ggpht.com/_fPD0YWoytOI/SiPdB7Vsa8I/AAAAAAAAAmc/pgD4weaSFCg/s800/VPNC%20on%20Android.png" alt="vpnc on Android" width="480" height="320" /></p>
<p style="text-align: left;">&#8230; and to later kill the VPN connection, just press Ball+C. Note: You only need to run the <code>prep</code> script the first time during the session (when the phone reboots you&#8217;ll need to run it again).</p>
<p style="text-align: left;">If you want to undo it all and start from scratch, just do a recursive delete of <code>/data/data/org.codeandroid.vpnc</code> directory and reboot.</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/110-connect-to-cisco-vpn-from-android/feed</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>Android netbook&#8230; with Flash support!</title>
		<link>http://ubergeeky.com/blog/76-android-netbook-with-flash-support</link>
		<comments>http://ubergeeky.com/blog/76-android-netbook-with-flash-support#comments</comments>
		<pubDate>Fri, 08 May 2009 10:17:22 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Astone UMPC]]></category>
		<category><![CDATA[Conspiracy]]></category>
		<category><![CDATA[Flash Lite]]></category>
		<category><![CDATA[Netbook]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=76</guid>
		<description><![CDATA[Was just talking today about the future of Flash, considering the G1 and iPhone don&#8217;t support it. Hell, I spent a good hour or so getting my tag cloud to look good both with and without Flash support so this blog maintained good compatibility with those handsets. Looks like they could be making up some [...]]]></description>
			<content:encoded><![CDATA[<p>Was just talking today about the future of Flash, considering the G1 and iPhone don&#8217;t support it. Hell, I spent a good hour or so getting my tag cloud to look good both with and without Flash support so this blog maintained good compatibility with those handsets.</p>
<p>Looks like they could be making up some ground at the moment with <a href="http://finance.yahoo.com/news/Bsquare-to-Port-Adobe-Flash-iw-15149258.html">Bsquare porting Flash Lite over to Android</a> for the upcoming release of Dell netbooks. I predict now it&#8217;s just a matter of time before it&#8217;s ported to these handsets.</p>
<p>I think you&#8217;ll agree it&#8217;s been bigger-better thinking for such a long time for most of the big players in this industry, particularly Adobe. How massive is their PDF reader theses days? It&#8217;s ridiculous. I uninstalled it after version 7 was released and switched to an alternative reader because I couldn&#8217;t take it any more. The industry is still catching up with the concept of people wanting more of the desktop experience on less powerful devices. I still suspect Microsoft&#8217;s approach is to get a strangle hold on the distributors to ram their outdated wares down our throat rather than actually improve their product, but I have no proof yet so stay tuned. As soon as I find out why there are only Windows netbooks for sale in this country I&#8217;ll post it.</p>
<p>Actually, while I&#8217;m back on the netbook OS topic again, I stumbled upon this little gem which appears to have no OS whatsoever! The <a href="http://cloudbookumpc.com/astone-umpc-official-specifications">Astone UMPC netbook</a>. The specs aren&#8217;t too bad for the price, but mostly I admire their balls for releasing a bare metal netbook to the public. Viva!</p>
<p>Thanks to <a href="http://www.gizmodo.com.au/2009/05/dell_android_netbook_its_coming-2.html">Gizmodo</a> for the rather flashy heads up!</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/76-android-netbook-with-flash-support/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rooting a G1 phone &#8211; Part 2</title>
		<link>http://ubergeeky.com/blog/10-rooting-a-g1-phone-part-2</link>
		<comments>http://ubergeeky.com/blog/10-rooting-a-g1-phone-part-2#comments</comments>
		<pubDate>Mon, 16 Mar 2009 14:54:39 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[G1]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=10</guid>
		<description><![CDATA[The next step for me was to get root. People are generally recommending to downgrade firmware to take advantage of a glitch. I checked mine and I was still on RC19, which has another simple method. Basically you can simply start the telnet service and connect as root remotely from another computer. I just had [...]]]></description>
			<content:encoded><![CDATA[<p>The next step for me was to get root. People are generally recommending to downgrade firmware to take advantage of a glitch. I checked mine and I was still on RC19, which has another simple method. Basically you can simply start the telnet service and connect as root remotely from another computer. I just had to install a terminal app from the Android market and then I was in. From there you can create an su command for use on the handset and then kill the telnet service. I used instructions from <a href="http://www.helloandroid.com/node/698">Hello Android</a> in case you are interested in the specifics.</p>
<p>It was good that I had the old firmware, as I was able to experience some of the original mods that generally no longer work. I went over the original G1 hacking forum posts and tried a few tricks. My firmware was nice and insecure, that&#8217;s for sure. Storm clouds were brewing and I could hear thunder in the distance. It added some mad scientist atmosphere.</p>
<p>While I was exploring the joys of root I received an email from one of the G1 modding sites informing me that the <a href="http://www.androidfanatic.com/cms/component/fireboard/?func=view&amp;id=2245&amp;catid=9">latest firmware was modded and available</a>, including multitouch enabled features, such as multitouch zoom in the browser. This is something you really need, just in case an iPhone fanboy notices you have the G1. Time to get serious and put some custom firmware on this thing. I downloaded it and started reading through the tutorial.</p>
<p>By now it was getting really stormy. The storm knocked out my ADSL, so that was the clincher. No internets, nothing else to do but start the firmware upgrade. I followed the tutorial, which was very mickey mouse. No explanation of what you were doing, just follow the bouncing ball. One step was to wipe all your settings. This meant I had lost my APN settings in the firmware upgrade (the details I&#8217;d gotten off the Whirlpool site to get GPRS working). No internet = no Whirlpool = no G1 reactivation&#8230; Doh! I had to wait a while to reactivate the handset. Next time I&#8217;d better jot those details down somewhere.</p>
<p>So, I took advantage of the opportunity to get some chores done, change and feed the baby, etc. All the stuff I probably wasn&#8217;t going to be doing as soon as I got my toy back.</p>
<p>&#8230;</p>
<p>Eventually I was back on line and could activate the handset again. I even found the right place to get <a href="http://www.modmygphone.com/wiki/index.php/Carrier_APN_Settings#Austrian_Networks">G1 APN settings</a> for any carrier.</p>
<p>Upgrading to the modded firmware actually turned out to be more of a pain in the butt than I had anticipated. This was only because the tutorial was flawed. It assumed you&#8217;d already installed a modded firmware previously and so they missed a crucial step. After pestering the Android devs on IRC and even tracking down <a href="http://jf.andblogs.net/">JesusFreke</a> (the main guy responsible for the firmware mods) eventually someone put me on to the <a href="http://android-dls.com/wiki/index.php?title=Keeping_Root">full instructions</a>.</p>
<p>These instructions rock. Included was a very useful hotkey that actually gives you some text output during the firmware upgrade process. The crucial step missing from the previous tutorial required me to replace the default recovery image with a modified one. Once I had an alternative recovery image that could circumvent some digital signature check, I was able to install the modified firmware with no dramas.</p>
<p>The system is fairly robust in preventing you from bricking it. As long as you don&#8217;t nuke the recovery image you can boot with it in the event that the main system wont start up. Once in there you can refresh the system with an image file stored on the sdcard. I&#8217;m not sure what would happen if your recovery image was also broken or missing. The place to find out would be over at <a href="http://forum.xda-developers.com/showthread.php?t=443994">xda-developers forum</a>.</p>
<p>One downside of the firmware upgrade was I lost all my apps. I spent the rest of the day putting apps back on there with a bit more discrimination this time. Found some useful apps, like sftp clients and an ssh client. The sftp apps I tried kept crashing for some reason that wouldn&#8217;t become apparent to me until the next day.</p>
<p>There is also a screenshot app that supposedly worked when granted root access. It was rather unuser friendly, and I couldn&#8217;t figure out where the images were supposed to be saving to. I&#8217;ve since used it to collect a few screenies that I&#8217;ll scatter through the blog at some stage (don&#8217;t hold your breath, I&#8217;m pretty slack). Stuff was starting to seem buggy, but it was late so I decided to call it a night. That was the end of day 2.</p>
<p>Day 3 I had the pleasure of showing my iPhone wielding boss the multitouch browser. Never mind the fact that multitouch support is limited by the hardware such that you can&#8217;t effectively use it if your fingers get closer than about an inch. Apparently a snapping effect then happens where the device only detects a single touch somewhere between the two fingers. You can checkout the specifics on <a href="http://lukehutch.wordpress.com/2009/01/25/get-multi-touch-support-on-your-t-mobile-g1-today/">Luke Hutchison&#8217;s blog</a>, he&#8217;s  the mastermind behind the multitouch hacks. The hacked browser doesn&#8217;t actually use multitouch gestures properly anyway. It just emulates a general zoom in/out command, it doesn&#8217;t centre the action on the point between your fingers like an iPhone does.  Doesn&#8217;t matter, you can successfully fool the Apple fans for long enough to get past them and get back on with your life.</p>
<p>Actually I found that wasn&#8217;t quite true. My workplace has WPA2 enterprise wireless security. The wireless applet/widget/whatever you kids call programs these days wouldn&#8217;t even list the SSID. Funily enough I found my Tricorder application did detect them. I had a moment of bemusement that this purposeless toy could actually be useful for something.</p>
<p>&lt;insert Tricorder screeny here&gt;</p>
<p>So now iPhone had me on a feature that wasn&#8217;t just aesthetic. Rrrrrr&#8230; <a href="http://forum.xda-developers.com/showthread.php?t=450915">GOOGLE SKILLS ACTIVATE!</a> Good on you Goolge, you really brought the true Linux experience to the handset market. Editing text files as root with vi to get stuff working on my phone, that&#8217;s pretty special, in some sense of the term anyway. So I followed instructions listed on the xda-developers forums. I didn&#8217;t actually need to install any certificates, it just connected as soon as I put details about the SSID, WPA2, and my username and password in a text file. Not ideal for security reasons, but as long as it works I&#8217;m a happy man. The SSID now shows up in the wlan applet too.</p>
<p>Something else was amiss that day though, the instability that I noticed last night was still going on and I finally figured out what the pattern was. When anything tried to write to the sdcard it would fail after a couple of files. Some apps would crash, other&#8217;s would fail silently, and just one actually handled the exception and displayed a meaningful error message. Go you cowboy Android app developers!</p>
<p>Experimenting with remounting the sdcard confirmed that after a short window of write activity the sdcard would become readonly, once again keeping true to the spirit of Linux. A quick search confirmed my suspicion the solution was to reformat it. Bare in mind, this is the sdcard that came with the handset. I backed up the files, formatted it and restored the data and the problem went away.</p>
<p>I spent the rest of day 3 pondering the <a href="http://www.saurik.com/id/10">next frontier</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/10-rooting-a-g1-phone-part-2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rooting a G1 phone &#8211; Part 1</title>
		<link>http://ubergeeky.com/blog/1-rooting-a-g1-phone-part-1</link>
		<comments>http://ubergeeky.com/blog/1-rooting-a-g1-phone-part-1#comments</comments>
		<pubDate>Fri, 13 Mar 2009 14:48:46 +0000</pubDate>
		<dc:creator>Psylem</dc:creator>
				<category><![CDATA[Consumer Electronics]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[G1]]></category>

		<guid isPermaLink="false">http://ubergeeky.com/blog/?p=1</guid>
		<description><![CDATA[In case you&#8217;re not familiar with Unix terminology, I&#8217;m not talking about some kind of sick techno-fetish. I&#8217;m talking about gaining full and unrestricted access to the software that powers your phone. Just like administrator on your Windows PC. You are free to do anything, including making it not go so good no more. When [...]]]></description>
			<content:encoded><![CDATA[<p>In case you&#8217;re not familiar with Unix terminology, I&#8217;m not talking about some kind of sick techno-fetish. I&#8217;m talking about gaining full and unrestricted access to the software that powers your phone. Just like administrator on your Windows PC. You are free to do anything, including making it not go so good no more.</p>
<p>When you purchase a PC, you don&#8217;t expect the manufacturer to tell you what operating system or other software you can or can&#8217;t run on it. You&#8217;re free to do what ever the hardware supports. So what&#8217;s so different about phones? The main difference is that mobile phone technology has always been entirely proprietary. Even if you had the access, there is probably not a lot you could legally do that would be of any use to you. But that&#8217;s finally starting to change now that Google have provided us with an alternative via the G1. This phone is the first generation of handsets powered by the entirely open source Android OS.</p>
<p>I wasn&#8217;t looking for a phone when I decided to get this bad boy. If it was just a phone, there&#8217;s no way I&#8217;d have gotten anything this big. This is not a phone, this is the beginning of the revolution. A miniature PC that you can even make phone calls with if you like. The Android OS is basically a Linux distribution with it&#8217;s own custom Java virtual machine. Most Android developers use Java, but it is possible to compile other Linux packages.</p>
<p>Unfortunately, root access isn&#8217;t handed to you out of the box. Understandably the phone manufacturer doesn&#8217;t want to give you such power because it can cost them more money in support and returns. However, chatting with the Android development community is a very fast way to find out everything you need to know to unlock it. There are also packages in the Android Market which either rely on root access or have greater functionality once it&#8217;s available. I&#8217;ll go more into it in the subsequent parts. This part I&#8217;ll just cover my first impressions of the handset.</p>
<p>I&#8217;d been eyeing off the Eee PC and Eee Boxes for a while now, but it looks like I&#8217;ve missed the opportunity to get one from the shops with Linux on them in Australia, seems they just don&#8217;t stock them any more. The G1 had been out for about a month in Australia, only a few phone companies are selling them on plans. I decided to just buy the thing outright from an on line store based in Australia called <a href="http://www.mobicity.com.au/">MobiCity</a>. I wanted fast delivery and a warranty, so I paid a little more than I probably should have.</p>
<p>When I got the email from the tracking company, it soon became apparent that the phone wasn&#8217;t coming from a warehouse in Australia, it was actually coming from Hong Kong. I thought perhaps it&#8217;s a good thing, it might get it faster. But no, it had to go through Sydney first so took the full 5 days to get delivered. I couldn&#8217;t really complain about this because they stated 1 to 5 days delivery time. Anyway, it was probably for the best since I was on a training session that week, otherwise I probably wouldn&#8217;t have taken much in.</p>
<p>Halfway through the training session I got news that the package had arrived. I collected it around lunch time. I even missed out on the free hot dogs being given out that day because I was tearing off packaging and trying to figure out how to get the thing going. Holding the thing, it was a little ugly, but actually not as bad as some people made out in the reviews I&#8217;d read. Also the weight was pretty good considering how powerful it is. I put the battery in and fired it up. The little android animation I&#8217;d seen in the emulator popped up. Bonus points for no boot music, something that always bugs me about Nokia.</p>
<p style="text-align: center;"><img class="aligncenter" src="http://lh3.ggpht.com/_fPD0YWoytOI/Sb5qWBnsaeI/AAAAAAAAAkQ/Ctr5Cwz0iBA/s800/splash.jpg" alt="" width="280" height="274" /></p>
<p>The phone prompted me for my Google account, and then failed to connect using GPRS. The system refused to budge until I registered with a Google account, after some trial and error I found that the menu button brought up an option to configure APN settings. A quick Google and I found some settings posted on Whirlpool forums that worked like a charm. I was in.</p>
<p>Looking at the accessories, it was apparent that I&#8217;d bought a phone that originated in the US, was repackaged in Asia for the Asian market and then repackaged again for Australia. I had several power cords and adapters of different shapes and sizes, some inside the original box, and some outside. The box seal had been opened, though nothing had been touched in side the box, they had obviously just put an Asian power adapter in there. I was a bit bummed about it, considering part of the reason I didn&#8217;t mind paying a little extra was because I thought I was buying from a solely Australian distributor. At least I have the 12 month warranty, which is something that wasn&#8217;t offered by the Ebay dealers. I&#8217;m really a bit frustrated with the consumer electronics market here in Australia. If a product isn&#8217;t in the mainstream, you pretty much have to buy from overseas. My disappointment was very short lived once I started actually playing with it.</p>
<p>I was actually pleasantly surprised by the handset. The screen snaps up and down quite solidly. I wouldn&#8217;t exactly call it durable, but I don&#8217;t think you&#8217;d be buying one for the farm or a construction site. I didn&#8217;t buy it for looks, but I was concerned that it could be a complete monstrosity from some of the reviews I&#8217;d read. Many of the pictures I&#8217;d seen looked all right, but they were obviously showing off the handset&#8217;s best angles. The keyboard is quite comfortable to use with your thumbs. Anyone who expects to be able to touch type on such a tiny thing is tripping. The back cover is just a thin slither of black plastic hiding the battery, sim card, rear speaker and the camera lens. Like I said previously, the weight was very reasonable for what you get. It weighs about the same as my wallet when it has a little bit of shrapnel in it. I&#8217;m predicting this thing isn&#8217;t going to age gracefully, I&#8217;ve probably got about 24 months of being able to use it in public before it&#8217;s just too embarrassing.</p>
<p>The operating system is smooth, stable and very importantly it has a very light footprint. With just 192MB ram and a 528 MHz processor I guess you could try and compare it to an early pentium, except the size, OS and fancy hardware makes that a bit of a joke really, I don&#8217;t know why I&#8217;m mentioning it. Like most Linux distributions, it has a sort of package management interface where you can download bucket loads of software for free. This particular system is called Android Market, and it currently contains hundreds, if not thousands of free applications to download. I pretty much spent the rest of the first night trying out the apps and setting up this blog (Android browser support being most important).</p>
]]></content:encoded>
			<wfw:commentRss>http://ubergeeky.com/blog/1-rooting-a-g1-phone-part-1/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
