<?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>..the cat came back.. &#187; iphone</title>
	<atom:link href="http://blog.automated.it/category/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.automated.it</link>
	<description>i does tech i does.</description>
	<lastBuildDate>Wed, 25 Nov 2009 08:30:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Pull That Squidgy iPhone application</title>
		<link>http://blog.automated.it/2009/06/02/pull-that-squidgy-iphone-application/</link>
		<comments>http://blog.automated.it/2009/06/02/pull-that-squidgy-iphone-application/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 08:34:56 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=217</guid>
		<description><![CDATA[Yesterday a friend was ranting away as usual about how stuff was always broken and in passing mentioned the iPhone application Squidgy, an application that allows you to control your Squeezbox(es). There are apparently two problems with the application. The first is that it crashes quite a bit and doesn&#8217;t really seem to work very [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday a friend was ranting away as usual about how stuff was always broken and in passing mentioned the <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> application Squidgy, an application that allows you to control your Squeezbox(es). There are apparently two problems with the application. The first is that it crashes quite a bit and doesn&#8217;t really seem to work very well, not particularly good for an application costing £5 ($8 / 6 EUR). The second is a little more serious. You see <a href="http://www.emccsoft.com/" target="_blank">EMCC Software Ltd</a>, the company that released the application, went into administration on 12th March 2009. The application is still on sale in the iTunes store despite the fact that EMCC are not providing support and their website consists of a statement that they are in administration and who the acting agents are. Perhaps it would be wise to find a different application to control your Squeezebox(es). </p>

<br><a href=http://blog.automated.it/2009/06/02/pull-that-squidgy-iphone-application/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F&amp;title=Pull+That+Squidgy+iPhone+application" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2009%2F06%2F02%2Fpull-that-squidgy-iphone-application%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2009/06/02/pull-that-squidgy-iphone-application/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Everywhere you go, always take the weather with you</title>
		<link>http://blog.automated.it/2009/03/21/everywhere-you-go-always-take-the-weather-with-you/</link>
		<comments>http://blog.automated.it/2009/03/21/everywhere-you-go-always-take-the-weather-with-you/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 18:11:03 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[jailbreak]]></category>
		<category><![CDATA[tracking]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=214</guid>
		<description><![CDATA[Originally I wasn&#8217;t going to blog about this but I finally gave in so here it is. This is another one of those things that you really just can&#8217;t do with your iPhone unless you&#8217;ve jailbroken it. 
Having the weather on your lock screen is nothing particularly new, there are enough Winterboard themes that allow [...]]]></description>
			<content:encoded><![CDATA[<p>Originally I wasn&#8217;t going to blog about this but I finally gave in so here it is. This is<img class="right" title="Tracing weather" src="/images/gallery/weather/smIMG_0055.PNG" alt="Tracking weather" width="196" height="294" /> another one of those things that you really just can&#8217;t do with your <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> unless you&#8217;ve <a title="Pwnage Tool" href="http://blog.iphone-dev.org/" target="_blank">jailbroken</a> it. </p>
<p>Having the weather on your lock screen is nothing particularly new, there are enough <a title="Winterboard" href="http://www.saurik.com/id/9" target="_blank">Winterboard</a> themes that allow you to do this. However, this is slightly different. I&#8217;ve never really understood why you&#8217;d only ever want to know what the weather was like in your home town. What does it matter? That is of course unless you never actually go anywhere.  Why not have the weather for where you are? Yes I know you could just look out of the window or actually go outside but that&#8217;s beside the point. What I wanted was to have the weather for where I actually am right now.  So, as part of my <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> <a title="Follow me wallpaper" href="http://blog.automated.it/2008/09/22/follow-me-wallpaper/" target="_blank">tracking</a> system I added the ability for the weather to follow me too.  The implementation is rather simple. </p>
<p>Since I&#8217;m already sending my location and retrieving the wallpaper image I&#8217;m also getting an override (overRide.js) for my weather configureMe.js. The overRide.js contains a single line, the location &#8211; as per the configureMe.js format:</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">var</span> locale<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;Lelystad,NL&quot;</span></pre></div></div>

<p>So each time the wallpaper is updated, so is this file. One of the key things you need to do to accomplish this for yourself is what is called reverse geocoding. That is, getting the name of your location from your GPS coordinates. </p>
<p>Now, the best way I&#8217;ve found of doing this so far is by using <a href='http://www.geonames.org' target=_new>geonames</a> this is a fantastic site that allows you to do the reverse geocoding without even blinking. For example, calling geonames using the url</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">http<span style="color: #339933;">:</span><span style="color: #006600; font-style: italic;">//ws.geonames.org/findNearbyPlaceName?lat=50.455&amp;lng=-3</span></pre></div></div>

<p>would result in the following xml being returned</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span> <span style="color: #000066;">standalone</span>=<span style="color: #ff0000;">&quot;no&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;geonames<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;geoname<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Seaton<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;lat<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>50.7049382166946<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/lat<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;lng<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>-3.06999206542969<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/lng<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;geonameId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>2638278<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/geonameId<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;countryCode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>GB<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/countryCode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;countryName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>United Kingdom<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/countryName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;fcl<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>P<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/fcl<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;fcode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>PPL<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/fcode<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
        <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;distance<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>28.2265<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/distance<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/geoname<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/geonames<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>This gives you pretty much everything you could possibly want and for free too. Note the inclusion of your distance between your coordinates and the the coordinates returned (nearest named location).</p>
<p>Now I know what you&#8217;re thinking. Why would I retrieve a file with the data in it from my server, why not parse the xml in the javascript on the lock screen. You&#8217;re right, I could and you, possibly, should. I don&#8217;t because I keep all my GPS data in a database on that server so I update the database with the actual locations too. I don&#8217;t parse the xml on the <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> because I don&#8217;t need to.</p>
<p>Of course I haven&#8217;t yet tested being in some obscure location that the weather provider doesn&#8217;t know about. Incidentally, geonames is so freaking good that, if you want to, you can <a href='http://www.geonames.org/export/' target=_new>download</a> a daily dump of the database.</p>
<p><a title="Lock screen tracking weather" rel="thumbnail" href="http://blog.automated.it/images/gallery/weather/IMG_0055.PNG"><img src="http://blog.automated.it/images/gallery/weather/thumb_IMG_0055.PNG" alt="Lock screen weather" width="63" height="94" /></a><a title="Lock screen tracking weather, later that day" rel="thumbnail" href="http://blog.automated.it/images/gallery/weather/IMG_0056.PNG"><img src="http://blog.automated.it/images/gallery/weather/thumb_IMG_0056.PNG" alt="Lock screen weather, later that day" width="63" height="95" /></a><br /></p>

<br><a href=http://blog.automated.it/2009/03/21/everywhere-you-go-always-take-the-weather-with-you/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F&amp;title=Everywhere+you+go%2C+always+take+the+weather+with+you" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2009%2F03%2F21%2Feverywhere-you-go-always-take-the-weather-with-you%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2009/03/21/everywhere-you-go-always-take-the-weather-with-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iPhone proximity sensing IS in the API</title>
		<link>http://blog.automated.it/2008/11/28/iphone-proximity-sensing-is-in-the-api/</link>
		<comments>http://blog.automated.it/2008/11/28/iphone-proximity-sensing-is-in-the-api/#comments</comments>
		<pubDate>Fri, 28 Nov 2008 11:43:04 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=198</guid>
		<description><![CDATA[There seems to have been a lot of misinformation flying about of late. With Google releasing a new version of their app incorporating proximity sensing, some blogs have claimed this is breaking AppStore rules by using undocumented hidden (non public) API calls. I&#8217;m here to tell you that&#8217;s just rubbish. All that has happened is [...]]]></description>
			<content:encoded><![CDATA[<p>There seems to have been a lot of misinformation flying about of late. With <a href="http://www.google.com" target='blank'>Google</a> releasing a new version of their app incorporating proximity sensing, some <a title="Fail!" href="http://www.moconews.net/entry/419-googles-breaks-iphone-app-rules/" target="_blank">blogs</a> have claimed this is breaking AppStore rules by using undocumented hidden (non public) API calls. I&#8217;m here to tell you that&#8217;s just rubbish. All that has happened is the people reporting it haven&#8217;t even bothered to check. Want to prove this to yourself?</p>
<p>1. Start Xcode and pick one of the templates.<br />
2. Load up the AppDelegate code and skip to &#8216;applicationDidFinishLaunching&#8217;.<br />
3. Type &#8216;application.&#8217; (note the full stop after the word application)<br />
4. Hit escape and you&#8217;ll get a list, scroll down to items starting with P<br />
5. Oh look there it is&#8230;</p>
<p>For those without Xcode here&#8217;s a picture.</p>
<div class="wp-caption alignnone" style="width: 452px"><img src="/images/iphoneproximity.png" alt="Oh, that must be the non-public public api..." width="442" height="302" /><p class="wp-caption-text">Oh, that must be the non-public public api...</p></div>
<p>For those that want to see the what the documentation says</p>
<p><code><br />
proximitySensingEnabled</p>
<p>A Boolean value that determines whether proximity sensing is enabled.</p>
<p>@property(nonatomic, getter=isProximitySensingEnabled) BOOL proximitySensingEnabled</p>
<p>Discussion<br />
YES if proximity sensing is enabled; otherwise NO. Enabling proximity sensing tells <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> OS that it may need to blank the screen if the user’s face is near it. Proximity sensing is disabled by default.</p>
<p>Availability</p>
<p>Available in <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> OS 2.0 and later.</p>
<p>Declared In<br />
UIApplication.h</p>
<p></code></p>
<p>Unfortuneately once some people grab hold of false information no facts will get in their way. Anyone that knows me will tell you that I&#8217;m really not fond of either <a href="http://www.google.com" target='blank'>Google</a> or Apple, but let&#8217;s just get stuff right shall we. </p>
<p><strong><br />
Update:</strong> I&#8217;ve had some discussion on irc and it was felt that I should point out that proximityStateChanged is used and following some additonal chatter on IRC with UncleBob who pointed out that &#8220;It&#8217;s not private in the OBjC sense just the Apple documented SDK sense. &#8221; he then went on to say &#8220;the whole thing is definately a peanut-gallery cockfest&#8221; which sums it all up really.</p>

<br><a href=http://blog.automated.it/2008/11/28/iphone-proximity-sensing-is-in-the-api/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F&amp;title=iPhone+proximity+sensing+IS+in+the+API" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F28%2Fiphone-proximity-sensing-is-in-the-api%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/11/28/iphone-proximity-sensing-is-in-the-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Concept iPhone Application</title>
		<link>http://blog.automated.it/2008/11/11/concept-iphone-application/</link>
		<comments>http://blog.automated.it/2008/11/11/concept-iphone-application/#comments</comments>
		<pubDate>Tue, 11 Nov 2008 20:35:39 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=196</guid>
		<description><![CDATA[I&#8217;ve been messing about trying to learn how to write iPhone apps. There&#8217;s a lot to take in but at the moment I&#8217;ve managed a concept application. A little shop (of horrors  . At the moment it simply reads data from an sqlite database and then displays information on the product. The buy now [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been messing about trying to learn how to write <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> apps. There&#8217;s a lot to take in but at the moment I&#8217;ve managed a concept application. A little shop (of horrors <img src='http://blog.automated.it/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . At the moment it simply <img class="left" src="/images/gallery/iphoneapp1/inline_search_sm.png" alt="" width="160" height="240" />reads data from an sqlite database and then displays information on the product. The buy now button currently just jumps to the product url at <a title="linitx" href="http://linitx.com?ref=tccb" target="_blank">Linitx.com</a>.</p>
<p><strong>Update:</strong> Added a screenshot when rotated. The <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> SDK handles the rotation automatically, all you need to do is specify which parts of which objects move or resize. All that can be done from Interface Builder. Easy as pie. Also note the changed title bar colour, in keeping with <a href="http://linitx.com" target='blank'>LinITX</a>, and the title text. The shop title (<a href="http://linitx.com" target='blank'>LinITX</a>) and shop base product URL are read from a plist file. I suppose they could be read from the sqlite db but I am experimenting so learning how to read a plist file is useful too.</p>
<p><strong>Update 2:</strong> Spent ages last night trying to work out why some of the text descriptions for products came out of the database as null. Discovered that when importing the data file it wasn&#8217;t using UTF8 encoding, which is apparently all sqlite deals with. Loading up the source data file into TextEdit under OSX and saving it as UTF8 then reimporting solved the problem.  I also modified how things are displayed. The image and text are inserted into a UIWebView so are now scaleable by the user. The images are also base64 encoded and in the database. This increases the database size but means the application can still be used offline. Before none of the pictures would display if there was no network connectivity.</p>
<p><strong>Update 3:</strong> Added the ability to search the list. The search bar appears when the search button is pressed and hides again when the search is complete.</p>
<p><a title="Product List" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0034.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0034.PNG" alt="Product List" width="32" height="48" /></a><a title="Product detail" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0033.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0033.PNG" alt="Product detail" width="32" height="48" /></a><a title="Product detail rotated" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0035.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0035.PNG" alt="Product detail rotated" width="48" height="32" /></a><a title="Additional toolbar" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0037.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0037.PNG" alt="Additional toolbar" width="32" height="48" /></a><a title="Search" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0038.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0038.PNG" alt="Search" width="32" height="48" /></a><a title="Searching for DDR2 memory" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphoneapp1/IMG_0039.PNG"><img src="http://blog.automated.it/images/gallery/iphoneapp1/thumb_IMG_0039.PNG" alt="Searching for DDR2 memory" width="32" height="48" /></a></p>

<br><a href=http://blog.automated.it/2008/11/11/concept-iphone-application/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F&amp;title=Concept+iPhone+Application" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F11%2Fconcept-iphone-application%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/11/11/concept-iphone-application/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Meet JO Black</title>
		<link>http://blog.automated.it/2008/11/01/meet-jo-black/</link>
		<comments>http://blog.automated.it/2008/11/01/meet-jo-black/#comments</comments>
		<pubDate>Sat, 01 Nov 2008 14:37:24 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[hardware]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[IMIV]]></category>
		<category><![CDATA[Music]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=195</guid>
		<description><![CDATA[Having the IMIV in the car makes driving around much more fun but up until recently I had my iPhone and prior to that my iPod Classic flapping about on the passenger seat. It worked but wasn&#8217;t particularly elegant and of course the moment I had a passenger in the 
car there was a problem. [...]]]></description>
			<content:encoded><![CDATA[<p>Having the <a title="IMIV" href="http://blog.automated.it/2008/01/19/imiv-music-to-my-ears/">IMIV</a> in the car makes driving around much more fun but up until recently I had my <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> and prior to that my iPod Classic flapping about on the passenger seat. It worked but wasn&#8217;t particularly elegant and of course the moment I had a passenger in the <img class="right" title="JO Black" src="/images/gallery/joblack/joblack_inline.jpg" alt="" width="200" height="267" /><br />
car there was a problem. This week I finally broke and decided to sort out the problem. To be honest I was looking for something cheap and functional. A quick search lead me to the JO BLACK from <a title="x castro" href="http://www.x-castro.com/" target="_blank">x castro</a> design. This is a rather simple frame with what I can only describe as a bulldog clip on the back. The JO works rather simply. You squeeze the clip to open it and slip it onto one of your car air vents. Your iPod or <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> or other device slips into it, gently held by the neoprene arms. The arms can be bent to allow more or less grip, so, although it seems to be an <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> or iPod holder it isn&#8217;t just that, it can safely hold pretty much any handheld device &#8211; within reason of course. The fact that it has an open base means I can have the IMIV cable connected with no issues.</p>
<p>The JO is available with the neoprene in one of 7 colours, the base frame is always black but the colour range is varied enough for most tastes.</p>
<p>If you&#8217;re looking for a passive holder for your phone or music player then for the money the JO series suit. One thing I did notice when looking at the pricing on <a title="x castro" href="http://www.x-castro.com/" target="_blank">their site</a> compared to <a href="http://www.amazon.co.uk/gp/product/B001HKROD8?ie=UTF8&amp;tag=thcacaba-21&amp;linkCode=as2&amp;camp=1634&amp;creative=6738&amp;creativeASIN=B001HKROD8">Amazon</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.co.uk/e/ir?t=thcacaba-21&amp;l=as2&amp;o=2&amp;a=B001HKROD8" border="0" alt="" width="1" height="1" /> was that although the x castro site and Amazon prices matched (after shipping), there seemed to be no way to select the free shipping for the UK. The 3 options in the dropdown box all added more to the price.</p>
<p><a title="Front" rel="thumbnail" href="http://blog.automated.it/images/gallery/joblack/fjoblackIMG_0105.JPG"><img src="http://blog.automated.it/images/gallery/joblack/thumb_joblackIMG_0105.JPG" alt="Front view" width="32" height="48" /></a><a title="Front" rel="thumbnail" href="http://blog.automated.it/images/gallery/joblack/fjoblackIMG_0108.JPG"><img src="http://blog.automated.it/images/gallery/joblack/thumb_joblackIMG_0108.JPG" alt="Front view" width="32" height="48" /></a><a title="Side" rel="thumbnail" href="http://blog.automated.it/images/gallery/joblack/fjoblackIMG_0109.JPG"><img src="http://blog.automated.it/images/gallery/joblack/thumb_joblackIMG_0109.JPG" alt="Side view" width="32" height="48" /></a><a title="Angle side" rel="thumbnail" href="http://blog.automated.it/images/gallery/joblack/fjoblackIMG_0112.JPG"><img src="http://blog.automated.it/images/gallery/joblack/thumb_joblackIMG_0112.JPG" alt="Angle side" width="32" height="48" /></a><a title="With battery" rel="thumbnail" href="http://blog.automated.it/images/gallery/joblack/fjoblackIMG_0110.JPG"><img src="http://blog.automated.it/images/gallery/joblack/thumb_joblackIMG_0110.JPG" alt="With battery" width="32" height="48" /></a></p>

<br><a href=http://blog.automated.it/2008/11/01/meet-jo-black/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F&amp;title=Meet+JO+Black" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F11%2F01%2Fmeet-jo-black%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/11/01/meet-jo-black/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fullscreen iPhone WebApps</title>
		<link>http://blog.automated.it/2008/10/19/fullscreen-iphone-webapps/</link>
		<comments>http://blog.automated.it/2008/10/19/fullscreen-iphone-webapps/#comments</comments>
		<pubDate>Sun, 19 Oct 2008 16:44:59 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=193</guid>
		<description><![CDATA[Web applications on the iPhone have always been second class citizens without access to the really interesting features. To add insult to injury web applications lost a large chunk of screen real estate to the top and bottom Safari toolbars. 
Well, now they don&#8217;t need to. For users with firmware 2.1, if you add the [...]]]></description>
			<content:encoded><![CDATA[<p>Web applications on the <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> have always <img src="http://blog.automated.it/images/gallery/webapps/Webapp_inline.png" class='right'>been second class citizens without access to the really interesting features. To add insult to injury web applications lost a large chunk of screen real estate to the top and bottom Safari toolbars. </p>
<p>Well, now they don&#8217;t need to. For users with firmware 2.1, if you add the following lines to the &lt;head&gt; section of your web application page then, when someone adds your web application to their home screen and then uses it all they will see is the standard bar showing carrier name, signal and battery level. As ever the pictures should make it much clearer. Notice that there is no address bar or lower toolbar <strong>at all</strong>, even when scrolling.<br />
<span id="more-193"></span></p>

<div class="wp_syntax"><div class="code"><pre class="html" style="font-family:monospace;">&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width; 
 initial-scale=1.0; maximum-scale=1.0; user-scalable=1;&quot; /&gt;
&nbsp;
&lt;meta name=&quot;apple-mobile-web-app-capable&quot; content=&quot;yes&quot; /&gt;
&nbsp;
&lt;meta names=&quot;apple-mobile-web-app-status-bar-style&quot; 
 content=&quot;black-translucent&quot; /&gt;</pre></div></div>

<p>
One thing I should point out is that, if you already have a link to a particular web application on your home screen, you will need to delete it and recreate it after the above lines have been added. </p>
<p><a title="Web app opened from Home Screen" rel="thumbnail" href="http://blog.automated.it/images/gallery/webapps/Webapp_openl.png"><img src="http://blog.automated.it/images/gallery/webapps/Webapp_open.png" alt="Web app opened from Home Screen" width="32" height="48" /></a><a title="Web app scrolling down - no address bar" rel="thumbnail" href="http://blog.automated.it/images/gallery/webapps/Webapp_downl.png"><img src="http://blog.automated.it/images/gallery/webapps/Webapp_scrolldown.png" alt="Web app scrolling down - no address bar" width="32" height="48" /></a><a title="Web app scrolling up" rel="thumbnail" href="http://blog.automated.it/images/gallery/webapps/Webapp_upl.png"><img src="http://blog.automated.it/images/gallery/webapps/Webapp_scrollup.png" alt="Web app scrolling up" width="32" height="48" /></a></p>

<br><a href=http://blog.automated.it/2008/10/19/fullscreen-iphone-webapps/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F&amp;title=Fullscreen+iPhone+WebApps" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F19%2Ffullscreen-iphone-webapps%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/10/19/fullscreen-iphone-webapps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lock screen fun</title>
		<link>http://blog.automated.it/2008/10/06/lock-screen-fun/</link>
		<comments>http://blog.automated.it/2008/10/06/lock-screen-fun/#comments</comments>
		<pubDate>Mon, 06 Oct 2008 22:15:18 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=171</guid>
		<description><![CDATA[Yet more jailbroken iPhone fun based on Status Notifier. The original version simply placed icons on the lock screen if you had SMS&#8217;s, email, voice mail or missed calls. I wanted to have the actual counts visible, just like you get on the standard icons. The CSS for the badge is simple:


.shield &#123;
   [...]]]></description>
			<content:encoded><![CDATA[<p>Yet more <a href="http://blog.iphone-dev.org/" target='blank'>jailbroken</a> <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> fun based on <a title="Status Notifier" href="http://code.google.com/p/statusnotifier/" target="_blank">Status Notifier</a>. <img class="left" title="Notify icons with badges" src="/images/gallery/iphone/notifysmall.png" alt="" width="320" height="209" />The original version simply placed icons on the lock screen if you had SMS&#8217;s, email, voice mail or missed calls. I wanted to have the actual counts visible, just like you get on the standard icons. The CSS for the badge is simple:<br />
<span id="more-171"></span></p>

<div class="wp_syntax"><div class="code"><pre class="css" style="font-family:monospace;"><span style="color: #6666ff;">.shield</span> <span style="color: #00AA00;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">position</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">relative</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #933;">7px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #6666ff;">.badge</span> <span style="color: #00AA00;">&#123;</span>
        <span style="color: #000000; font-weight: bold;">font-family</span><span style="color: #00AA00;">:</span> helvetica<span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">font-weight</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">bold</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">position</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">absolute</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">text-align</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">center</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">top</span><span style="color: #00AA00;">:</span> <span style="color: #933;">-2px</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">:</span> <span style="color: #933;">52px</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">30px</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">24px</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #933;">3px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">url</span><span style="color: #00AA00;">&#40;</span><span style="color: #ff0000; font-style: italic;">imgs/badge.png</span><span style="color: #00AA00;">&#41;</span> <span style="color: #993333;">no-repeat</span> <span style="color: #cc66cc;">0</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
        <span style="color: #000000; font-weight: bold;">color</span> <span style="color: #00AA00;">:</span>  <span style="color: #993333;">white</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div>

<p>the badge.png image is just a copy of the original from the <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a>. Then we just wrap the icon and badge in the &#8217;shield&#8217; div</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;">&nbsp;
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;height: 220px; width: 320px;&quot;</span>&gt;</span>
&nbsp;
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;shield&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">img</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;CallIcon&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:block&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;imgs/call.png&quot;</span> <span style="color: #000066;">alt</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;CallIconB&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;badge&quot;</span> </span>
<span style="color: #009900;">        <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none&quot;</span>&gt;</span>0<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;shield&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">img</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;MailIcon&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:block&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;imgs/mail.png&quot;</span> <span style="color: #000066;">alt</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;MailIconB&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;badge&quot;</span> </span>
<span style="color: #009900;">        <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none&quot;</span>&gt;</span>0<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;shield&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">img</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;SMSIcon&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:block&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;imgs/sms.png&quot;</span> <span style="color: #000066;">alt</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span>
     <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;SMSIconB&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;badge&quot;</span> </span>
<span style="color: #009900;">          <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none&quot;</span>&gt;</span>0<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;shield&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">img</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;VoiceMailIcon&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:block&quot;</span> </span>
<span style="color: #009900;">         <span style="color: #000066;">src</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;imgs/voicemail.png&quot;</span> <span style="color: #000066;">alt</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;VoiceMailIconB&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;badge&quot;</span> </span>
<span style="color: #009900;">        <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none&quot;</span>&gt;</span>0<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></div></div>

<p>Now it&#8217;s just a case of tweaking the javascript to update the values of the badges. The showElement function gets a new parameter, the count for this icon&#8217;s badge. We set the value and make the badge visible.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> showElement<span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #339933;">,</span>count<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
   elCn <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #339933;">+</span><span style="color: #3366CC;">'B'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>elCn<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
       elCn.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> count<span style="color: #339933;">;</span>
       elCn.<span style="color: #660066;">style</span>.<span style="color: #660066;">display</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">'block'</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
    document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">style</span>.<span style="color: #660066;">display</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>The hideElement function gets a little change to hide the badge completely if the count is 0. I&#8217;m a little undecided as to if the icons should always be on display, I think I prefer that they are &#8211; hence the commenting out of the style change.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> hideElement<span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
   elCn <span style="color: #339933;">=</span> document.<span style="color: #660066;">getElementById</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #339933;">+</span><span style="color: #3366CC;">'B'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>elCn<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
      elCn.<span style="color: #660066;">innerHTML</span> <span style="color: #339933;">=</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">;</span>
      elCn.<span style="color: #660066;">style</span>.<span style="color: #660066;">display</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">&quot;none&quot;</span><span style="color: #339933;">;</span>
   <span style="color: #009900;">&#125;</span>
      <span style="color: #006600; font-style: italic;">//document.getElementById(name).style.display = &quot;none&quot;;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p>All that remains is a small change to the call to showElement to pass the value.</p>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #003366; font-weight: bold;">function</span> updateIcon<span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
&nbsp;
   <span style="color: #003366; font-weight: bold;">var</span> value<span style="color: #339933;">;</span>
   <span style="color: #003366; font-weight: bold;">var</span> elVa<span style="color: #339933;">;</span>
&nbsp;
   <span style="color: #000066; font-weight: bold;">try</span> <span style="color: #009900;">&#123;</span> 
      elVa <span style="color: #339933;">=</span>  xmlReq.<span style="color: #660066;">responseXML</span>.<span style="color: #660066;">getElementsByTagName</span><span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      value <span style="color: #339933;">=</span> elVa<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span>.<span style="color: #660066;">firstChild</span>.<span style="color: #660066;">nodeValue</span><span style="color: #339933;">;</span>
&nbsp;
      <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>value <span style="color: #339933;">!=</span> <span style="color: #3366CC;">&quot;0&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
          showElement<span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;Icon&quot;</span><span style="color: #339933;">,</span>value<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span>
          hideElement<span style="color: #009900;">&#40;</span><span style="color: #000066;">name</span> <span style="color: #339933;">+</span> <span style="color: #3366CC;">&quot;Icon&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
      <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span> 
&nbsp;
   <span style="color: #000066; font-weight: bold;">catch</span><span style="color: #009900;">&#40;</span>error<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
   <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p><a title="Updating badges on the icons" rel="thumbnail" href="http://blog.automated.it/images/gallery/iphone/notifierbadges.png"><img src="http://blog.automated.it/images/gallery/iphone/thumb_notifierbadges.png" alt="Updating badges" width="32" height="48" /></a></p>

<br><a href=http://blog.automated.it/2008/10/06/lock-screen-fun/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F&amp;title=Lock+screen+fun" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F10%2F06%2Flock-screen-fun%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/10/06/lock-screen-fun/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Follow Me Wallpaper</title>
		<link>http://blog.automated.it/2008/09/22/follow-me-wallpaper/</link>
		<comments>http://blog.automated.it/2008/09/22/follow-me-wallpaper/#comments</comments>
		<pubDate>Mon, 22 Sep 2008 11:50:58 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[tracking]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=139</guid>
		<description><![CDATA[Last night I tried a little experiment on my jailbroken iPhone. Since I&#8217;d already started poking about playing with my own Winterboard themes and have been tracking my iPhone&#8217;s location for a while now, I thought I&#8217;d see what happened if I mixed the two. So, how about wallpaper that followed you?  It turns [...]]]></description>
			<content:encoded><![CDATA[<p>Last night I tried a little experiment on my <a title="Pwnage Tool" href="http://blog.iphone-dev.org/" target="_blank">jailbroken</a> <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a>. Since I&#8217;d already started poking about playing with my own <a title="Winterboard" href="http://www.saurik.com/id/9" target="_blank">Winterboard</a> themes and have been tracking my <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a>&#8217;s location for a while now, I thought I&#8217;d see what happened if I mixed the two. So, how about wallpaper that followed you? <img class="right" title="Follow Me Wallpaper" src="/images/followmewp.png" alt="Follow Me" width="200" height="300" /> It turns out that combining the two is relatively straight forward. <a href="http://www.google.com" target='blank'>Google</a> now provide a mechanism for getting what they call <a title="Google Static Maps" href="http://code.google.com/apis/maps/documentation/staticmaps/" target="_blank">static maps</a> which will allow you to get an image centered on a set of coordinates. You can also add your own markers if you want.</p>
<p>There are some limitations on the number and size of the maps that you can retrieve so I employed a very simple caching mechanism to ensure I didn&#8217;t annoy <a href="http://www.google.com" target='blank'>Google</a>. This certainly helps speed things up when testing and also enabled me to identify a small issue I was having.<br />
<span id="more-139"></span><br />
One of the things I wanted to happen was that the image on the phone would only change if the location of the phone had changed and the phone had a network connection of some type (wifi/edge etc). So far it works pretty well except when the phone uses SkyHook IP  which manages to be 100&#8217;s of kilometers out. Thankfully since my positioning database has the source of the positioning I can filter out those dodgy SkyHook IP results.</p>
<p>I also found that it was better to remove the text from the docked icons. Well, technically, I didn&#8217;t actually remove it I just made it transparent. The text for the other icons was made red so that it can be seen over the underlying map. It&#8217;s a simple process. By adding the following lines to the Info.plist of my Winterboard theme, I get the desired effect.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;">&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;key<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>UndockedIconLabelStyle<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/key<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;string<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>font-size: 13px; color: red<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/string<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;key<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>DockedIconLabelStyle<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/key<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;string<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>font-size: 13px; color: transparent<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/string<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>Any of the <a href="http://www.google.com" target='blank'>Google</a> maps styles can be used (roadmap, mobile, satellite etc) but I prefer the mobile one since it&#8217;s clearer and the number of bytes that need to be transmitted is less than half of that for the satellite image.</p>

<br><a href=http://blog.automated.it/2008/09/22/follow-me-wallpaper/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F&amp;title=Follow+Me+Wallpaper" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F09%2F22%2Ffollow-me-wallpaper%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/09/22/follow-me-wallpaper/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Winterboard Rick Roll</title>
		<link>http://blog.automated.it/2008/08/12/winterboard-rick-roll/</link>
		<comments>http://blog.automated.it/2008/08/12/winterboard-rick-roll/#comments</comments>
		<pubDate>Tue, 12 Aug 2008 10:26:04 +0000</pubDate>
		<dc:creator>ScaredyCat / Andy Powell</dc:creator>
				<category><![CDATA[iphone]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[jailbreak]]></category>

		<guid isPermaLink="false">http://blog.automated.it/?p=67</guid>
		<description><![CDATA[Winterboard is a rather good application for a jailbroken iPhone that allows you to theme your iPhone&#8217;s appearance. It&#8217;s touted as a replacement for Summerboard, which I&#8217;ve never used. As with any theming you will want to download some, well, themes.

The Suprise theme is one that you do not want to install. Put simply it&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Winterboard" href="http://www.saurik.com/id/9" target="_blank">Winterboard</a> is a rather good application for a <a href="http://blog.iphone-dev.org/" target='blank'>jailbroken</a> <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> that allows you to theme your <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a>&#8217;s appearance. It&#8217;s touted as a replacement for Summerboard, which I&#8217;ve never used. As with any theming you will want to download some, well, themes.<br />
<span id="more-67"></span><br />
The <strong>Suprise</strong> theme is one that you <strong><em>do not </em></strong>want to install. Put simply it&#8217;s a <a title="Rick Roll" href="http://en.wikipedia.org/wiki/Rickroll" target="_blank">Rick Roll </a>on your <a href="http://www.apple.com/iphone/" target='blank'>iPhone</a> home screen.</p>
<p>What?</p>
<p>&#8220;Way to go spoiling it?&#8221;</p>
<p>I don&#8217;t care.</p>
<p>What it has done is cast a shadow over the Big Boss &amp; Planet-iPhones repositories which either don&#8217;t verify or don&#8217;t care what ends up in their listings. While a Rick Roll isn&#8217;t dangerous it does highlight the dangers of installing applications etc from these repositories. It&#8217;s <strong>all</strong> about trust, if you can&#8217;t trust a repository it has no value. While the theme was probably a joke it has just made these repositories untrustworthy.</p>

<br><a href=http://blog.automated.it/2008/08/12/winterboard-rick-roll/><p><img style='float:right;margin-left:15px;margin-bottom:10px;' src='http://blog.automated.it/images/tccb.png' border='0'></a></p><br>

<br><span class="slashdigglicious">
<a href="http://slashdot.org/bookmark.pl?url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Slashdot It!"><img src="http://slashdot.org/favicon.ico" height="16" width="16" alt="[Slashdot]" /></a>
<a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Digg This Story"><img src="http://digg.com/favicon.ico" width="16" height="16" alt="[Digg]" /></a>
<a href="http://reddit.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Reddit"><img src="http://reddit.com/favicon.ico" width="16" height="16" alt="[Reddit]" /></a>
<a href="http://del.icio.us/post?url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Save to del.icio.us" onclick="window.open('http://del.icio.us/post?v=4&amp;noui&amp;jump=close&amp;url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll', 'delicious', 'toolbar=no,width=700,height=400'); return false;"><img src="http://del.icio.us/favicon.ico" width="16" height="16" alt="[del.icio.us]" /></a>
<a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F" title="Share on Facebook"><img src="http://www.facebook.com/favicon.ico" width="16" height="16" alt="[Facebook]" /></a>
<a href="http://technorati.com/faves?add=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F" title="Add to my Technorati Favorites"><img src="http://technorati.com/favicon.ico" width="16" height="16" alt="[Technorati]" /></a>
<a href="http://www.google.com/bookmarks/mark?op=edit&amp;output=popup&amp;bkmk=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Save to Google Bookmarks"><img src="http://www.google.com/favicon.ico" width="16" height="16" alt="[Google]" /></a>
<a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F&amp;title=Winterboard+Rick+Roll" title="Stumble it!"><img src="http://www.stumbleupon.com/favicon.ico" width="16" height="16" alt="[StumbleUpon]" /></a>
<a href="http://twitter.com/home?status=Currently reading http%3A%2F%2Fblog.automated.it%2F2008%2F08%2F12%2Fwinterboard-rick-roll%2F" title="Click to send this page to Twitter!" target="_blank"><img src="http://www.twitter.com/favicon.ico" width="16" height="16" alt="[Twitter]" /></a>
</span><br><br>]]></content:encoded>
			<wfw:commentRss>http://blog.automated.it/2008/08/12/winterboard-rick-roll/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
