<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8888043849745994396</id><updated>2012-01-05T21:50:40.488+01:00</updated><title type='text'>Neil's Android</title><subtitle type='html'>This is a blog about my Android applications.&lt;br&gt;
In this blog I will announce new releases and talk about work in progress.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>90</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3689414153663854951</id><published>2012-01-05T21:50:00.002+01:00</published><updated>2012-01-05T21:50:40.496+01:00</updated><title type='text'>MySpeed 5.1.3 - flitspaal.nl site has closed</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I removed the &lt;a href="http://flitspaal.nl/"&gt;flitspaal.nl&lt;/a&gt; downloader from &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; because the site closed down. &amp;nbsp;That's a shame because they were the best single source for Netherlands speed camera.&lt;br /&gt;&lt;br /&gt;On an unrelated note, I created a landing page at &lt;a href="http://myspeed.l6n.org/"&gt;myspeed.L6n.org&lt;/a&gt;&amp;nbsp;:-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3689414153663854951?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3689414153663854951/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2012/01/myspeed-513-flitspaalnl-site-has-closed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3689414153663854951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3689414153663854951'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2012/01/myspeed-513-flitspaalnl-site-has-closed.html' title='MySpeed 5.1.3 - flitspaal.nl site has closed'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4552753217578536262</id><published>2012-01-02T12:37:00.001+01:00</published><updated>2012-01-02T12:37:36.422+01:00</updated><title type='text'>MySpeed 5.1.2 - minor update</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Just a small update to&amp;nbsp;&lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;&amp;nbsp;to use a compressed format for the &lt;a href="http://wiki.openstreetmap.org/wiki/Tag:highway%3Dspeed_camera"&gt;OpenStreetMap cameras&lt;/a&gt; that are now being downloaded from my own server.&lt;br /&gt;&lt;br /&gt;I also changed the colour of the route to be blue instead of green to be consistent with most routing programs.&lt;br /&gt;&lt;br /&gt;I'm still going round in circles a bit with what should be a major change to MySpeed. &amp;nbsp;I've had the plan for quite a while now to make a version with fewer settings so that it's easier to use out of the box. &amp;nbsp;I'd also like to make a version that uses &lt;a href="http://code.google.com/p/mapsforge/"&gt;mapsforge&lt;/a&gt; offline vector maps. &amp;nbsp;I think the latter should be a paid feature since it requires effort to create and host the maps. &amp;nbsp;I'm currently thinking that maybe I should remove more features from the MySpeed core and allow users to add them as add-ons. &amp;nbsp;This is also consist with the idea that I'd like to make it more modular and more easily testable.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4552753217578536262?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4552753217578536262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2012/01/myspeed-512-minor-update.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4552753217578536262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4552753217578536262'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2012/01/myspeed-512-minor-update.html' title='MySpeed 5.1.2 - minor update'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8684596374087480352</id><published>2011-12-21T07:34:00.000+01:00</published><updated>2011-12-21T07:34:15.284+01:00</updated><title type='text'>MySpeed 5.1.1 - fix a crash on Nexus S</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; was crashing on the Nexus S. &amp;nbsp;Turns out the problem was that on Android 4.0 (ICS) devices hardware acceleration is turned on by default, but some operations are not supported with hardware acceleration, specifically &lt;a href="http://android-developers.blogspot.com/2011/03/android-30-hardware-acceleration.html"&gt;Canvas.drawPicture&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It was also crashing in the radar view because I forgot to implement something :-(&lt;br /&gt;&lt;br /&gt;Based on the Analytics, I re-ordered the menu to put the more-frequently used items first.&lt;br /&gt;&lt;br /&gt;Since the &lt;a href="http://l6n.org/myspeed/data.shtml"&gt;OSM XAPI&lt;/a&gt; server isn't working (that's used for downloading OSM cameras) I decided to use my own mirror of it. &amp;nbsp;So now you can download the cameras in the OSM database. &amp;nbsp;This should especially make people in Russia happy since POIplaza doesn't cover Russia but there's lots in OSM.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8684596374087480352?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8684596374087480352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/12/myspeed-511-fix-crash-on-nexus-s.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8684596374087480352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8684596374087480352'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/12/myspeed-511-fix-crash-on-nexus-s.html' title='MySpeed 5.1.1 - fix a crash on Nexus S'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6358467450051673571</id><published>2011-12-07T13:31:00.001+01:00</published><updated>2011-12-07T13:33:20.587+01:00</updated><title type='text'>Dynamic DNS Client 2.0.3 - support new ZoneEdit response</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;It seems like &lt;a href="http://www.zoneedit.com/faq.html"&gt;ZoneEdit&lt;/a&gt; changed their response to be XML, so I changed the &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;Dynamic DNS Client&lt;/a&gt; to handle that.&lt;br /&gt;&lt;br /&gt;I also had a look at supporting &lt;a href="http://freedns.afraid.org/"&gt;freedns.afraid.org&lt;/a&gt;, but it turns out that their protocol is wildly different to everyone else, so I didn't think it was worth the effort.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6358467450051673571?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6358467450051673571/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/12/dynamic-dns-client-203-support-new.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6358467450051673571'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6358467450051673571'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/12/dynamic-dns-client-203-support-new.html' title='Dynamic DNS Client 2.0.3 - support new ZoneEdit response'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6992283191040699646</id><published>2011-12-06T21:37:00.001+01:00</published><updated>2011-12-06T21:58:06.502+01:00</updated><title type='text'>MySpeed 5.1.0 - with initial settings</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;As I mentioned, a&lt;a href="http://neil-and.blogspot.com/2011/10/dynamic-dns-app-200-generic-app-and.html"&gt; while ago&lt;/a&gt; now, I've done an initial terms and settings dialog for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. &amp;nbsp;This is to make it clear to the user what the app will do with the data that is collected by MySpeed.&lt;br /&gt;&lt;br /&gt;I also added Spanish (Latin American) translation, thanks to a helpful user who found the &lt;a href="http://crowdin.net/project/myspeed/invite"&gt;crowdin translation page&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also did a few performance improvements. &amp;nbsp;One key point that was mentioned at &lt;a href="http://neil-and.blogspot.com/2011/11/report-on-andevcon-ii.html"&gt;AnDevCon&lt;/a&gt;&amp;nbsp;is to avoid object allocations in &lt;a href="http://developer.android.com/reference/android/view/View.html#draw(android.graphics.Canvas)"&gt;draw()&lt;/a&gt;. &amp;nbsp;I also got a voucher for a free &lt;a href="http://oreilly.com/"&gt;O'Reilly&lt;/a&gt; book. &amp;nbsp;I got &lt;a href="http://oreilly.com/catalog/0636920010364"&gt;Programming Android&lt;/a&gt;. &amp;nbsp;It's a good book, and I picked up the tip to use launchMode to prevent multiple instances of activities in the back stack. &amp;nbsp;Specifically I used&amp;nbsp;&lt;a href="http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_CLEAR_TOP"&gt;FLAG_ACTIVITY_CLEAR_TOP&lt;/a&gt;, but it's a good tip to always consider&amp;nbsp;&lt;a href="http://developer.android.com/guide/topics/manifest/activity-element.html#lmode"&gt;android:launchMode&lt;/a&gt; and some of the other &lt;a href="http://developer.android.com/guide/topics/manifest/activity-element.html"&gt;activity&lt;/a&gt; attributes.&lt;br /&gt;&lt;br /&gt;What's next?&lt;br /&gt;I still intend to do the &lt;a href="http://neil-and.blogspot.com/2011/07/myspeed-recent-updates-and-plans.html"&gt;simplified version of MySpeed&lt;/a&gt;.&lt;br /&gt;I'm also continuing to develop &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt;. &amp;nbsp;I hear that ZoneEdit has changed it's protocol so I'll have a look at that.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6992283191040699646?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6992283191040699646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/12/myspeed-510-with-initial-settings.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6992283191040699646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6992283191040699646'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/12/myspeed-510-with-initial-settings.html' title='MySpeed 5.1.0 - with initial settings'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1159115555060050482</id><published>2011-11-16T07:28:00.001+01:00</published><updated>2011-11-16T07:32:55.157+01:00</updated><title type='text'>DynDNS 2.0.2 - support namecheap</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Version 2.0.2 of the &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;dynamic DNS clients&lt;/a&gt; now has support for &lt;a href="http://www.namecheap.com/support/knowledgebase/category.aspx/11/dynamic-dns"&gt;namecheap&lt;/a&gt;. &amp;nbsp;The difference between namecheap and every other dynamic DNS provider is that they return an XML response.&lt;br /&gt;&lt;br /&gt;I also change the handling of nochg responses to notify but not stop updating.&lt;br /&gt;&lt;br /&gt;And perhaps more importantly, I fixed a force close issue on some devices. &amp;nbsp;Sorry it took so long to fix this :-(&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1159115555060050482?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1159115555060050482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/11/dyndns-202-support-namecheap.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1159115555060050482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1159115555060050482'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/11/dyndns-202-support-namecheap.html' title='DynDNS 2.0.2 - support namecheap'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8009557507954119159</id><published>2011-11-06T07:00:00.000+01:00</published><updated>2011-11-16T17:06:32.306+01:00</updated><title type='text'>Report on AnDevCon II</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Last week I was at&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;&lt;/span&gt;&lt;a href="http://www.andevcon.com/AndevCon_II/" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;AnDevCon II&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;. &amp;nbsp;This blog entry summarises my thoughts about the event.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Some of the classes&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;covered a lot of technical detail in a short time, and some s&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;eemed to be a bit light on technical detail. &amp;nbsp;Overall I think the level was pitched just right so that most of the audience got the most out of the conference.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;I was impressed with the amount of attention to security and testing - in the number of classes and the high attendances - and the representation by exhibitors.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;I'm not going to list all the classes I went to because there were four a day for four days (minus a few) so this will just be a long list. &amp;nbsp;Instead I'll just describe the highlights. &amp;nbsp;Each time-slot had 5-7 classes, so obviously I can only talk about the ones I went to.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://blog.donnfelker.com/2011/11/06/andevcon-tablet-programming-workshop-presentation/" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Donn Felker's class on &lt;b&gt;Tablet Programming&lt;/b&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; was a bit slow at a technical level, but it was a nice introduction to show a practical example of &lt;/span&gt;&lt;a href="http://developer.android.com/guide/topics/fundamentals/fragments.html" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Fragment&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;s and the &lt;/span&gt;&lt;a href="http://developer.android.com/guide/topics/ui/actionbar.html" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Action Bar&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; that were introduced in &lt;/span&gt;&lt;a href="http://developer.android.com/sdk/android-3.0-highlights.html" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Honeycomb&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt; and made available in the&amp;nbsp;&lt;a href="http://developer.android.com/sdk/compatibility-library.html"&gt;compatibility&amp;nbsp;library (AKA support package)&lt;/a&gt;&amp;nbsp;for use in earlier API versions. &amp;nbsp;Fragments are reusable UI components so that you can easily design a phone and tablet layout without too much extra effort. &amp;nbsp;The Action Bar seems to be just a combination of a &lt;a href="http://developer.android.com/reference/android/widget/TabHost.html"&gt;TabHost&lt;/a&gt; and a &lt;a href="http://developer.android.com/reference/android/view/Menu.html"&gt;Menu&lt;/a&gt;. &amp;nbsp;Since all of these components are very close to what your app already does, and they're available in the compatibility library, you might just as well use them with almost no extra effort and get ahead with you future-proofing.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;More about Fragments later...&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The other point Donn made about tablets is that you should pay attention to where you put user input elements, eg buttons. &amp;nbsp;On a phone you can pretty much reach the whole screen with equal ease using your thumbs, regardless of whether you're left- or right-handed. &amp;nbsp;On a tablet this is not the case.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://www.simpligility.com/2011/11/news-about-testing-android-apps/"&gt;Manfred Moser&lt;/a&gt; gave a very nice overview of many &lt;b&gt;test automation and continuous integration&lt;/b&gt; frameworks. &amp;nbsp;He was very knowledgeable, and the main thing I learned from his talk is that there are many different types of testing and you should use more than one so that you cover different test scenarios - Android unit testing, JVM unit testing, scripted automation testing, &lt;a href="http://developer.android.com/guide/developing/tools/monkey.html"&gt;Monkey&lt;/a&gt; testing. &amp;nbsp;And within those categories there's more choices. &amp;nbsp;Manfred also gave a good description of the &lt;a href="http://hudson-ci.org/"&gt;Hudson&lt;/a&gt; Continuous Integration tool, and explained that once you've set it up it's also not so difficult to try some other CI tools.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;a href="http://www.pushing-pixels.org/2011/11/11/deep-dive-into-responsive-mobile-design-the-conclusion.html"&gt;Kirill Grouchnikov&lt;/a&gt; gave a keynote speech and a technical class about &lt;b&gt;User eXperience&lt;/b&gt;. &amp;nbsp;His point was that you should make slightly different design for the main UI components and arrange them depending on the screen size. &amp;nbsp;Of course he focused on Android and Fragments, but the same applies to any kind of GUI, and he also showed how the same principle applies to web design. &amp;nbsp;As an example, the &lt;a href="http://googlecode.blogspot.com/2011/05/google-io-goes-mobile.html"&gt;Google I/O scheduler&lt;/a&gt; uses one or two columns, depending on the amount of available width.&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://farm7.static.flickr.com/6095/6332534028_6102ddc3c8_z.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="171" src="http://farm7.static.flickr.com/6095/6332534028_6102ddc3c8_z.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The point at which it switches between one or two (or three) columns - the &lt;b&gt;switch point&lt;/b&gt; - should be chosen according to the amount of space needed for your specific content, and not according to a "tablet", "phone" and "desktop" design. &amp;nbsp;For example if your menu needs 200px to look good and your main content needs 400px then your switch point would be 600px. &amp;nbsp;Rather than saying a tablet has a width of 600px and then also trying to squeeze the same design into portrait mode. &amp;nbsp;Within the 600px layout, you can then scale up in whichever way you like using the additional width above 600px. &amp;nbsp;You should also have a maximum width - don't try and use all available width just because it's there. &amp;nbsp;If your content is too wide then there's too much white space and it's difficult for your eye to scan across to the next line.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Nathan Mellor's talk on &lt;b&gt;Marketing for&amp;nbsp;Independent&amp;nbsp;Developers&lt;/b&gt; was much the same line I've been hearing for a while now, about how to make a business out of optimising Google keyword search. &amp;nbsp;This is a story that I first read seriously in &lt;a href="http://www.startupbook.net/"&gt;Rob Walling's book&lt;/a&gt;, and have heard many times since, eg from &lt;a href="http://mixergy.com/julian-hearn-promotional-codes-interview/"&gt;Mixergy&lt;/a&gt;. &amp;nbsp;It seems to be working for these people, but it basically means stop developing and spend your time on marketing.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The next notable class was&amp;nbsp;&lt;a href="http://mrkn.co/andsec"&gt;Aleksandar (Saša) Gargenta's class on &lt;b&gt;security&lt;/b&gt;&lt;/a&gt;. &amp;nbsp;This was very well attended and was received well. &amp;nbsp;It's encouraging that (good) Android developers appreciate the importance of security. &amp;nbsp;He covered the Android security very thoroughly, and&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;described&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&amp;nbsp;which components are responsible for which parts of the security.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Mike Burton gave a detailed class showing how to use &lt;a href="http://code.google.com/p/roboguice/"&gt;&lt;b&gt;RoboGuice&lt;/b&gt;&lt;/a&gt;. &amp;nbsp;This looks like a really good Dependency Injection framework for Android. &amp;nbsp;It allows you to keep your Android-specific classes simple and put all your real code in Android-agnostic classes. &amp;nbsp;This has three very powerful benefits:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;ol style="text-align: left;"&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;RoboGuice handles the Android lifecycle (eg removing references when no longer needed)&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Most of your code is in POJO's so you can use the wide range of generic Java unit testing tools, such as &lt;a href="http://code.google.com/p/mockito/"&gt;Mockito&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;You can prevent memory leaks by reducing dependencies&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;Romain Guy and Chet Haase gave a good class entitled "&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;b&gt;Sticky GUIs&lt;/b&gt;" all about fine-tuning performance. &amp;nbsp;Mostly they were talking about the last few microseconds of performance, but one bigger and cheaper gain is to use the new &lt;a href="http://developer.android.com/reference/android/widget/GridLayout.html"&gt;GridLayout&lt;/a&gt; in &lt;a href="http://developer.android.com/sdk/android-4.0.html"&gt;ICS&lt;/a&gt;. &amp;nbsp;For backward compatibility, it may be in the &lt;a href="http://developer.android.com/sdk/compatibility-library.html"&gt;support library&lt;/a&gt;, or if not then you can just get the source.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;The last class of the conference was &lt;b&gt;Android app security&lt;/b&gt; by &lt;a href="http://donkeyonawaffle.org/"&gt;Tyler Shields&lt;/a&gt; of &lt;a href="http://www.veracode.com/"&gt;Veracode&lt;/a&gt;. &amp;nbsp;The main security flaws are:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;li&gt;hardcoded passwords - can be discovered by analysing apk&lt;/li&gt;&lt;li&gt;unsafe data transmission - private data sent unsecured over insecure network&lt;/li&gt;&lt;li&gt;unsafe data write to disk - private data written to insecure disk location&lt;/li&gt;&lt;li&gt;data exfiltration - reading private data and transmitting it outside the secure zone&lt;/li&gt;&lt;/span&gt;&lt;/ul&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;He specifically highlighted the risk of using third party libraries because you don't know what they do unless you're able to do a detailed analysis. &amp;nbsp;Code reuse is risk&amp;nbsp;transference - you're trusting third parties libraries not to do anything malicious - if they do then you take the blame. &amp;nbsp;Of course he mentioned that Veracode is able to do a detailed analysis of an apk to see what private data it's accessing and what it's doing with it.&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;There were several keynotes throughout the conference. &amp;nbsp;Some were just marketing pitches. &amp;nbsp;Most of them were entertaining. &amp;nbsp;The Google guys also gave classes as well as the keynotes. &amp;nbsp;The only one other one worth mentioning that I haven't mentioned elsewhere was from&amp;nbsp;Sam Gigliotti of &lt;b&gt;Amazon&lt;/b&gt;. &amp;nbsp;I learned some new phrases:&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Idempotence"&gt;idempotence&lt;/a&gt; and&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/CAP_theorem"&gt;Brewers CAP theorem&lt;/a&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-R7czuYWJBt0/TsN9V4XiVdI/AAAAAAAAH6Q/YlQBadJll6w/s1600/IMG_20111108_144049.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="205" src="http://4.bp.blogspot.com/-R7czuYWJBt0/TsN9V4XiVdI/AAAAAAAAH6Q/YlQBadJll6w/s320/IMG_20111108_144049.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;As well as the classes and keynotes, there was also a large&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;exhibition hall where I had a chance to speak to lots of interesting vendors and see what they had to offer. &amp;nbsp;The ones that most caught my attention are these (in alphabetical order):&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span id="internal-source-marker_0.23296882235445082" style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.apkudo.com/"&gt;Apkudo&lt;/a&gt; - they have 289 Android devices that you can use to perform Monkey testing.  They also gave a sponsored class on the last day of the conference to explain more about it.  They only do Monkey, but as they explained in the class, most developers do no automated testing, so Monkey is better than nothing.  In fact it's quite a lot better than nothing.  apkudo "will always be free".&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.barnesandnoble.com/p/nook-color-barnes-noble/1100437663"&gt;Barnes &amp;amp; Noble's tablet&lt;/a&gt; was pretty cool.  They've got a nice market as well.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;a href="http://www.crittercism.com/" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap;"&gt;Crittercism&lt;/a&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap;"&gt; make a jar that you can plug into your app to provide advanced crash reporting.&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;" /&gt;&lt;/span&gt;&lt;span style="background-color: transparent; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.gorillalogic.com/fonemonkey"&gt;FoneMonkey&lt;/a&gt; looks like a really good automation testing tool that has a GUI that looks just like Selenium.&lt;/span&gt;&lt;br /&gt;&lt;span style="background-color: transparent; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span style="background-color: transparent; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.openlogic.com/"&gt;OpenLogic&lt;/a&gt; provide a service to scan and certify open source software, following on from what was said in the Veracode class I mentioned above.&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span style="background-color: transparent; font-size: 15px; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://rhomobile.com/"&gt;Rhomobile&lt;/a&gt; were one of many vendors providing "write once build anywhere" solutions.  You write your apps in HTML and it gets built into Android, iPhone, etc.  I didn't really investigate the others, so maybe they all do this, but what I liked about this solution is that the apps are styled according to the platform, not just a generic app.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="background-color: transparent;"&gt;&lt;div style="background-color: transparent;"&gt;&lt;div style="font-family: 'Times New Roman'; font-size: medium; white-space: normal;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;span style="background-color: transparent; font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://testdroid.com/"&gt;Testdroid&lt;/a&gt; is good for recording automation tests and then running them on real devices.  They haven't got so many devices at the moment, but I assume they'll increase.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;a href="http://www.wimm.com/"&gt;WIMM Labs&lt;/a&gt; had a really cool, tiny Android device.  It's small enough to be a wristwatch, although it could also be a attached to a bike or something similar.  It's water proof - you can't go swimming with it, but you can go out in the rain.  It has WiFi, GPS, and a surprising amount of good stuff.  They sell it via branded products, but you can buy the HDK including a developer device for $299.  They were giving a $100 discount at AnDevCon and I almost bought one.  Their SDK includes an emulator.  This looks like a unique opportunity to develop "Micro Apps" for a specific market with a captive audience.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://www.wimm.com/images/wimmone_watchstrap.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://www.wimm.com/images/wimmone_watchstrap.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;I think the main thing I learned&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap;"&gt;from AnDevCon &lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 15px; white-space: pre-wrap;"&gt;is that there are lots of tools for testing and I should use some of them.  As Nicholas from apkudo said "testing is like flossing - we all know we should do it but we don't do it as much as we should".&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span style="background-color: transparent; font-size: 11pt; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="background-color: transparent;"&gt;&lt;span class="Apple-style-span" style="font-family: 'Helvetica Neue', Arial, Helvetica, sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px; white-space: pre-wrap;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8009557507954119159?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8009557507954119159/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/11/report-on-andevcon-ii.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8009557507954119159'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8009557507954119159'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/11/report-on-andevcon-ii.html' title='Report on AnDevCon II'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://farm7.static.flickr.com/6095/6332534028_6102ddc3c8_t.jpg' height='72' width='72'/><thr:total>0</thr:total><georss:featurename>Hyatt Regency, San Francisco Airport, CA 94010, USA</georss:featurename><georss:point>37.5945117724346 -122.36464977264404</georss:point><georss:box>37.5913662724346 -122.36958527264404 37.5976572724346 -122.35971427264404</georss:box></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3429289909994218388</id><published>2011-11-01T22:44:00.001+01:00</published><updated>2011-11-01T22:44:12.245+01:00</updated><title type='text'>DynDNS 2.0.1 - better error handling</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I've improved the retry handling of the &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; apps. Mainly I changed it to use a &lt;a href="http://developer.android.com/reference/android/os/Handler.html"&gt;Handler&lt;/a&gt; instead of a &lt;a href="http://developer.android.com/reference/java/lang/Thread.html"&gt;Thread&lt;/a&gt;. I'm thinking about changing it again to use &lt;a href="http://developer.android.com/reference/android/app/AlarmManager.html"&gt;AlarmManager&lt;/a&gt;, but we'll see how that goes.&lt;br /&gt;&lt;br /&gt;I'm still working on the MySpeed "terms" screen as I mentioned in &lt;a href="http://neil-and.blogspot.com/2011/10/dynamic-dns-app-200-generic-app-and.html"&gt;my previous post&lt;/a&gt;. I think I've got it working reasonably, but I still need to finalise the text.&lt;br /&gt;&lt;br /&gt;Next week I'll be at AnDevCon II&lt;br /&gt;&lt;img alt="AnDevCon II" border="0" height="90" src="http://www.andevcon.com/AnDevCon_II/images/BANNERS/728x90.gif" width="728" /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3429289909994218388?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3429289909994218388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/11/dyndns-201-better-error-handling.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3429289909994218388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3429289909994218388'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/11/dyndns-201-better-error-handling.html' title='DynDNS 2.0.1 - better error handling'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4171290959314673054</id><published>2011-10-09T22:08:00.002+02:00</published><updated>2011-10-09T22:08:29.563+02:00</updated><title type='text'>Dynamic DNS app 2.0.0 - a generic app and a dyndns.com dedicated app</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I've made an official version of the &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; app that is specifically designed to work with &lt;a href="http://dyn.com/"&gt;DynDNS.com&lt;/a&gt;. &amp;nbsp;The previous app remains as the generic app for all dynamic DNS providers. &amp;nbsp;The GUI has been redesigned a bit to put the two toggle settings as buttons on the main screen. &amp;nbsp;I've also done better error handling, especially to prevent the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;nochg&lt;/span&gt; error that can cause you to be blocked by dyndns.com.&lt;br /&gt;&lt;br /&gt;Next I'm going to work some more on &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;. &amp;nbsp;First I want to do a "terms" screen for users to accept the first time they use the app. &amp;nbsp;This is needed for &lt;a href="http://shop.vodafone360.com/shop/"&gt;Vodafone Market&lt;/a&gt;, although their terms seem to be reasonable. &amp;nbsp;Specifically they require you to notify the user that their location will be sent to an external server.&lt;br /&gt;&lt;br /&gt;I've still planning to make a "simple" and "advanced", or "lite" and "pro" version of MySpeed. &amp;nbsp;That'll come later.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4171290959314673054?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4171290959314673054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/10/dynamic-dns-app-200-generic-app-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4171290959314673054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4171290959314673054'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/10/dynamic-dns-app-200-generic-app-and.html' title='Dynamic DNS app 2.0.0 - a generic app and a dyndns.com dedicated app'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4819734430283141918</id><published>2011-10-02T21:58:00.000+02:00</published><updated>2011-10-02T21:58:07.409+02:00</updated><title type='text'>SendLog 1.1.2 - support for devices without SD card</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;I realised that a lot of Android devices don't have an SD card as standard. &amp;nbsp;&lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; stores the log file on the SD card and so it crashes if the SD card is not present. &amp;nbsp;So I changed SendLog to use the data directory if there's no SD card.&lt;br /&gt;&lt;br /&gt;On another subject, I'm currently working on a new version of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; which has better prevention of nochg responses and a new GUI appearance. &amp;nbsp;That should be released soon.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4819734430283141918?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4819734430283141918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/10/sendlog-112-support-for-devices-without.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4819734430283141918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4819734430283141918'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/10/sendlog-112-support-for-devices-without.html' title='SendLog 1.1.2 - support for devices without SD card'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-125382174985072347</id><published>2011-09-05T23:06:00.000+02:00</published><updated>2011-09-05T23:06:35.703+02:00</updated><title type='text'>MySpeed 5.0.0 with Google API optional</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;As promised in my last post, I've done a big rewrite of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; that allows it to work on devices without the Google API.  There are also quite a few performance improvements.  There are no functional changes.&lt;br /&gt;&lt;br /&gt;This took longer than I hoped because of the long summer vacation, but the upside of that is that I've been running it stably on my phone for a long time.&lt;br /&gt;&lt;br /&gt;This is another step closer to the next part of the plan, which is to split the app into a simple and advanced version.  Contrary to what I said previously, that'll just be done with a setting, rather than two separate apps.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-125382174985072347?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/125382174985072347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/09/myspeed-500-with-google-api-optional.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/125382174985072347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/125382174985072347'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/09/myspeed-500-with-google-api-optional.html' title='MySpeed 5.0.0 with Google API optional'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7005795239680214043</id><published>2011-07-25T07:06:00.003+02:00</published><updated>2011-07-25T07:21:00.727+02:00</updated><title type='text'>MySpeed 4.2.1 with Bing maps view</title><content type='html'>Continuing the plan I outlined in my last post, I have now released &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; 4.2.1 which has a &lt;a href="http://www.bing.com/maps/"&gt;Bing Maps&lt;/a&gt; view.&lt;br /&gt;&lt;br /&gt;The next step will be a version that works on devices without the Google API (ie the Google Maps view).  Of course it will also use the Google API on devices that have it.&lt;br /&gt;&lt;br /&gt;On another subject, last week I also released DynDNS which has a new plugin for &lt;a href="http://www.twofortyfouram.com/developer.html"&gt;Locale&lt;/a&gt; and &lt;a href="http://tasker.dinglisch.net/plugins.html"&gt;Tasker&lt;/a&gt;. A few people have asked me for specific configuration options in DynDNS which I have rejected on the principle of keeping DynDNS simple, but acting as a Locale plugin gives users a lot more possibilities for specific requirements. For example, one common request is to send an update every 24 hours regardless of IP address change. You can do that like this in Tasker:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-iem4qgOGk-g/Tiz8KKi3GlI/AAAAAAAAHcc/N8kdVdNe0r8/s1600/dyndns-locale.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 320px;" src="http://2.bp.blogspot.com/-iem4qgOGk-g/Tiz8KKi3GlI/AAAAAAAAHcc/N8kdVdNe0r8/s320/dyndns-locale.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5633154485493111378" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7005795239680214043?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7005795239680214043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/07/myspeed-421-with-bing-maps-view.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7005795239680214043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7005795239680214043'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/07/myspeed-421-with-bing-maps-view.html' title='MySpeed 4.2.1 with Bing maps view'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-iem4qgOGk-g/Tiz8KKi3GlI/AAAAAAAAHcc/N8kdVdNe0r8/s72-c/dyndns-locale.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3093671044987374857</id><published>2011-07-08T16:35:00.002+02:00</published><updated>2011-07-08T16:59:40.557+02:00</updated><title type='text'>MySpeed recent updates and plans</title><content type='html'>The last release of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; with the wizard didn't go entirely smoothly. I released 4.1.7 which added the wizard. This was supposed to improve the first time experience by prompting the user to download and import speed cameras from &lt;a href="http://poiplaza.com/"&gt;poiplaza.com&lt;/a&gt;. I then fixed a couple of minor bugs and increased the version to 4.2.0. Unfortunately I didn't think to test it when the folder on the sdcard doesn't exist. It turns out that it crashed in that case, which obviously had the complete opposite effect on first time users, ie instead of seeing a nice helpful screen they get a force close.  Anyway, I've fixed that, whilst keeping the version at 4.2.0.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I've got some more plans that you can expect to see in the coming months:&lt;br /&gt;&lt;br /&gt;1. Add &lt;a href="http://www.bing.com/maps/"&gt;Bing Maps&lt;/a&gt;/satellite view, with thanks to &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=236"&gt;osmdroid issue 236&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;2. Make the Google Maps API optional.  There's currently a dependency on devices that have Google Maps installed, but I can make it also available on devices without it by specifying the library as&lt;br /&gt;&lt;code&gt;&amp;lt;uses-library android:name="com.google.android.maps"&lt;br /&gt;&lt;font style="color:red"&gt;android:required="false"&lt;/font&gt; /&amp;gt;&lt;/code&gt;&lt;br /&gt;This requires quite a lot of restructuring of the code.&lt;br /&gt;&lt;br /&gt;3. Make a light version of MySpeed which has most of the options removed and only has the basic usage:&lt;br /&gt; - remove import/download, and just use the poiplaza wizard&lt;br /&gt; - remove recording/exporting of tracks&lt;br /&gt; - remove routing&lt;br /&gt; - remove most (all?) of the settings&lt;br /&gt; - only use the Google Map view&lt;br /&gt;The purpose of this is make the app easier to use and reduce the app size.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can expect to see these changes coming incrementally in the next few months.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3093671044987374857?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3093671044987374857/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/07/myspeed-recent-updates-and-plans.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3093671044987374857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3093671044987374857'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/07/myspeed-recent-updates-and-plans.html' title='MySpeed recent updates and plans'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5927077872326486423</id><published>2011-07-08T12:48:00.003+02:00</published><updated>2011-07-08T12:52:23.044+02:00</updated><title type='text'>NtpWidget 1.0.3 with configurable server check frequency</title><content type='html'>I released a new version of &lt;a href="http://l6n.org/android/ntpwidget.shtml"&gt;NtpWidget&lt;/a&gt; that allows you to configure the frequency that it checks the NTP server.&lt;br /&gt;&lt;br /&gt;Previously it was fixed at 5 minutes. I actually changed it to one hour soon after releasing version 1.0.2, but I never released that version.&lt;br /&gt;&lt;br /&gt;I also added a button on the details window that allows you to force a check.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5927077872326486423?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5927077872326486423/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/07/ntpwidget-103-with-configurable-server.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5927077872326486423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5927077872326486423'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/07/ntpwidget-103-with-configurable-server.html' title='NtpWidget 1.0.3 with configurable server check frequency'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-748928966661827526</id><published>2011-06-29T10:28:00.002+02:00</published><updated>2011-06-29T10:34:41.253+02:00</updated><title type='text'>MySpeed 4.1.7 - first time setup wizard</title><content type='html'>I added a wizard to MySpeed so that the first time you install it, it makes it easy to download and install speed cameras.  The wizard is a simplified combination of the download and import screens.  This has been made possible now that I've discovered and implemented download from &lt;a href="http://POIPlaza.com/"&gt;POIPlaza.com&lt;/a&gt;, which has a comprehensive, free speed camera database.  You may have noticed that &lt;a href="http://www.radardroid.com/"&gt;Radardroid&lt;/a&gt; does a similar thing. To make the process easier, MySpeed also tries to guess your country and set that as the initial default for all download providers.&lt;br /&gt;&lt;br /&gt;Another minor change was to make the settings screen use tabs instead of expanding menus.  I think that makes it easier to navigate.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-748928966661827526?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/748928966661827526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/06/myspeed-417-first-time-setup-wizard.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/748928966661827526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/748928966661827526'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/06/myspeed-417-first-time-setup-wizard.html' title='MySpeed 4.1.7 - first time setup wizard'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4084576446347531087</id><published>2011-05-18T10:46:00.002+02:00</published><updated>2011-05-18T11:31:08.357+02:00</updated><title type='text'>Update all apps to improve appearance on tablets</title><content type='html'>I updated the apps that I haven't updated in a while just to get rid of a backlog of minor changes.  I changed a few bits of configuration to improve the appearance on tablets, and I updated to the new AdMob API.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4084576446347531087?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4084576446347531087/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/05/update-all-apps-to-improve-appearance.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4084576446347531087'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4084576446347531087'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/05/update-all-apps-to-improve-appearance.html' title='Update all apps to improve appearance on tablets'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1060559379293962714</id><published>2011-03-24T11:22:00.003+01:00</published><updated>2011-03-24T11:26:03.947+01:00</updated><title type='text'>CheapGas 1.0.0</title><content type='html'>Two new apps in two days!&lt;br /&gt;&lt;br /&gt;Today I release the first version of &lt;a href="http://l6n.org/android/cheapgas.shtml"&gt;CheapGas&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This is an app that shows the price of fuel in The Netherlands (petrol, diesel, LPG).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-ZEG3zXJqTe4/TYsb8p4Di6I/AAAAAAAAGxw/rxDofwKWhFM/s1600/cheapgas-screenshot-1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 320px;" src="http://3.bp.blogspot.com/-ZEG3zXJqTe4/TYsb8p4Di6I/AAAAAAAAGxw/rxDofwKWhFM/s320/cheapgas-screenshot-1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587590491530300322" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-RjRGEuuZCgE/TYscEKPkc5I/AAAAAAAAGx4/NKtBbHem6LM/s1600/cheapgas-screenshot-2.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 320px;" src="http://2.bp.blogspot.com/-RjRGEuuZCgE/TYscEKPkc5I/AAAAAAAAGx4/NKtBbHem6LM/s320/cheapgas-screenshot-2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587590620477944722" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1060559379293962714?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1060559379293962714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/03/cheapgas-100.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1060559379293962714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1060559379293962714'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/03/cheapgas-100.html' title='CheapGas 1.0.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-ZEG3zXJqTe4/TYsb8p4Di6I/AAAAAAAAGxw/rxDofwKWhFM/s72-c/cheapgas-screenshot-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5973509379019030333</id><published>2011-03-23T12:51:00.003+01:00</published><updated>2011-03-23T12:57:46.224+01:00</updated><title type='text'>NtpWidget</title><content type='html'>I made a new little app today. &lt;a href="http://l6n.org/android/ntpwidget.shtml"&gt;NtpWidget&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It doesn't do much. It just shows the time from an NTP server in a 1x1 widget. This is so that you can check if your clock is correct.&lt;br /&gt;&lt;br /&gt;Unfortunately it's not possible to set the time to the correct time, so it can only send the user to the Date/Time Settings.  Apparently it works if you root your phone, but I haven't tried that but the code is in there anyway.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-iNzej1DP5ds/TYnfwUwnrYI/AAAAAAAAGxg/JQ7OMWIaODQ/s1600/ntpwidget-screenshot-1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 320px;" src="http://4.bp.blogspot.com/-iNzej1DP5ds/TYnfwUwnrYI/AAAAAAAAGxg/JQ7OMWIaODQ/s320/ntpwidget-screenshot-1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587242834029161858" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-rWXmVE370As/TYngBiOq0cI/AAAAAAAAGxo/vpFwSp4zpUk/s1600/ntpwidget-screenshot-2.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 320px;" src="http://4.bp.blogspot.com/-rWXmVE370As/TYngBiOq0cI/AAAAAAAAGxo/vpFwSp4zpUk/s320/ntpwidget-screenshot-2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5587243129702633922" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5973509379019030333?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5973509379019030333/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/03/ntpwidget.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5973509379019030333'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5973509379019030333'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/03/ntpwidget.html' title='NtpWidget'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-iNzej1DP5ds/TYnfwUwnrYI/AAAAAAAAGxg/JQ7OMWIaODQ/s72-c/ntpwidget-screenshot-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4478983117208803095</id><published>2011-02-23T11:52:00.003+01:00</published><updated>2011-02-23T12:39:59.883+01:00</updated><title type='text'>MySpeed 4.1.4 with Korean and OSM speed cameras</title><content type='html'>I released version 4.1.4 of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I added Korean localisation. Since Christmas last year, Korea is now the second most used country and language.&lt;br /&gt;&lt;br /&gt;I also added download and import of OpenStreetMap &lt;a href="http://wiki.openstreetmap.org/wiki/Tag:highway%3Dspeed_camera"&gt;speed camera&lt;/a&gt; data. There isn't all that much data available, especially outside Europe, but at least you can use what there is, and of course anyone can also add more data.  The download server is very unreliable, so you may prefer to download from somewhere else, for example &lt;a href="http://download.geofabrik.de/osm/"&gt;geofabrik&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4478983117208803095?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4478983117208803095/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/02/myspeed-414-with-korean-and-osm-speed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4478983117208803095'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4478983117208803095'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/02/myspeed-414-with-korean-and-osm-speed.html' title='MySpeed 4.1.4 with Korean and OSM speed cameras'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6650302537799832257</id><published>2011-01-21T13:59:00.003+01:00</published><updated>2011-01-21T14:14:35.787+01:00</updated><title type='text'>MySpeed 4.1.3 now works as a Locale plugin</title><content type='html'>I've now made &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; function as a plugin for &lt;a href="http://www.twofortyfouram.com/developer.html"&gt;Locale&lt;/a&gt;.  I don't actually use Locale myself, I use &lt;a href="http://tasker.dinglisch.net/plugins.html"&gt;Tasker&lt;/a&gt;, which works in a similar way and supports Locale plugins.&lt;br /&gt;&lt;br /&gt;The Locale plugin has an action to start MySpeed in the background, and specify routing to a destination.  I made the destination use auto-complete, and did the same for the &lt;a href="http://neil-and.blogspot.com/2010/02/myspeed-201-with-shortcuts.html"&gt;shortcut&lt;/a&gt; while I was at it.&lt;br /&gt;&lt;br /&gt;I also fixed the sunrise/sunset detection that I put into the previous release.  I used the original version of &lt;a href="http://www.neptuneandco.com/~jtauxe/bits/SunriseSunset.java"&gt;SunriseSunset.java&lt;/a&gt;, but it turns out there was a bug that has been fixed by &lt;a href="http://code.google.com/p/osmand/source/browse/trunk/DataExtractionOSM/src/net/osmand/SunriseSunset.java"&gt;OsmAnd&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;More about the Locale plugin - I use it in a kind of simple way - when my phone binds with the Bluetooth in my car it starts MySpeed.  When the binding is broken it stops MySpeed.  You could also do more complicated things such as when it binds with the Bluetooth in your car on Monday to Friday between 8am and 9am start MySpeed and set routing to work.&lt;br /&gt;&lt;br /&gt;Here's a screenshot of my setup:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_d_HNVtkSpWw/TTmGAWl6YqI/AAAAAAAAGoI/BXtgczEgaos/s1600/tasker-screenshot.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 240px;" src="http://3.bp.blogspot.com/_d_HNVtkSpWw/TTmGAWl6YqI/AAAAAAAAGoI/BXtgczEgaos/s320/tasker-screenshot.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5564626155215676066" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6650302537799832257?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6650302537799832257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/01/myspeed-413-now-works-as-locale-plugin.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6650302537799832257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6650302537799832257'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/01/myspeed-413-now-works-as-locale-plugin.html' title='MySpeed 4.1.3 now works as a Locale plugin'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_d_HNVtkSpWw/TTmGAWl6YqI/AAAAAAAAGoI/BXtgczEgaos/s72-c/tasker-screenshot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2265155201399783801</id><published>2011-01-14T11:29:00.002+01:00</published><updated>2011-01-14T11:38:05.505+01:00</updated><title type='text'>MySpeed 4.1.2 with day/night mode for CloudMade tiles</title><content type='html'>The latest version of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; switches automatically between day and night style if you choose CloudMade tiles.&lt;br /&gt;&lt;br /&gt;This is only possible for CloudMade tiles because the others are not styleable.&lt;br /&gt;&lt;br /&gt;It probably still needs a bit of tidying up, specifically to make the speed and compass visible in night mode (black on dark doesn't work very well).  The trouble is that, since it's configurable, it's not obvious which colours are going to work best.  Another thing I should do is change the background colour (the light grey that you see when tiles are loading).&lt;br /&gt;&lt;br /&gt;This version also uses the latest version of &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt; which has a new &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=112"&gt;tile provider&lt;/a&gt; architecture.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2265155201399783801?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2265155201399783801/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/01/myspeed-412-with-daynight-mode-for.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2265155201399783801'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2265155201399783801'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/01/myspeed-412-with-daynight-mode-for.html' title='MySpeed 4.1.2 with day/night mode for CloudMade tiles'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7776271538049954593</id><published>2011-01-05T10:22:00.002+01:00</published><updated>2011-01-05T10:36:21.659+01:00</updated><title type='text'>SendLog 1.1.0 - Don't limit the size of the log file</title><content type='html'>I changed &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; to remove the limit on the log file size.&lt;br /&gt;&lt;br /&gt;Originally it sent the log in the text of the email. Then I had to limit the size so that it would work on all devices. That never worked very well on all devices so I made it an attachment instead of being in the text. So then there's no reason to have the limit any more.&lt;br /&gt;&lt;br /&gt;I'm doing an automatic day/night mode for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. It will only work for CloudMade renderer because that's the only one where you can change the style. It works okay but it needs finishing up before I release it.&lt;br /&gt;&lt;br /&gt;MySpeed is published on &lt;a href="http://developer.vodafone.com/"&gt;Vodafone Market&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7776271538049954593?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7776271538049954593/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2011/01/sendlog-110-dont-limit-size-of-log-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7776271538049954593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7776271538049954593'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2011/01/sendlog-110-dont-limit-size-of-log-file.html' title='SendLog 1.1.0 - Don&apos;t limit the size of the log file'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-124827829917419744</id><published>2010-12-27T09:51:00.002+01:00</published><updated>2010-12-27T10:01:02.218+01:00</updated><title type='text'>MySpeed 4.1.1 - KML import</title><content type='html'>I added KML import to &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.  This supports the &lt;a href="http://www.scdb.info/en/plugin-google-earth/"&gt;SCDB KML format&lt;/a&gt;.  This is a free download from SCDB, although you still need to register.  The MySpeed download manager doesn't support it, and you can't specify to use the import images for each camera - you can do those things with the paid downloads from SCDB.&lt;br /&gt;&lt;br /&gt;For the download manager I made it download the images again if they're older than 4 weeks.  The previous version would never download images if they already existed.  It's unlikely that the images will change, but just in case, it doesn't seem like too much trouble to download them again every 4 weeks.&lt;br /&gt;&lt;br /&gt;I also changed the background notification to be ongoing - ie it stays there if you clear all notifications.  This seems like the way it's supposed to work, but for some reason I avoided doing it before.&lt;br /&gt;&lt;br /&gt;I also updated &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; and &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; on &lt;a href="http://market.android.com/"&gt;Market&lt;/a&gt;. I didn't change anything - I just wanted to update to use the &lt;a href="http://android-developers.blogspot.com/2010/12/android-market-client-update.html"&gt;new Market features&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-124827829917419744?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/124827829917419744/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/12/myspeed-411-kml-import.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/124827829917419744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/124827829917419744'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/12/myspeed-411-kml-import.html' title='MySpeed 4.1.1 - KML import'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4441835493057783552</id><published>2010-12-14T10:15:00.003+01:00</published><updated>2010-12-14T10:26:41.870+01:00</updated><title type='text'>MySpeed 4.1.0 - localised for Dutch, French, German and Portuguese (Portugal and Brazil)</title><content type='html'>I published an upgrade to &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; which has localisation for Dutch, French, German and Portuguese (Portugal and Brazil).  These are the most commonly used languages, as I discovered from the &lt;a href="http://www.google.com/analytics/"&gt;Analytics&lt;/a&gt; I put into the &lt;a href="http://neil-and.blogspot.com/2010/11/myspeed-403-with-radar-view.html"&gt;previous release&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I used &lt;a href="http://crowdin.net/project/myspeed"&gt;Crowdin&lt;/a&gt; for the translation.  It's not a bad website.  It's a bit unclear how it works regarding the different approved and unapproved translations, and it's a bit slow sometimes which can cause you to click the wrong button, and there's very little help or support.  But despite that, it seems to be the best site for this kind of thing.  I also looked at &lt;a href="http://www.icanlocalize.com/site/services/software-localization/android-localization/"&gt;icanlocalise&lt;/a&gt; and &lt;a href="http://mygengo.com/string/about"&gt;String&lt;/a&gt;, but these had other weaknesses which I've forgotten now ;-)&lt;br /&gt;&lt;br /&gt;I've also got a new icon.  &lt;a href="http://market.android.com/"&gt;Android Market&lt;/a&gt; and &lt;a href="https://widget.vodafone.com/"&gt;Vodafone Market&lt;/a&gt; ask for a whole load of graphics, so it seemed like a good time to make some better graphics than the one I hacked together in 10 minutes with version 0.1.&lt;br /&gt;&lt;br /&gt;Since I'm not much good at graphics or translation myself, I had it done using &lt;a href="http://odesk.com/"&gt;oDesk&lt;/a&gt;.  That worked out pretty well.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4441835493057783552?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4441835493057783552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/12/myspeed-410-localised-for-dutch-french.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4441835493057783552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4441835493057783552'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/12/myspeed-410-localised-for-dutch-french.html' title='MySpeed 4.1.0 - localised for Dutch, French, German and Portuguese (Portugal and Brazil)'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-9219457483591866014</id><published>2010-12-06T11:15:00.003+01:00</published><updated>2010-12-06T11:27:48.844+01:00</updated><title type='text'>DynDNS 1.2.2 and MySpeed translation</title><content type='html'>I released &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; 1.2.2.  There's no functional changes.  When I was doing the radar view for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; I discovered a better way of interacting with the service, namely the &lt;a href="http://developer.android.com/reference/android/app/Service.html#RemoteMessengerServiceSample"&gt;Remote Messenger Service Sample&lt;/a&gt;, so I did the same thing for DynDNS.  I also did a threading fix where sometimes the threads would run in the wrong order and cause the wrong status message to appear regarding the proxy.&lt;br /&gt;&lt;br /&gt;I'm currently working on some translations for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.  I'm using &lt;a href="http://crowdin.net/"&gt;crowdin&lt;/a&gt; for managing the translations.  I'm going to do Dutch, French and German.  Maybe later I'll also do Portuguese (Brazil).  The good thing about crowdin is that anyone who wants to can make their own translations.&lt;br /&gt;&lt;br /&gt;The other thing I'm doing for MySpeed is the whole range of extra graphics that &lt;a href="http://market.android.com/"&gt;Android Market&lt;/a&gt; and &lt;a href="http://developer.vodafone.com/"&gt;Vodafone Market&lt;/a&gt; want.&lt;br /&gt;&lt;br /&gt;I'm not doing the graphics or translations myself - I'm using &lt;a href="http://www.odesk.com/"&gt;oDesk&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-9219457483591866014?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/9219457483591866014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/12/dyndns-122-and-myspeed-translation.html#comment-form' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/9219457483591866014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/9219457483591866014'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/12/dyndns-122-and-myspeed-translation.html' title='DynDNS 1.2.2 and MySpeed translation'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1578980708457856416</id><published>2010-11-24T11:17:00.002+01:00</published><updated>2010-11-24T11:28:00.183+01:00</updated><title type='text'>MySpeed 4.0.3 - with radar view</title><content type='html'>There's a new version of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.  People often ask for a simple, non-map view for MySpeed.  Rather than just doing the speed and nothing else, I figured it would be nice to have a radar view.  This shows your route and track and speed cameras, but no map.  The radar is normally green, but goes red when there are camera alerts.&lt;br /&gt;&lt;br /&gt;I'm very interested to hear feedback about radar view.&lt;br /&gt;&lt;br /&gt;I also added &lt;a href="http://code.google.com/mobile/analytics/docs/android/"&gt;Google Analytics&lt;/a&gt;.  This allows me to see things like which views people are using, what cameras people are importing, device models, languages, screen sizes, etc.  This will allow me to do things like better download/import options, translation for different languages, better support for different screen sizes, etc.  I'd prefer to focus future development on features that people are using the most.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1578980708457856416?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1578980708457856416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/11/myspeed-403-with-radar-view.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1578980708457856416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1578980708457856416'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/11/myspeed-403-with-radar-view.html' title='MySpeed 4.0.3 - with radar view'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5184771817531778837</id><published>2010-10-31T22:06:00.003+01:00</published><updated>2010-10-31T22:12:35.019+01:00</updated><title type='text'>MySpeed 4.0.2 - run import in foreground</title><content type='html'>I changed &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; to run the import in the foreground instead of background.&lt;br /&gt;&lt;br /&gt;Also did a fix for &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; to handle tethering properly. The last release broke something else: when you want to send the Wi-Fi IP address.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5184771817531778837?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5184771817531778837/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-402-run-import-in-foreground.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5184771817531778837'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5184771817531778837'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-402-run-import-in-foreground.html' title='MySpeed 4.0.2 - run import in foreground'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3546095332351625334</id><published>2010-10-25T11:06:00.002+02:00</published><updated>2010-10-25T11:10:06.328+02:00</updated><title type='text'>MySpeed 4.0.1 - scdb download manager</title><content type='html'>There's a new version of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; which now includes a download manager for &lt;a href="http://www.scdb.info/"&gt;SCDB.info&lt;/a&gt;. You need a paid account with SCDB to be able to use this.&lt;br /&gt;&lt;br /&gt;I also improved the import screen layout a bit.&lt;br /&gt;&lt;br /&gt;The previous release broke importing of CSV files, so I've fixed that.&lt;br /&gt;&lt;br /&gt;What I'm going to do next is redesign the import screen a bit. Now that importing is much faster there's no need to run it in the background. I'll change it to be like the download screen with a progress bar and status message at the bottom of the screen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3546095332351625334?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3546095332351625334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-401-scdb-download-manager.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3546095332351625334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3546095332351625334'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-401-scdb-download-manager.html' title='MySpeed 4.0.1 - scdb download manager'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1209674537401327129</id><published>2010-10-25T11:04:00.001+02:00</published><updated>2010-10-25T11:06:03.374+02:00</updated><title type='text'>DynDNS 1.2.0 - Detect IP address correctly when tethered</title><content type='html'>I did a little fix for &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt;. When it's tethered there's another network address that needs to be ignored - the 192.*.*.* address.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1209674537401327129?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1209674537401327129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/dyndns-120-detect-ip-address-correctly.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1209674537401327129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1209674537401327129'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/dyndns-120-detect-ip-address-correctly.html' title='DynDNS 1.2.0 - Detect IP address correctly when tethered'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4661876015821359046</id><published>2010-10-22T09:30:00.002+02:00</published><updated>2010-10-22T09:33:53.254+02:00</updated><title type='text'>SendLog 1.0.8 - allow the email subject to be specified in the intent</title><content type='html'>I just released a new version of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; which allows the email subject to be specified in the intent.  This is useful for apps that invoke SendLog to report errors - the app can report it's name and version in the subject of the email.&lt;br /&gt;&lt;br /&gt;I'm also working on the &lt;a href="http://scdb.info/"&gt;scdb.info&lt;/a&gt; download manager for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.  It's almost finished.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4661876015821359046?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4661876015821359046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/sendlog-108-allow-email-subject-to-be.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4661876015821359046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4661876015821359046'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/sendlog-108-allow-email-subject-to-be.html' title='SendLog 1.0.8 - allow the email subject to be specified in the intent'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-171265463891754709</id><published>2010-10-12T10:07:00.002+02:00</published><updated>2010-10-12T10:15:57.984+02:00</updated><title type='text'>MySpeed 4.0.0 with download manager</title><content type='html'>I've released version 4.0.0 of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. The main change is the download manager for downloading speed cameras. Most speed camera providers require a login, which I don't have, so I can't implement it. I hope people will tell me a login for more providers so that I can implement the download manager for them. I have implemented &lt;a href="http://flitspaal.nl/"&gt;flitspaal.nl&lt;/a&gt; and &lt;a href="http://maparadar.com/"&gt;maparadar.com&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Another big change is speeding up the import quite dramatically. It used to take minutes, now it takes seconds. Turns out the trick was to do the import within a transaction.&lt;br /&gt;&lt;br /&gt;Plus I've got the latest version of &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt; which has some nice features such as &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=87"&gt;offline mode&lt;/a&gt;, &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=79"&gt;tile packs&lt;/a&gt;, and some new renderers.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-171265463891754709?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/171265463891754709/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-400-with-download-manager.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/171265463891754709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/171265463891754709'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/myspeed-400-with-download-manager.html' title='MySpeed 4.0.0 with download manager'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3592822752297270597</id><published>2010-10-06T06:55:00.002+02:00</published><updated>2010-10-06T07:04:14.982+02:00</updated><title type='text'>SendLog 1.0.7 - send log as attachment</title><content type='html'>I released version 1.0.7 of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; which now sends the top and logcat output as an attachment instead of in the text of the email. I think that basically &lt;a href="http://developer.android.com/reference/android/content/Intent.html#EXTRA_TEXT"&gt;Intent.EXTRA_TEXT&lt;/a&gt; wasn't intended to handle large amounts of text. My recent fixes were intended to limit the amount of text to an amount that can be handled by all phones, but some phones such as the Samsung Fascinate and Samsung Epic 4G still truncated the text. So now I use &lt;a href="http://developer.android.com/reference/android/content/Intent.html#EXTRA_STREAM"&gt;Intent.EXTRA_STREAM&lt;/a&gt; instead, which sends the text as an attachment. Unfortunately this means that only real email clients can handle it - the other things that appear in the list won't handle the attachment. I guess that's not a problem because the only real use of SendLog is to send emails.  But just in case, the text file is also stored on the sd card, so you can do what you like with it.&lt;br /&gt;&lt;br /&gt;I'm also ready to release &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; in the next few days. I've done the download manager and a few other nice things.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3592822752297270597?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3592822752297270597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/10/sendlog-107-send-log-as-attachment.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3592822752297270597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3592822752297270597'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/10/sendlog-107-send-log-as-attachment.html' title='SendLog 1.0.7 - send log as attachment'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1118713023869118687</id><published>2010-09-29T10:09:00.003+02:00</published><updated>2010-09-29T10:27:40.047+02:00</updated><title type='text'>SendLog 1.0.6 - more fixes for Android 2.x variations</title><content type='html'>I released version 1.0.6 of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;. I'm still working around the variations of the logcat program on various 2.x Android devices.&lt;br /&gt;&lt;br /&gt;SendLog just uses the system logcat command to generate its output. Up until 2.1 the output was fairly small. With 2.1 the output was much longer, but logcat also gained a new option to limit the output: the -t option.  The problem is that some 2.1 devices don't implement the -t option.&lt;br /&gt;&lt;br /&gt;Release 1.0.4 used the -t option for 2.1 and higher devices.&lt;br /&gt;&lt;br /&gt;Release 1.0.5 explicitly checked whether -t is supported instead of assuming any 2.1 and higher device supported it. This fixed SendLog for the LG Ally and Samsung Moment.&lt;br /&gt;&lt;br /&gt;Release 1.0.6 is for devices such as the Samsung Fascinate which have the long output but don't support -t.  Instead of using -t I just limited the output by just ignoring a large amount at the beginning.&lt;br /&gt;&lt;br /&gt;Unfortunately 1.0.6 still doesn't seem to work on the Samsung Fascinate because there seems to be a limit in the amount of text you can send to an activity. I'm using &lt;a href="http://developer.android.com/reference/android/content/Intent.html#EXTRA_TEXT"&gt;Intent.EXTRA_TEXT&lt;/a&gt; to send the email.  This seems to have an undocumented limit of about 50kb, which is enough for the top output and about 300 lines of logcat output. But the Samsung Fascinate seems to unceremoniously truncate the email after about 14 lines of logcat. The reason I added an end marker in release 1.0.4 is so that you can see if the email has been truncated.&lt;br /&gt;&lt;br /&gt;I'm not quite sure how to fix the Samsung Fascinate, but I did the fix for 1.0.6 anyway because it seems like a reasonable thing to do, and it's at least a bit of an improvement. Without this fix it would just fail to create the email without giving any indication of what was going on.&lt;br /&gt;&lt;br /&gt;What I'll probably try is using &lt;a href="http://developer.android.com/reference/android/content/Intent.html#EXTRA_STREAM"&gt;EXTRA_STREAM&lt;/a&gt; instead of EXTRA_TEXT.&lt;br /&gt;&lt;br /&gt;Meanwhile I'm still working on the downloader for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1118713023869118687?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1118713023869118687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/09/sendlog-106-more-fixes-for-android-2x.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1118713023869118687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1118713023869118687'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/09/sendlog-106-more-fixes-for-android-2x.html' title='SendLog 1.0.6 - more fixes for Android 2.x variations'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-120565925801691894</id><published>2010-09-27T10:09:00.001+02:00</published><updated>2010-09-27T10:11:15.440+02:00</updated><title type='text'>DynDNS 1.1.9</title><content type='html'>There's a new version of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; with some minor bug fixes. Nothing exciting!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-120565925801691894?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/120565925801691894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/09/dyndns-119.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/120565925801691894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/120565925801691894'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/09/dyndns-119.html' title='DynDNS 1.1.9'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6908207368621393511</id><published>2010-09-24T09:29:00.002+02:00</published><updated>2010-09-24T09:48:10.432+02:00</updated><title type='text'>MySpeed 3.1.0 - more options for map views - satellite, traffic, renderer</title><content type='html'>I made a small but perhaps significant improvement to &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; - added some options specific to the chosen map view.&lt;br /&gt;If you choose Google Maps then you have the option to display map or satellite, and the option to show traffic.&lt;br /&gt;If you choose OpenStreetMap then you have the option of a few different renderers.&lt;br /&gt;I could have also added &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=87"&gt;offline mode&lt;/a&gt; option to OpenStreetMap, but I think I'll leave that until &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=79"&gt;tile packs&lt;/a&gt; are implemented.&lt;br /&gt;&lt;br /&gt;Now I'm working on a download manager for MySpeed.  This will let you download speed cameras directly from MySpeed instead of downloading them on your PC and manually copying to your SD card.  I've already done it for &lt;a href="http://maparadar.com/"&gt;MapaRadar.com&lt;/a&gt; because that's the easiest. Next I'll do &lt;a href="http://flitspaal.nl/"&gt;flitspaal.nl&lt;/a&gt; because I have an account with them. That'll be enough for the next release. I'll try &lt;a href="http://scdb.info/"&gt;scdb.info&lt;/a&gt; next, but my account has expired so I'll have to see about getting a new one. I should probably also do &lt;a href="http://www.pocketgpsworld.com/"&gt;PocketGPSWorld.com&lt;/a&gt;, but I don't have an account with them either.&lt;br /&gt;&lt;br /&gt;On another subject, the &lt;a href="http://neil-and.blogspot.com/2010/09/sendlog-105-fix-for-lg-ally-not-being.html"&gt;previous fix&lt;/a&gt; I made to SendLog also applies to the Samsung Moment.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6908207368621393511?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6908207368621393511/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/09/myspeed-310-more-options-for-map-views.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6908207368621393511'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6908207368621393511'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/09/myspeed-310-more-options-for-map-views.html' title='MySpeed 3.1.0 - more options for map views - satellite, traffic, renderer'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1031776097469926728</id><published>2010-09-14T16:12:00.003+02:00</published><updated>2010-09-14T16:17:17.132+02:00</updated><title type='text'>SendLog 1.0.5 - fix for LG Ally not being fully 2.1 compatible</title><content type='html'>The previous release of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; made use of the logcat -t option that is supported by Android 2.1.  Unfortunately the LG Ally is 2.1 but doesn't support the -t option.&lt;br /&gt;&lt;br /&gt;So I changed SendLog to explicitly check for -t support instead of assuming that if the device is 2.1 then it supports it.&lt;br /&gt;&lt;br /&gt;Also showed error output in the email otherwise there's just a blank space where the log output should be.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1031776097469926728?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1031776097469926728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/09/sendlog-105-fix-for-lg-ally-not-being.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1031776097469926728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1031776097469926728'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/09/sendlog-105-fix-for-lg-ally-not-being.html' title='SendLog 1.0.5 - fix for LG Ally not being fully 2.1 compatible'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5222838354270062512</id><published>2010-08-30T09:56:00.002+02:00</published><updated>2010-08-30T10:07:17.718+02:00</updated><title type='text'>MySpeed 3.0.1 - request location updates less often</title><content type='html'>A new release of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;, mainly related to Android version 2.2 compatibility.&lt;br /&gt;&lt;br /&gt;Request location updates less often.&lt;br /&gt;It was requesting location updates as often as possible, which worked fine on my old G1 because it only received updates once every second, but my Nexus One is sending them several times a second which is causing the performance to plummet. I've now set it to 1 second and 10 meters.&lt;br /&gt;It wasn't immediately clear how the two parameters to &lt;a href="http://developer.android.com/reference/android/location/LocationManager.html#requestLocationUpdates(java.lang.String, long, float, android.location.LocationListener)"&gt;requestLocationUpdates&lt;/a&gt; interact with each other. Does it mean if time &gt; t &lt;span style="font-weight:bold;"&gt;AND&lt;/span&gt; distance &gt; d then send an update, or does it mean &lt;span style="font-weight:bold;"&gt;OR&lt;/span&gt;? Turns out it means check every t seconds, and if distance is more than d send an update. Makes sense because that's the easiest to implement.&lt;br /&gt;&lt;br /&gt;Another Android 2.2 fix that was causing the same location to be logged multiple times:&lt;br /&gt;2.2 has a new &lt;a href="http://developer.android.com/reference/android/location/LocationManager.html#PASSIVE_PROVIDER"&gt;passive&lt;/a&gt; location provider, which means if you're sending a location update for someone else then send me one as well. Which means if you request GPS and passive, you get the same update twice.&lt;br /&gt;&lt;br /&gt;I also did a &lt;a href="http://code.google.com/p/mobyfactory-uiwidgets-android/issues/detail?id=4"&gt;fix&lt;/a&gt; the About menu for screen density. Again, related to Android 2.x.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5222838354270062512?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5222838354270062512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/08/myspeed-301-request-location-updates.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5222838354270062512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5222838354270062512'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/08/myspeed-301-request-location-updates.html' title='MySpeed 3.0.1 - request location updates less often'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5323538482467831848</id><published>2010-08-18T07:26:00.002+02:00</published><updated>2010-08-18T07:41:27.761+02:00</updated><title type='text'>SendLog 1.0.4 limit the size of log output</title><content type='html'>Since my phone was upgraded to 2.2 the log output of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt; seems to have got bigger and that seemed to be causing it to be truncated when sent in the email.  So I've limited the size of the log output to 300 lines.  That's a bit of an arbitrary limit, but it should be okay.&lt;br /&gt;&lt;br /&gt;On other subjects:&lt;br /&gt;&lt;br /&gt;I released &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; a &lt;a href="http://neil-and.blogspot.com/2010/07/myspeed-300.html"&gt;little while ago&lt;/a&gt; with some big changes to the OpenStreetMap view.  It didn't really change anything with the Google Map view, and I didn't really test it.  After the release I tried using the Google Map view again and it seemed to be performing badly.  I tried adding some debugging log statements and so on to see what was going on, but it started performing a bit better and there was nothing to see.  Since no-one's complained, perhaps it was just my imagination!&lt;br /&gt;&lt;br /&gt;I've been doing some work on &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt; and that seems to be picking up momentum.  The applications that are based on this are diverging and it would be nice to see them merging back into osmdroid.  I also came across &lt;a href="http://code.google.com/p/osmand/"&gt;OsmAnd&lt;/a&gt;. This is doing the same kind of thing as &lt;a href="http://code.google.com/p/andnav/"&gt;AndNav2&lt;/a&gt; and &lt;a href="https://launchpad.net/opensatnav/"&gt;OpenSatNav&lt;/a&gt;, but they've more or less rewritten the code from scratch and done it very well.&lt;br /&gt;&lt;br /&gt;That's it. Nothing else in the pipeline for my apps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5323538482467831848?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5323538482467831848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/08/sendlog-104-limit-size-of-log-output.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5323538482467831848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5323538482467831848'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/08/sendlog-104-limit-size-of-log-output.html' title='SendLog 1.0.4 limit the size of log output'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3077134119155875831</id><published>2010-07-29T22:49:00.002+02:00</published><updated>2010-07-29T23:03:40.686+02:00</updated><title type='text'>MySpeed 3.0.0</title><content type='html'>I've released a new version of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; with these changes:&lt;br /&gt;&lt;br /&gt;No longer support Android 1.5.&lt;br /&gt;1.6 has better support for different screen resolutions.&lt;br /&gt;&lt;br /&gt;Use the library version of &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt;.&lt;br /&gt;Instead of including the source directly. This is an internal change and shouldn't have any visible effect, although the latest version of osmdroid also has various improvements.&lt;br /&gt;&lt;br /&gt;Use the correct screen resolution.&lt;br /&gt;Related to the upgrade to 1.6.  Now the display uses the full resolution of the hardware rather than scaling to a standard (low) resolution.&lt;br /&gt;&lt;br /&gt;Change the zoom options.&lt;br /&gt;Two independent checkboxes instead of the combined dropdown options. This is also related to the screen resolution change because it is more useful to let the user choose his preferred zoom.&lt;br /&gt;&lt;br /&gt;Use &lt;a href="http://developers.cloudmade.com/wiki/routing-http-api/"&gt;CloudMade routing&lt;/a&gt; instead of &lt;a href="http://wiki.openstreetmap.org/index.php/YOURS#Routing_API"&gt;YOURS routing&lt;/a&gt;. CloudMade is less prone to errors.&lt;br /&gt;&lt;br /&gt;Bug fix: show transparency of camera images correctly.&lt;br /&gt;When using the images associated with imported cameras, I accidentally replaced white with black - it was supposed to replace white with transparent. Now it replaces almost white with transparent.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3077134119155875831?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3077134119155875831/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/07/myspeed-300.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3077134119155875831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3077134119155875831'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/07/myspeed-300.html' title='MySpeed 3.0.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3341393712625349302</id><published>2010-06-28T10:06:00.003+02:00</published><updated>2010-06-28T10:59:52.098+02:00</updated><title type='text'>SendLog 1.0.3 and MySpeed work in progress</title><content type='html'>I added a progress dialog to &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I'm working on a new version of MySpeed that uses the jar version of &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt;. Actually I've finished it, but I'm also thinking about using &lt;a href="http://developers.cloudmade.com/projects/show/routing-http-api"&gt;Cloudmade routing&lt;/a&gt; instead of &lt;a href="http://wiki.openstreetmap.org/wiki/Gosmore"&gt;Gosmore&lt;/a&gt;.  And perhaps use Cloudmade tiles instead of direct from OpenStreetMap.  But before I do that I'm going to fix osmdroid to use Cloudmade tiles &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=50"&gt;properly&lt;/a&gt;.&lt;br /&gt;Or maybe I should release the osmdroid jar version first...&lt;br /&gt;&lt;br /&gt;The trouble with the new version of MySpeed is that I've upgraded to Android 1.6 and it uses the device's screen resolution. With 1.5 it used a standard size.  What this means is that if you have a higher resolution screen then the maps are displayed in higher resolution. In principle that's not a big deal because I added zoom controls in version &lt;a href="http://neil-and.blogspot.com/2010/05/myspeed-220.html"&gt;2.2.0&lt;/a&gt;, but it means that the automatic zoom doesn't look so good. So what I'm trying to do is change the zoom options so that automatic behaves a bit differently - there will be one option to show/auto-hide the zoom controls, and another option to decrease the zoom when moving above 80km/h.  But that's not as simple to implement as it sounds.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3341393712625349302?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3341393712625349302/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/06/sendlog-103-and-myspeed-work-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3341393712625349302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3341393712625349302'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/06/sendlog-103-and-myspeed-work-in.html' title='SendLog 1.0.3 and MySpeed work in progress'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7176688977369404266</id><published>2010-06-10T09:23:00.002+02:00</published><updated>2010-06-10T09:28:34.228+02:00</updated><title type='text'>MySpeed 2.2.2</title><content type='html'>A new release of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. Nothing really exciting - it was mainly to announce that this will be the last version to support Android 1.5. The next version will use the new version of &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt; which only supports 1.6.&lt;br /&gt;&lt;br /&gt;The first release to &lt;a href="http://market.android.com/"&gt;Market&lt;/a&gt; had a bug which caused it to crash on startup. I quickly made a new build to fix that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7176688977369404266?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7176688977369404266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/06/myspeed-222.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7176688977369404266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7176688977369404266'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/06/myspeed-222.html' title='MySpeed 2.2.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3051946275710169743</id><published>2010-05-17T10:04:00.001+02:00</published><updated>2010-05-17T10:06:08.587+02:00</updated><title type='text'>MySpeed 2.2.1</title><content type='html'>Fixed a rather silly bug in &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. It wasn't alerting for speed cameras.&lt;br /&gt;&lt;br /&gt;Also fixed some timezone issues in the CSV and GPX exports.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3051946275710169743?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3051946275710169743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/05/myspeed-221.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3051946275710169743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3051946275710169743'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/05/myspeed-221.html' title='MySpeed 2.2.1'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3765064200529465092</id><published>2010-05-10T09:55:00.003+02:00</published><updated>2010-05-10T09:58:05.701+02:00</updated><title type='text'>SendLog 1.0.2</title><content type='html'>I've released a new version of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;. This makes it more useable when invoked from other applications. I've added instructions to the web page.&lt;br /&gt;&lt;br /&gt;I also made the activity translucent. Because it's not a full screen activity so you want to be able to see what's behind it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3765064200529465092?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3765064200529465092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/05/sendlog-102.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3765064200529465092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3765064200529465092'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/05/sendlog-102.html' title='SendLog 1.0.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4741600773590694874</id><published>2010-05-07T11:28:00.002+02:00</published><updated>2010-05-07T11:32:20.190+02:00</updated><title type='text'>MySpeed 2.2.0</title><content type='html'>I added zoom functionality to &lt;a href="http://l6n.org/myspeed/index.shtml"&gt;MySpeed&lt;/a&gt; since it's often requested in Market.&lt;br /&gt;&lt;br /&gt;I also fixed a minor annoyance that the GPS occasionally reports a speed of 460 km/h - I now ignore that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4741600773590694874?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4741600773590694874/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/05/myspeed-220.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4741600773590694874'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4741600773590694874'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/05/myspeed-220.html' title='MySpeed 2.2.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2666130540810379779</id><published>2010-04-28T09:05:00.004+02:00</published><updated>2010-04-28T09:14:46.851+02:00</updated><title type='text'>DynDNS 1.1.8</title><content type='html'>A minor but perhaps significant fix for &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; - make sure it stops when it's finished updating IP address.&lt;br /&gt;&lt;br /&gt;What am I working on at the moment?&lt;br /&gt;One of the most frequent requests on &lt;a href="http://www.android.com/market/"&gt;Market&lt;/a&gt; for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; is to allow zooming. So I'm doing that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2666130540810379779?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2666130540810379779/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/04/dyndns-118.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2666130540810379779'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2666130540810379779'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/04/dyndns-118.html' title='DynDNS 1.1.8'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4333893907634111942</id><published>2010-04-16T22:00:00.003+02:00</published><updated>2010-04-16T22:02:55.353+02:00</updated><title type='text'>MySpeed 2.1.4</title><content type='html'>Oops! Used the wrong Google Maps key in the last release.  Done a new release to fix this.&lt;br /&gt;&lt;br /&gt;Also includes a change to remember the last entered routing search text.  Previously it only remembered results from the location lookup.  These are used as suggestions when entering the destination.  Now it will also suggest the last search.  This is especially useful when the location lookup fails.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4333893907634111942?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4333893907634111942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/04/myspeed-214.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4333893907634111942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4333893907634111942'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/04/myspeed-214.html' title='MySpeed 2.1.4'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1748553865518266817</id><published>2010-04-16T10:19:00.002+02:00</published><updated>2010-04-16T10:22:31.691+02:00</updated><title type='text'>MySpeed 2.1.3</title><content type='html'>I've been busy with &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt;, so I decided it was time to release &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt; with those changes.  This makes the performance of the OpenStreetMap view better.&lt;br /&gt;&lt;br /&gt;I also updated the &lt;a href="http://www.admob.com/"&gt;AdMob&lt;/a&gt; jar and changed my publisher id.  That's not so interesting ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1748553865518266817?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1748553865518266817/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/04/myspeed-213.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1748553865518266817'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1748553865518266817'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/04/myspeed-213.html' title='MySpeed 2.1.3'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8172904448404177066</id><published>2010-03-23T13:31:00.002+01:00</published><updated>2010-03-23T13:32:09.470+01:00</updated><title type='text'>DynDNS 1.1.7</title><content type='html'>There's a new version of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; with a couple of minor updates.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8172904448404177066?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8172904448404177066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/03/dyndns-117.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8172904448404177066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8172904448404177066'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/03/dyndns-117.html' title='DynDNS 1.1.7'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6263645912024260775</id><published>2010-03-22T12:32:00.002+01:00</published><updated>2010-03-22T12:35:21.527+01:00</updated><title type='text'>MySpeed 2.1.2</title><content type='html'>I've released version 2.1.2 of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;. The main change is performance improvements to the OpenStreetMap view. These are migrated from &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt;. There's also a couple of other minor changes that you can read in the &lt;a href="http://l6n.org/myspeed/history.shtml"&gt;history&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6263645912024260775?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6263645912024260775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/03/myspeed-212.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6263645912024260775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6263645912024260775'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/03/myspeed-212.html' title='MySpeed 2.1.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8886840495724171973</id><published>2010-03-18T09:47:00.002+01:00</published><updated>2010-03-18T09:52:56.440+01:00</updated><title type='text'>SendLog 1.0.0</title><content type='html'>I've added format and email client to the home shortcut.&lt;br /&gt;&lt;br /&gt;If you create this shortcut and use this to start SendLog then it will bypass the options that are presented when just running the application.&lt;br /&gt;&lt;br /&gt;I called the email client "sender" because it is anything that can handle &lt;a href="http://developer.android.com/reference/android/content/Intent.html#ACTION_SENDTO"&gt;ACTION_SENDTO&lt;/a&gt;, which is not only email clients.&lt;br /&gt;&lt;br /&gt;It also seemed like a good time to up the version to 1.0.0.&lt;br /&gt;&lt;br /&gt;By the way, if the destination email address is a Google email then you can just enter your username (the part before the @ sign).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8886840495724171973?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8886840495724171973/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/03/sendlog-100.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8886840495724171973'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8886840495724171973'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/03/sendlog-100.html' title='SendLog 1.0.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6769478019000706935</id><published>2010-03-08T14:54:00.003+01:00</published><updated>2010-03-08T15:23:47.390+01:00</updated><title type='text'>Removed RemoteAndroid</title><content type='html'>I've removed RemoteAndroid from my "portfolio" ;-)&lt;br /&gt;It was never reliable enough to do what it was supposed to do, and "find my Android" is one of the most common types of app that anyone can make.  It was a nice learning experience, but its time has passed.&lt;br /&gt;&lt;br /&gt;Good news: MySpeed uses &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt; for displaying the OpenStreetMap view.  I've been made a committer on osmdroid, so I can make my improvements for MySpeed and feed them back to the base project.  I'm mainly working on &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=9"&gt;issue 9&lt;/a&gt;.  I've actually been working on this ever since I started using osmdroid and before I even noticed that issue 9 is the issue I'm working on.  My &lt;a href="http://code.google.com/p/osmdroid/source/detail?r=96"&gt;first checkin&lt;/a&gt; didn't go very well because my workspace settings are different to the original source and I made whitespace changes on every line :-(&lt;br /&gt;I've learnt my lesson and will not make that mistake again, I hope.&lt;br /&gt;&lt;br /&gt;Better news: I had an email from Google telling me my free &lt;a href="http://groups.google.com/group/android-discuss/browse_thread/thread/3c7864430ead206a/2448318628d5eef4"&gt;Nexus&lt;/a&gt; &lt;a href="http://groups.google.com/group/android-developers/browse_thread/thread/49da01a3cb7f8803/c3dc517a2c11fd7b"&gt;One&lt;/a&gt; is on its way :-)&lt;br /&gt;Makes it all worthwhile doesn't it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6769478019000706935?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6769478019000706935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/03/removed-remoteandroid.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6769478019000706935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6769478019000706935'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/03/removed-remoteandroid.html' title='Removed RemoteAndroid'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4102625416184223524</id><published>2010-02-26T10:43:00.002+01:00</published><updated>2010-02-26T10:50:07.504+01:00</updated><title type='text'>MySpeed 2.1.1</title><content type='html'>A quick bug fix to the OpenStreetMap view for &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;: if you return to MySpeed after going to another activity, the location wouldn't be updated.  A rather stupid &lt;a href="http://code.google.com/p/osmdroid/issues/detail?id=18"&gt;bug&lt;/a&gt; in &lt;a href="http://code.google.com/p/osmdroid/"&gt;osmdroid&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also did a bit of an attempt at &lt;a href="http://android-developers.blogspot.com/2009/01/avoiding-memory-leaks.html"&gt;avoiding memory leaks&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And one other minor fix: I accidentally left a debug feature in the previous release - there was a dot in the middle of the speed cameras (only on the Google Map view - I never figured out why it wasn't displaying on the OSM view).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4102625416184223524?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4102625416184223524/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-211.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4102625416184223524'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4102625416184223524'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-211.html' title='MySpeed 2.1.1'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3749944664103173221</id><published>2010-02-25T14:07:00.002+01:00</published><updated>2010-02-25T14:15:39.741+01:00</updated><title type='text'>MySpeed 2.1.0</title><content type='html'>I'm finally ready to release the &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt; version of &lt;a href="http://l6n.org/myspeed/"&gt;MySpeed&lt;/a&gt;.  It still seems to be a little unstable but I'll see if I can help that in the coming weeks.&lt;br /&gt;&lt;br /&gt;I expanded the Routing menu so that it has options to clear the route or recalculate the route.  If there's no route it skips those options and goes direct to the search box.&lt;br /&gt;&lt;br /&gt;I also added a nice scrolling tab about box.  The tab content all comes from the web.  I also redesign the web site to use the same tabs.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://l6n.org/myspeed/license.shtml"&gt;license page&lt;/a&gt; lists all the shared components that I use.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3749944664103173221?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3749944664103173221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-210.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3749944664103173221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3749944664103173221'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-210.html' title='MySpeed 2.1.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1089408457394238248</id><published>2010-02-25T12:26:00.002+01:00</published><updated>2010-02-25T12:32:18.111+01:00</updated><title type='text'>DynDNS 1.1.6</title><content type='html'>I've done a new release of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; which waits a couple of seconds before sending IP address updates.&lt;br /&gt;&lt;br /&gt;This is because the Motorola Droid connects to Wi-Fi and then falsely reports that it's connected to the mobile network and then switches to Wi-Fi.  That meant that it would send an update for the false connection.  If we wait a couple of seconds then the connection has settled down and it correctly reports that it's connected to Wi-Fi and gives the correct Wi-Fi IP address.  This is mainly relevant if the "Update Wi-Fi address" setting is off.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1089408457394238248?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1089408457394238248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/dyndns-116.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1089408457394238248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1089408457394238248'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/dyndns-116.html' title='DynDNS 1.1.6'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7381486031187223750</id><published>2010-02-15T10:44:00.001+01:00</published><updated>2010-02-15T10:45:54.868+01:00</updated><title type='text'>MySpeed 2.0.3</title><content type='html'>The previous release of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; didn't display speed in mph, so I've fixed that in this release.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7381486031187223750?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7381486031187223750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-203.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7381486031187223750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7381486031187223750'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-203.html' title='MySpeed 2.0.3'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3245151325077019985</id><published>2010-02-12T10:18:00.003+01:00</published><updated>2010-02-12T10:59:32.601+01:00</updated><title type='text'>MySpeed 2.0.2</title><content type='html'>I've released version 2.0.2 of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There's a fix to improve the routing: I added routing in 2.0.0 and it would only alert for cameras that are on your route.  The trouble with that is that if you yourself weren't on the route then it wouldn't alert for cameras that you drive past.  So for this version I changed it so that it would alert for cameras in the following three situations:&lt;br /&gt;1. there's no route given.&lt;br /&gt;2. there is a route, &lt;span style="font-weight:bold;"&gt;you&lt;/span&gt; &lt;span style="font-weight:bold;"&gt;are&lt;/span&gt; on the route, &lt;span style="font-weight:bold;"&gt;and&lt;/span&gt; the &lt;span style="font-weight:bold;"&gt;camera&lt;/span&gt; is on the route.&lt;br /&gt;3. there is a route, &lt;span style="font-weight:bold;"&gt;you&lt;/span&gt; are &lt;span style="font-weight:bold;"&gt;not&lt;/span&gt; on the route (irrelevant whether camera is or not).&lt;br /&gt;&lt;br /&gt;It only checks whether you're on the route every 30 seconds, and the definition of "you are on the route" is that your current position has an accuracy better than 100m and you are within 200m of the route.&lt;br /&gt;&lt;br /&gt;The other change in this release is a performance improvement.  I'm always trying to improve the performance because it's doing quite a lot of work.  There are very many location updates, and every time MySpeed receives a location update it has to recalculate a lot of stuff.  The main change in this release is described below.&lt;br /&gt;&lt;br /&gt;MySpeed draws the tracks, the route and the cameras in &lt;a href="http://code.google.com/android/add-ons/google-apis/reference/com/google/android/maps/MyLocationOverlay.html#draw%28android.graphics.Canvas,%20com.google.android.maps.MapView,%20boolean,%20long%29"&gt;MyLocationOverlay.draw&lt;/a&gt;.  The trouble is that this gets called very often - much more often than the location changes.  So I need a way to only recalculate what to draw when necessary.  In the previous versions of MySpeed I created a &lt;a href="http://developer.android.com/reference/android/graphics/Bitmap.html"&gt;Bitmap&lt;/a&gt; every time the location changes and then drew the track, route and cameras onto that Bitmap.  Then I draw the same Bitmap every time "draw" is called (until the location changes, then I calculate a new Bitmap).  For this release I replaced Bitmap with &lt;a href="http://developer.android.com/reference/android/graphics/Picture.html"&gt;Picture&lt;/a&gt; which is much more efficient.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;What's next for MySpeed?&lt;br /&gt;&lt;br /&gt;I already started working on an &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt; view for MySpeed as an alternative to the Google map view.  I got fairly far along the path for this, but along the way I did a lot of refactoring to make the code more flexible so that it can handle both views.  I decided to go back to the 2.0.1 code base and do the refactoring there.  This is what you've now got in 2.0.2.  Next I will do the OpenStreetMap view again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3245151325077019985?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3245151325077019985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-202.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3245151325077019985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3245151325077019985'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-202.html' title='MySpeed 2.0.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4431386831431318689</id><published>2010-02-11T13:37:00.001+01:00</published><updated>2010-02-11T13:39:14.225+01:00</updated><title type='text'>SendLog 0.0.4 with shortcuts</title><content type='html'>Having recently released &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; with home shortcuts, I decided to do the same thing for &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;.  You can enter the destination email address in the shortcut.  In my case this is my own email address.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4431386831431318689?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4431386831431318689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/sendlog-004-with-shortcuts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4431386831431318689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4431386831431318689'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/sendlog-004-with-shortcuts.html' title='SendLog 0.0.4 with shortcuts'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2641763040702120706</id><published>2010-02-02T10:34:00.002+01:00</published><updated>2010-02-02T10:37:52.369+01:00</updated><title type='text'>DynDNS 1.1.5 with a setting to not update when connecting to Wi-Fi</title><content type='html'>A lot of people have asked for a setting so that &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; doesn't send updates when connecting to Wi-Fi. This is supposed to prevent the DynDNS provider from banning you for abuse.&lt;br /&gt;&lt;br /&gt;I have added this setting.&lt;br /&gt;&lt;br /&gt;I'm not convinced it's going to work very well, because when you connect back to the phone network you'll probably get a new IP address and so it'll send an update. Some providers will ban you for sending too many updates, even if the IP address is changing. If you're walking around the house and the Wi-Fi is periodically connecting and disconnecting then you'll still send a lot of updates and get banned.&lt;br /&gt;&lt;br /&gt;But anyway, now you've got that setting. I hope it works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2641763040702120706?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2641763040702120706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/dyndns-115-with-setting-to-not-update.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2641763040702120706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2641763040702120706'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/dyndns-115-with-setting-to-not-update.html' title='DynDNS 1.1.5 with a setting to not update when connecting to Wi-Fi'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5127642490335957239</id><published>2010-02-02T09:44:00.007+01:00</published><updated>2010-02-06T21:39:11.965+01:00</updated><title type='text'>MySpeed 2.0.1 with shortcuts</title><content type='html'>Now you can create a shortcut on your home screen which will open &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; and calculate the route to your destination.  I have two shortcuts on my home screen - home and work.  So when I go home I just click the home shortcut and it runs MySpeed and calculates the route home.  Then it won't alert me about cameras that are a little way off my route.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://l6n.org/images/myspeed-blogger-1.png"&gt;&lt;img style="margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 214px; height: 320px;" src="http://l6n.org/images/myspeed-blogger-1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5433566194164002802" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://l6n.org/images/myspeed-blogger-2.png"&gt;&lt;img style="margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 214px; height: 320px;" src="http://l6n.org/images/myspeed-blogger-2.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5433566283755257986" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://l6n.org/images/myspeed-blogger-3.png"&gt;&lt;img style="margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 214px; height: 320px;" src="http://l6n.org/images/myspeed-blogger-3.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5433566328646173218" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5127642490335957239?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5127642490335957239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-201-with-shortcuts.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5127642490335957239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5127642490335957239'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/02/myspeed-201-with-shortcuts.html' title='MySpeed 2.0.1 with shortcuts'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-4840275488762097183</id><published>2010-01-28T10:08:00.002+01:00</published><updated>2010-01-28T10:26:13.246+01:00</updated><title type='text'>MySpeed 2.0.0 with routing</title><content type='html'>I've release version 2.0.0 of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  I've added routing.  You can enter your destination, in the usual Google format, eg Long Street, Mytown, and it will show the route on the map as a green line.  The main purpose of this is not as route guidance, but just so that MySpeed can avoid alerting for cameras that are not on your route.&lt;br /&gt;&lt;br /&gt;I think it complies with the &lt;a href="http://www.google.com/help/terms_maps.html"&gt;Google Maps TOS&lt;/a&gt;.  As I understand, it would only violate them if MySpeed was to automatically update the route if you move off the route, or if I was to show turn-by-turn directions.  But just in case, the next thing I'm going to try is using an &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt; &lt;a href="http://code.google.com/p/osmdroid/"&gt;view&lt;/a&gt; as well as the Google Map view.&lt;br /&gt;&lt;br /&gt;A couple of other things I'm going to try are:&lt;br /&gt;&lt;br /&gt;1. Add the ability to create MySpeed shortcuts.  There will be two options when creating the shortcut: background/foreground and destination.  So that you can, for example, create a shortcut which opens MySpeed and shows the route to your house.  After adding this, I'll have a look to see if that makes it possible/easier to add a "navigate to" link to Contacts.&lt;br /&gt;&lt;br /&gt;2. Add a MySpeed widget which just shows your speed.  It will also run MySpeed in the background and alert on cameras.  It will have an option to choose the widget size when you add it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-4840275488762097183?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/4840275488762097183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-200-with-routing.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4840275488762097183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/4840275488762097183'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-200-with-routing.html' title='MySpeed 2.0.0 with routing'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-227601199729714278</id><published>2010-01-23T21:15:00.002+01:00</published><updated>2010-01-23T21:33:42.397+01:00</updated><title type='text'>MySpeed 1.5.2</title><content type='html'>I've released version 1.5.2 of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  Just a couple of minor bugs:&lt;br /&gt;Don't adjust volume when alerting if in silent mode.&lt;br /&gt;Fix a &lt;a href="http://groups.google.com/group/android-developers/browse_thread/thread/43615742f462bbf1/8918ddfc92808c42"&gt;crash&lt;/a&gt; on some devices.&lt;br /&gt;&lt;br /&gt;There are quite a few complaints in Market about force closes.  No-one ever gave me any more info, until now, and so I've found and fixed this bug.  It actually seems to be a bug on Motorola builds of Google Maps.  I've implemented a workaround.  If you've got a device with this bug then your "my location" dot will be yellow instead of blue.&lt;br /&gt;&lt;br /&gt;I've pretty much finished the routing that will be released in the next version.  I think it's pretty good.  I'll let it settle down, and maybe add a few niceties, before I release it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-227601199729714278?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/227601199729714278/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-152.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/227601199729714278'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/227601199729714278'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-152.html' title='MySpeed 1.5.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3385024849501570480</id><published>2010-01-09T22:14:00.002+01:00</published><updated>2010-01-09T22:41:11.742+01:00</updated><title type='text'>MySpeed 1.5.1</title><content type='html'>I've released a new version of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; which shows the files on the import screen in alphabetical order.  Perhaps if I thought it was worth the extra effort I would have done it in a more logical order, ie case-insensitive and handling numbers properly.  But this is enough for now.&lt;br /&gt;&lt;br /&gt;What I'm working on now is routing.  The main use of this is so that it can be a bit cleverer about alerting cameras on your route, rather than just cameras that are near you.  It will probably just get a route from &lt;a href="http://wiki.openstreetmap.org/index.phphttp://www.blogger.com/img/blank.gif/YOURS#Routing_API"&gt;YOURS&lt;/a&gt; and show it.  The main worry about this is that it may violate section 2(g) of the &lt;a href="http://www.google.com/intl/en_us/help/terms_maps.html"&gt;Google Maps TOS&lt;/a&gt;, but as I read it, I will only violate them if I update the route based automatically on your location, ie if you go off the route and it automatically recalculates.  Just showing the route and not updating it doesn't seem to be a problem.  I may try using an &lt;a href="http://www.openstreetmap.org/"&gt;OpenStreetMap&lt;/a&gt; map instead of a Google Map, because then the Google TOS is irrelevant, but I think that will probably not be worth the effort because I use &lt;a href="http://code.google.com/android/add-ons/google-apis/reference/com/google/android/maps/MyLocationOverlay.html"&gt;MyLocationOverlay&lt;/a&gt; to do a lot of stuff, so instead of that I'll have to manually show the map.  We'll see.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3385024849501570480?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3385024849501570480/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-151.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3385024849501570480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3385024849501570480'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2010/01/myspeed-151.html' title='MySpeed 1.5.1'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5619392068118284540</id><published>2009-11-09T11:19:00.003+01:00</published><updated>2009-11-09T11:25:26.609+01:00</updated><title type='text'>MySpeed 1.5.0</title><content type='html'>I've made a new release of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  The most significant change is the ability to configure the camera alert sound and volume.  There are also a whole load of smaller changes.&lt;br /&gt;&lt;br /&gt;It also appears that Android 1.6 devices do not provide satellite count in the location updates, which means that the previous version of MySpeed didn't work on those devices.  That is also fixed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5619392068118284540?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5619392068118284540/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/11/myspeed-150.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5619392068118284540'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5619392068118284540'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/11/myspeed-150.html' title='MySpeed 1.5.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7084659522492767040</id><published>2009-10-22T08:58:00.002+02:00</published><updated>2009-10-22T09:02:49.233+02:00</updated><title type='text'>DynDNS 1.1.3</title><content type='html'>I made a new version of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; which allows you to enter more of the path in "Update domain" if you want to.  This allows you to configure it to work for DynDNS providers that don't follow the &lt;a href="http://www.dyndns.com/developers/specs/"&gt;Dynamic DNS specification&lt;/a&gt; such as &lt;a href="http://joker.com/faq/content/11/427/en/what-is-dynamic-dns-dyndns.html"&gt;Joker&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7084659522492767040?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7084659522492767040/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/10/dyndns-113.html#comment-form' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7084659522492767040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7084659522492767040'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/10/dyndns-113.html' title='DynDNS 1.1.3'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8555376453325221025</id><published>2009-10-12T10:55:00.001+02:00</published><updated>2009-10-12T10:58:04.669+02:00</updated><title type='text'>RemoteAndroid 1.0.8</title><content type='html'>I made a new release of RemoteAndroid.  It supports Skyhook Wireless API 3.3.1 and Android API 1.6.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8555376453325221025?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8555376453325221025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/10/remoteandroid-108.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8555376453325221025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8555376453325221025'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/10/remoteandroid-108.html' title='RemoteAndroid 1.0.8'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1255604150625504398</id><published>2009-09-28T16:37:00.002+02:00</published><updated>2009-09-28T16:46:49.593+02:00</updated><title type='text'>MySpeed 1.3.7</title><content type='html'>I have just finished working on a new feature for &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; that was frequently requested in the comments, namely the ability to show speed in a bigger font.  Just as I finished I received a report that the new version from yesterday causes force close - this happens when there is no previous version installed.  So I quickly fixed that bug and built a release with the fresh speed size fix.  This is released as version 1.3.7.  I hope the quick release didn't let any other bugs slip by.  Perhaps I'll play with the speed size a bit more in the next release.&lt;br /&gt;&lt;br /&gt;On a totally unrelated note, I've decided to migrate from &lt;a href="http://en.wikipedia.org/wiki/Subversion_%28software%29"&gt;svn&lt;/a&gt; to &lt;a href="http://en.wikipedia.org/wiki/Git_%28software%29"&gt;git&lt;/a&gt;.  Mainly because it gives me the ability to check in, compare versions, etc when I'm not connected to the repository.  But that probably doesn't interest you ;)  Actually, if I'd done that earlier I could have released a quick bug fix without the speed fix, because I'm not connected to the repository as I'm doing all this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1255604150625504398?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1255604150625504398/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-137.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1255604150625504398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1255604150625504398'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-137.html' title='MySpeed 1.3.7'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1808080210069688776</id><published>2009-09-27T20:15:00.002+02:00</published><updated>2009-09-27T20:21:23.700+02:00</updated><title type='text'>MySpeed 1.3.6</title><content type='html'>Released version 1.3.6 of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; with the changes mentioned in my last blog post.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1808080210069688776?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1808080210069688776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-136.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1808080210069688776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1808080210069688776'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-136.html' title='MySpeed 1.3.6'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7976690047193780274</id><published>2009-09-21T13:35:00.002+02:00</published><updated>2009-09-21T13:48:48.615+02:00</updated><title type='text'>MySpeed memory usage</title><content type='html'>&lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; collects a lot of data which will end up filling up your memory and slowing down your phone.  That's not good of course.  My database was getting close to 10MB and I only had a couple of MB free so it became really noticeable.  So I decided it was time to export the database and delete it.  With such a big database that also takes a long time, but it does it eventually.  A long time ago I added an option to store the database on the sdcard instead of internal memory, but that was much too slow to be useful so I never used it and didn't recommend it.&lt;br /&gt;&lt;br /&gt;The next version of MySpeed will remove the option to store the database on the sdcard, and will warn when the database is getting too big.  I guess it's a bit arbitrary what "too big" is, but I think 10MB is a good level, or if the size of the database is bigger than the amount of free space on the internal memory.  I'll also add a bit to the web page to recommend tidying up frequently.&lt;br /&gt;&lt;br /&gt;In case you're interested, I use MySpeed for an average of about 1½ hours per day, and it took 3 months to get to 10MB.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7976690047193780274?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7976690047193780274/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-memory-usage.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7976690047193780274'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7976690047193780274'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-memory-usage.html' title='MySpeed memory usage'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2078309964112737299</id><published>2009-09-16T16:43:00.002+02:00</published><updated>2009-09-16T16:53:50.523+02:00</updated><title type='text'>MySpeed 1.3.5</title><content type='html'>Android recently &lt;a href="http://phandroid.com/2009/09/03/android-market-update-screenshots-imminent/"&gt;announced&lt;/a&gt; that screenshots are allowed in &lt;a href="http://market.android.com/"&gt;Market&lt;/a&gt;, so I've been trying to figure out how to make a screenshot of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  The problem is that the emulator doesn't allow you to send a series of locations and I don't know how to take a screenshot of the real device.  So I decided to fake it!  I just added some code which sends a series of locations and then I can take a screenshot with the emulator.  In order to make the screenshots a bit more attractive I also removed the adverts.  At the same time I made a &lt;a href="http://wikipedia.org/wiki/Donationware"&gt;donationware&lt;/a&gt; application &lt;a href="http://l6n.org/android/index.shtml#ta"&gt;Ta!&lt;/a&gt; that allows users to remove the adverts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2078309964112737299?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2078309964112737299/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-135.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2078309964112737299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2078309964112737299'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/09/myspeed-135.html' title='MySpeed 1.3.5'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3402297441938668551</id><published>2009-08-02T19:10:00.002+02:00</published><updated>2009-08-02T19:11:50.149+02:00</updated><title type='text'>MySpeed 1.3.4</title><content type='html'>After the previous release to rotate &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; map to show ahead up, I realised that it's pretty handy to know how much it's rotated, so I added a compass to show which way is north.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3402297441938668551?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3402297441938668551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/08/myspeed-134.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3402297441938668551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3402297441938668551'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/08/myspeed-134.html' title='MySpeed 1.3.4'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3288071588624479065</id><published>2009-07-24T09:50:00.003+02:00</published><updated>2009-07-24T10:05:12.679+02:00</updated><title type='text'>MySpeed 1.3.3</title><content type='html'>Still busy with &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;!  I've added a feature to rotate the map so that the direction of travel is towards the top of the map.  This new feature is enabled by default, but you can disable it if you prefer to have north up.&lt;br /&gt;&lt;br /&gt;It took quite a lot of messing about to figure out how to do it, but in the end the solution is very simple.  I was also worried that it would have a bad performance effect, but in fact it turns out to be negligible.&lt;br /&gt;&lt;br /&gt;I'm going to take a pause from developing new features for my apps for a while.  Partly because there's nothing else at the top of my list, and partly because it's summer holiday season.&lt;br /&gt;&lt;br /&gt;PS. I see that making the speed text bigger is a recurring theme on the &lt;a href="http://market.android.com/"&gt;Market&lt;/a&gt; &lt;a href="http://www.cyrket.com/package/org.l6n.myspeed"&gt;comments&lt;/a&gt;.  I already increased it from the original size, but I guess I need an option to choose from small, medium, large, or something like that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3288071588624479065?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3288071588624479065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-133.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3288071588624479065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3288071588624479065'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-133.html' title='MySpeed 1.3.3'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1192602362902367288</id><published>2009-07-19T21:58:00.001+02:00</published><updated>2009-07-19T22:01:33.599+02:00</updated><title type='text'>MySpeed 1.3.2</title><content type='html'>Another new version of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  This time I've added export to KML and GPX.  These formats have a lot of possibilities, but I've only done a very basic export.  If there's anything else you'd like to see in the exports then let me know.  I also extended the export dialog so that you can choose a date range of data to export or delete.&lt;br /&gt;&lt;br /&gt;What I'm going to try next is rotating the map to the direction of travel, so that ahead is always up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1192602362902367288?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1192602362902367288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-132.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1192602362902367288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1192602362902367288'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-132.html' title='MySpeed 1.3.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7077482341412953468</id><published>2009-07-06T11:56:00.003+02:00</published><updated>2009-07-06T11:58:54.298+02:00</updated><title type='text'>MySpeed 1.3.1</title><content type='html'>I added the ability for &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; to use the images associated with imported ov2 files.  I also fixed a couple of bugs.&lt;br /&gt;&lt;br /&gt;What I'll probably do next is export to GPX and maybe some other formats, and an option to export a part of the trails instead of only being able to export all of it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7077482341412953468?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7077482341412953468/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-131.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7077482341412953468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7077482341412953468'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/07/myspeed-131.html' title='MySpeed 1.3.1'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2207532940067759696</id><published>2009-06-30T22:21:00.002+02:00</published><updated>2009-06-30T22:30:15.102+02:00</updated><title type='text'>MySpeed 1.3.0</title><content type='html'>As promised, I've released version 1.3.0 of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; with support for ov2 files and an enhanced import dialog.&lt;br /&gt;&lt;br /&gt;I was intending to do some kind of automatic updater, but then I realised it's not worth the effort because you can just use &lt;a href="http://poiedit.com/downloads.htm"&gt;PoiEdit&lt;/a&gt; to download files directly to the SD card.&lt;br /&gt;&lt;br /&gt;The next update will be to use the images that are downloaded by PoiEdit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2207532940067759696?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2207532940067759696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-130.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2207532940067759696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2207532940067759696'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-130.html' title='MySpeed 1.3.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-809060912984076718</id><published>2009-06-22T12:10:00.004+02:00</published><updated>2009-06-22T12:30:58.549+02:00</updated><title type='text'>Now I'm improving the download features of MySpeed</title><content type='html'>&lt;a style="" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_d_HNVtkSpWw/Sj9a3cEhFpI/AAAAAAAADKw/OqL_7VeLko0/s1600-h/device.png"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 214px; height: 320px;" src="http://4.bp.blogspot.com/_d_HNVtkSpWw/Sj9a3cEhFpI/AAAAAAAADKw/OqL_7VeLko0/s320/device.png" alt="" id="BLOGGER_PHOTO_ID_5350094790813882002" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;At the moment I'm working on improving the download features of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;. I've added support for ov2 format, as used by &lt;a href="http://tomtom.com/"&gt;TomTom&lt;/a&gt; among others. ov2 format doesn't include a description of the type of camera, so I've made an import dialog where you can enter the type.  It's more or less finished - it just wants a bit more testing and tidying up. Expect it in &lt;a href="http://market.android.com/"&gt;Market&lt;/a&gt; soon, but in the meantime here's a sneak preview.&lt;br /&gt;&lt;br /&gt;When that's finished, the next thing I will work on is some kind of automatic updater. I needed to do ov2 format first because the configuration files used by &lt;a href="http://poiedit.com/"&gt;PoiEdit&lt;/a&gt; refer to ov2 files, eg&lt;br /&gt;&lt;a href="http://www.poiedit.com/pois.xml"&gt;http://www.poiedit.com/pois.xml&lt;/a&gt;&lt;br /&gt;&lt;a href="http://scdb.info/poiedit.xml"&gt;http://scdb.info/poiedit.xml&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.flitspaal.nl/poi_flitspalen.xml"&gt;http://www.flitspaal.nl/poi_flitspalen.xml&lt;br /&gt;&lt;/a&gt;etc.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-809060912984076718?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/809060912984076718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/now-im-improving-download-features-of.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/809060912984076718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/809060912984076718'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/now-im-improving-download-features-of.html' title='Now I&apos;m improving the download features of MySpeed'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_d_HNVtkSpWw/Sj9a3cEhFpI/AAAAAAAADKw/OqL_7VeLko0/s72-c/device.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6675724859247564083</id><published>2009-06-22T12:08:00.001+02:00</published><updated>2009-06-22T12:10:00.295+02:00</updated><title type='text'>SendLog 0.0.2</title><content type='html'>I made a new version of &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;.  I added the Android version and a 'top' output to the email that it sends.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6675724859247564083?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6675724859247564083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/sendlog-002.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6675724859247564083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6675724859247564083'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/sendlog-002.html' title='SendLog 0.0.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-654785861429465466</id><published>2009-06-08T15:22:00.003+02:00</published><updated>2009-06-09T09:56:31.391+02:00</updated><title type='text'>MySpeed 1.2.0</title><content type='html'>I've released another version of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;.  I've fixed a few minor things, but the main change is to put adverts at the bottom of the screen.  This also seemed like a good point to remove the beta label.&lt;br /&gt;&lt;br /&gt;The adverts are from &lt;a href="http://www.admob.com/"&gt;AdMob&lt;/a&gt;.  Adding the little ad block was a piece of cake and couldn't have taken more than 15 minutes.  I just followed the instructions in the &lt;a href="http://developer.admob.com/wiki/Android"&gt;readme&lt;/a&gt; and it was done.  The API is well documented and even includes source code.  A much more enjoyable experience than trying to use the &lt;a href="http://www.skyhookwireless.com/developers/Android_Integration_Manual.php"&gt;Skyhook API&lt;/a&gt; as commented in a previous post.  Also the ads themselves are unintrusive. Now we'll see if it makes a bit of money for me without pissing people off ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-654785861429465466?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/654785861429465466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-120.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/654785861429465466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/654785861429465466'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-120.html' title='MySpeed 1.2.0'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6672952007047373960</id><published>2009-06-04T09:48:00.002+02:00</published><updated>2009-06-04T10:06:13.035+02:00</updated><title type='text'>SendLog 0.0.1</title><content type='html'>I couldn't find an app that sends logfiles from my phone to an email that worked the way I like it, so I wrote one.  It's called &lt;a href="http://l6n.org/android/sendlog.shtml"&gt;SendLog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I find it useful for debugging apps, especially &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt;, when I'm away from the computer.&lt;br /&gt;&lt;br /&gt;Maybe I'll add more features, but probably it already does everything I need.  I started making it into a widget, but lost interest!&lt;br /&gt;&lt;br /&gt;Other similar tools that might be useful are &lt;a href="http://www.twofortyfouram.com/developer/log_collector/doc/"&gt;LogCollector&lt;/a&gt; and &lt;a href="http://code.google.com/p/android-random/"&gt;Logcat&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6672952007047373960?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6672952007047373960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/sendlog-001.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6672952007047373960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6672952007047373960'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/sendlog-001.html' title='SendLog 0.0.1'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-3291127864780267469</id><published>2009-06-03T11:17:00.003+02:00</published><updated>2009-06-03T11:26:04.213+02:00</updated><title type='text'>MySpeed 1.1.0 beta</title><content type='html'>I've released a new version of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; that continues to run when you switch to another application.  By default that option is disabled - go to settings to enable it.  This required quite a bit of internal redesign and took a while to get it right.&lt;br /&gt;&lt;br /&gt;I've also removed the stuff that doesn't work any more since Android 1.5 - ie trying to turn GPS on and off.  This means that MySpeed also asks one less permission when you install it.&lt;br /&gt;&lt;br /&gt;And I removed the 'Exit' menu option because it didn't really work. I just make sure that everything is stopped and then the operating system can exit the application if it wants to - that's the way Android is designed.&lt;br /&gt;&lt;br /&gt;Now that it's got more than just basic features, and it's stable, I decided it's time to remove the alpha label, although I've kept a beta label for now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-3291127864780267469?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/3291127864780267469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-110-beta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3291127864780267469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/3291127864780267469'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/06/myspeed-110-beta.html' title='MySpeed 1.1.0 beta'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8554567753664505731</id><published>2009-05-29T07:20:00.003+02:00</published><updated>2009-05-29T10:11:27.998+02:00</updated><title type='text'>RemoteAndroid 1.0.7</title><content type='html'>New version of &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt; to make it support &lt;a href="http://d.android.com/sdk/android-1.5.html"&gt;Android 1.5&lt;/a&gt; only, i.e. remove the commands to turn on and off GPS.&lt;br /&gt;&lt;br /&gt;I also added support for &lt;a href="http://www.skyhookwireless.com/developers/Android_Integration_Manual.php"&gt;Skyhook Wireless&lt;/a&gt;.  I'm not sure how useful that is, but it was easy to do and probably doesn't do any harm.&lt;br /&gt;&lt;br /&gt;My opinion of Skyhook is that it's a bit useless on Android because it doesn't integrate well with the other location providers (network and gps) - it doesn't tell you which method it used for getting location so there's no way to compare with the built-in methods to see which is best. Perhaps you can figure it out - if &lt;span style="font-family: courier new;"&gt;nap&lt;/span&gt; is zero that means it used GPS so you can ignore it, if &lt;span style="font-family: courier new;"&gt;nap&lt;/span&gt; is greater than zero then it used wireless so you can compare a combination of time and accuracy to decide whether it's better than the Android network location.&lt;br /&gt;PS: if you're wondering what &lt;span style="font-family: courier new;"&gt;nap&lt;/span&gt; means, don't look in the Skyhook API documentation because it's pretty useless. The answer is "number of access points". PS2: there's no corresponding attribute for "number of satellites".&lt;br /&gt;Skyhook's answer is to just use them &lt;span style="font-style: italic;"&gt;instead of&lt;/span&gt; the Android API, but there's two reason's not to do that:&lt;br /&gt;1. Skyhook's wireless coverage is worse than Android's, except in some built-up areas of America.&lt;br /&gt;2. Skyhook only provides reverse geolocation for America.&lt;br /&gt;So you'd really need to use all your options, and then go through hoops to make it consistent with the Android location provider.&lt;br /&gt;But nevertheless I'm glad to see that Skyhook is supporting Android.  I just hope that more developers try to use it and provide feedback to Skyhook so that they can modify it to make it more useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8554567753664505731?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8554567753664505731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-107.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8554567753664505731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8554567753664505731'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-107.html' title='RemoteAndroid 1.0.7'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-5545473241916298429</id><published>2009-05-11T12:29:00.002+02:00</published><updated>2009-05-11T12:33:32.993+02:00</updated><title type='text'>RemoteAndroid 1.0.6</title><content type='html'>Another minor change to &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt; : add some extra information to the data returned from a "system" request.&lt;br /&gt;&lt;br /&gt;More significantly, I have created an &lt;a href="http://l6n.org/android/remand-proxy.shtml"&gt;easy-to-use out-of-the-box web-interface&lt;/a&gt; for it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-5545473241916298429?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/5545473241916298429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-106.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5545473241916298429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/5545473241916298429'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-106.html' title='RemoteAndroid 1.0.6'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7906855281515381408</id><published>2009-05-08T10:56:00.002+02:00</published><updated>2009-05-08T10:59:34.959+02:00</updated><title type='text'>RemoteAndroid 1.0.5</title><content type='html'>I changed the "gps" parameter of &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt; to better suport &lt;a href="http://d.android.com/sdk/android-1.5.html"&gt;Android 1.5&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;And if anyone knows how to turn the keyboard backlight off I will be very glad to hear about it.  A white backlight on a white keyboard is the stupidest thing ever invented!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7906855281515381408?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7906855281515381408/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-105.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7906855281515381408'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7906855281515381408'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-105.html' title='RemoteAndroid 1.0.5'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-553318376565700894</id><published>2009-05-08T07:18:00.001+02:00</published><updated>2009-05-08T07:20:45.981+02:00</updated><title type='text'>MySpeed 1.0.2 alpha</title><content type='html'>I released a new version of &lt;a href="http://l6n.org/android/myspeed.shtml"&gt;MySpeed&lt;/a&gt; that works better with &lt;a href="http://d.android.com/sdk/android-1.5.html"&gt;Android 1.5&lt;/a&gt;, i.e. it directs you to Settings in order to enable GPS.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-553318376565700894?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/553318376565700894/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/myspeed-102-alpha.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/553318376565700894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/553318376565700894'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/myspeed-102-alpha.html' title='MySpeed 1.0.2 alpha'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-1452695797306158220</id><published>2009-05-06T07:59:00.002+02:00</published><updated>2009-05-06T08:01:16.354+02:00</updated><title type='text'>RemoteAndroid 1.0.4</title><content type='html'>There's a new version of &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt;  that will query the GPS mode without changing it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-1452695797306158220?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/1452695797306158220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-104.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1452695797306158220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/1452695797306158220'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/remoteandroid-104.html' title='RemoteAndroid 1.0.4'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-6596665734057888056</id><published>2009-05-06T07:18:00.002+02:00</published><updated>2009-05-06T07:23:31.700+02:00</updated><title type='text'>Android 1.5</title><content type='html'>I just got &lt;a href="http://d.android.com/sdk/android-1.5.html"&gt;Android 1.5&lt;/a&gt; pushed to my phone.  No big surprises.  My only complaint so far is that &lt;a href="http://DarkKeys.googlecode.com/"&gt;DarkKeys&lt;/a&gt; doesn't work any more.  As expected, controlling GPS doesn't work in &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt;, but surprisingly turning on airplane mode still works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-6596665734057888056?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/6596665734057888056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/android-15.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6596665734057888056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/6596665734057888056'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/android-15.html' title='Android 1.5'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-8591070131936051436</id><published>2009-05-05T07:11:00.001+02:00</published><updated>2009-05-05T07:13:29.437+02:00</updated><title type='text'>DynDNS release 1.1.2</title><content type='html'>I released version 1.1.2 of &lt;a href="http://l6n.org/android/dyndns.shtml"&gt;DynDNS&lt;/a&gt; with these changes:&lt;br /&gt;&lt;br /&gt;&lt;u&gt;&lt;/u&gt;Make "Local Area Network" setting also work with &lt;a href="http://www.zoneedit.com/doc/dynamic.html"&gt;ZoneEdit&lt;/a&gt;.&lt;br /&gt;Change "Domain" setting name to "Update domain" and make the path optional.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-8591070131936051436?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/8591070131936051436/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/dyndns-release-112.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8591070131936051436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/8591070131936051436'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/dyndns-release-112.html' title='DynDNS release 1.1.2'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2008208359544969557</id><published>2009-05-05T06:52:00.002+02:00</published><updated>2009-05-05T06:56:55.269+02:00</updated><title type='text'>Not using Google App Engine</title><content type='html'>In my last post I said I was going to try using &lt;a href="http://code.google.com/appengine/docs/java/"&gt;Google App Engine for Java&lt;/a&gt; to write a front-end for &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid.&lt;/a&gt;  This didn't work out because it turns out that GAE has a fixed timeout of 5 seconds when fetching an external URL.  Since it usually takes more than 5 seconds to get the response from RemoteAndroid, especially when doing the location name lookup, this is not going to work.  So I'm now doing it in good old Perl instead.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2008208359544969557?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2008208359544969557/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/05/not-using-google-app-engine.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2008208359544969557'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2008208359544969557'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/05/not-using-google-app-engine.html' title='Not using Google App Engine'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7764161386773230961</id><published>2009-04-24T08:58:00.003+02:00</published><updated>2009-04-24T09:11:51.749+02:00</updated><title type='text'>I'm working on RemoteAndroid now</title><content type='html'>I think &lt;a href="http://l6n.org/android/remand.shtml"&gt;RemoteAndroid&lt;/a&gt; is a useful tool but it requires a bit of extra effort for people to use it.  I made some sample pages to demonstrate it but that's still too much effort.  So I'm working on a nice user-friendly web front-end for it.  I'm using this as an excuse to try out &lt;a href="http://code.google.com/appengine/docs/java/"&gt;Google App Engine for Java&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I also noticed that the next version of the Android SDK (1.5) &lt;a href="http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html"&gt;prevents apps from controlling GPS&lt;/a&gt; like RemoteAndroid does.  I suspect it will also prevent me setting airplane mode.&lt;br /&gt;&lt;br /&gt;Related to both of those points, and something that's been on my TODO list for a while, I'll change the request parameters to be able to query the settings as well as controlling them.  Expect an update to the app soon, followed by an announcement of the web front-end.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7764161386773230961?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7764161386773230961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/04/im-working-in-remoteandroid-now.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7764161386773230961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7764161386773230961'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/04/im-working-in-remoteandroid-now.html' title='I&apos;m working on RemoteAndroid now'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-2066709860057748658</id><published>2009-04-22T14:06:00.003+02:00</published><updated>2009-04-22T14:15:33.855+02:00</updated><title type='text'>What's next for MySpeed?</title><content type='html'>Having just released the version of MySpeed with trails, what I'm going to work on next is allowing MySpeed to run in the background.  The way it currently works, as soon as you move away from MySpeed to another application MySpeed stops working - no more camera alerts, no more trails recorded.  I think it would be useful if those features continued to work when you're using another application.&lt;br /&gt;&lt;br /&gt;I'll make it an option though because MySpeed uses quite a bit of battery power so you won't want it running all the time.  Or maybe I'll do a dashboard type thing where you can start and stop it.  I already added the Exit option, so maybe it's okay to just keep running until you stop it.&lt;br /&gt;&lt;br /&gt;As with all features, I'd like to hear from you, the user, as to what you'd like to see.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-2066709860057748658?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/2066709860057748658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/04/whats-next-for-myspeed.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2066709860057748658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/2066709860057748658'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/04/whats-next-for-myspeed.html' title='What&apos;s next for MySpeed?'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8888043849745994396.post-7129167305137784231</id><published>2009-04-22T13:53:00.004+02:00</published><updated>2009-04-22T14:03:33.741+02:00</updated><title type='text'>MySpeed 1.0.1 alpha</title><content type='html'>Today I released the second version of MySpeed.  This is still an alpha - it seems to work fine, but the reason I'm calling it alpha is because it basically does what it's supposed to do, but I will most likely make some more significant changes to make it more user-friendly.&lt;br /&gt;&lt;br /&gt;The big change with this version is trails.  You can record everywhere you've been and see where you were and what speed you were doing at all times.  For a full list of changes see the &lt;a href="http://dev.l6n.org/android/myspeed.shtml"&gt;release notes&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8888043849745994396-7129167305137784231?l=neil-and.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://neil-and.blogspot.com/feeds/7129167305137784231/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://neil-and.blogspot.com/2009/04/myspeed-101-alpha.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7129167305137784231'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8888043849745994396/posts/default/7129167305137784231'/><link rel='alternate' type='text/html' href='http://neil-and.blogspot.com/2009/04/myspeed-101-alpha.html' title='MySpeed 1.0.1 alpha'/><author><name>Neil Boyd</name><uri>https://profiles.google.com/100158287627096174197</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-_GJCJ3il6lQ/AAAAAAAAAAI/AAAAAAAAH2o/v_Ub6jNrbBU/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry></feed>
