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

<channel>
	<title>Shantanu's Technophilic Musings &#187; Software</title>
	<atom:link href="http://tech.shantanugoel.com/category/software/feed" rel="self" type="application/rss+xml" />
	<link>http://tech.shantanugoel.com</link>
	<description>Shantanu's Gadgets, Gizmos, Hacks, Tips, Tricks, Technology...and your kitchen sink</description>
	<lastBuildDate>Wed, 05 Oct 2011 20:23:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Adding Lyrics to SharkZapper for Grooveshark</title>
		<link>http://tech.shantanugoel.com/2011/09/23/adding-lyrics-to-sharkzapper-for-grooveshark.html</link>
		<comments>http://tech.shantanugoel.com/2011/09/23/adding-lyrics-to-sharkzapper-for-grooveshark.html#comments</comments>
		<pubDate>Fri, 23 Sep 2011 09:12:06 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Hack]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[chrome extension]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google chrome]]></category>
		<category><![CDATA[grooveshark]]></category>
		<category><![CDATA[lyrics]]></category>
		<category><![CDATA[music]]></category>
		<category><![CDATA[sharkzapper]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=357</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I bet all of you know about grooveshark, the awesome music service. And sharkzapper is a cool chrome extension that puts the control and information about anything playing in your grooveshark chrome tab into a little button on the address bar. It is a very good extension but I felt that what it was missing <p>Continue reading <a href="http://tech.shantanugoel.com/2011/09/23/adding-lyrics-to-sharkzapper-for-grooveshark.html">Adding Lyrics to SharkZapper for Grooveshark</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I bet all of you know about grooveshark, the awesome music service. And sharkzapper is a cool chrome extension that puts the control and information about anything playing in your grooveshark chrome tab into a little button on the address bar. It is a very good extension but I felt that what it was missing was lyrics. Before I could comment on the extension&#8217;s chrome market page, I noticed that it has a github repository. &#8220;Open Source&#8221;, oh joy. So, I forked the repository and after some hacking around, I&#8217;ve now added support for automatic searching and fetching of the currently playing song into the sharkzapper popup window and it updates itself whenever the song changes.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>What was even cooler that I learnt a bit about using YQL in the process <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>I&#8217;ve sent in a pull request to the author of the extension to the original author of the extension to merge this code. In the meanwhile, if you would like to try this out, you can hit up my <strong><a title="Shantanu's repository for sharkzapper with lyrics" href="https://github.com/shantanugoel/sharkzapper">github repository</a></strong>, download the code and install into chrome by enabling developer mode and choosing &#8220;Load unpacked extension&#8221;.</p>
<p>Happy listening <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2011/09/23/adding-lyrics-to-sharkzapper-for-grooveshark.html">Adding Lyrics to SharkZapper for Grooveshark</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2011/09/23/adding-lyrics-to-sharkzapper-for-grooveshark.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setup Call Recording With Android App Tasker On Nexus One</title>
		<link>http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html</link>
		<comments>http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html#comments</comments>
		<pubDate>Fri, 24 Sep 2010 10:01:16 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[android apps]]></category>
		<category><![CDATA[android call recorder]]></category>
		<category><![CDATA[android tasker]]></category>
		<category><![CDATA[nexus one call recorder]]></category>
		<category><![CDATA[tasker]]></category>
		<category><![CDATA[tasker call recorder]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I wanted to record calls on my Android phone (Nexus one). The easy way would have been to download an app but I like tinkering. And given that I recently bought Tasker, android’s very own swiss knife, I thought I should give it a run. After just an hour I was able to create my <p>Continue reading <a href="http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html">Setup Call Recording With Android App Tasker On Nexus One</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I wanted to record calls on my Android phone (Nexus one). The easy way would have been to download an app but I like tinkering. And given that I recently bought <a rel="external nofollow" href="http://tasker.dinglisch.net/">Tasker</a>, android’s very own swiss knife, I thought I should give it a run. After just an hour I was able to create my very own call recorder (some time went into trial and error with things as this was my first major task with tasker and also some things didn’t work with nexus one, which I will note below). I’ll outline the process to set it up here in as much detail as possible and will also provide the profiles. Please note that I made this setup for nexus one but it should work on pretty much any android phone and, in fact, it might work even better on your phone by making a few tweaks that I will outline as Nexus one doesn’t allow jacking into the call streams directly but your phone might.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>So, let’s begin. My visioned scenario is like this:</p>
<p>1. When you start a call (incoming or outgoing), i.e., when both the parties have picked up the phone, a notification should appear in the status bar.</p>
<p>2. Clicking on this notification should start recording the call. It should also give way to another notification now.</p>
<p>3. This new notification should stop the call recording when clicked.</p>
<p>4. If you don’t stop the call recording, the recording should automatically stop when the call ends.</p>
<p>To achieve the steps mentioned above, you will have to create “4” profiles in tasker. The xml files for these profiles are provided in a zip at the end of this article that you can download and import into tasker directly. If you want to understand more about whats going on, here are the details of each profile so that you can understand and modify them according to your needs. These profiles are:</p>
<p><span id="more-303"></span></p>
<p><strong><span style="text-decoration: underline;">Profile 1. Call Started</span></strong></p>
<p>Tasker description:</p>
<p>Profile: Call started<br />
Event: Phone Offhook<br />
Enter: 11<br />
Execute, Abort New Task<br />
A0: Variable Clear [ Name:%RECORDING ]<br />
A1: Notify [ Title:Record Call Text: Icon: Number: Permanent: ]</p>
<p><strong>Notes:</strong> None</p>
<p><strong><span style="text-decoration: underline;">Profile 2. Record Call</span></strong></p>
<p>Tasker description:</p>
<p>Profile: Record call<br />
Event: Notification Click<br />
Enter: Record Call<br />
Execute, Abort New Task<br />
A0: Notify Cancel [ Title:Record Call Warn Not Exist: ]<br />
A1: Variable Set [ Name:%RECORDING To:1 Do Maths: Append: ]<br />
A2: In-Call Volume [ Level:5 Display: Sound: ]<br />
A3: Speakerphone [ Set:On ]<br />
A4: Flash [ Text:Started Recording Long: ]<br />
A5: Notify [ Title:Stop Record Call Text: Icon: Number: Permanent: ]<br />
A6: Record Audio [ File:shantz/call-%CNUM-%CDATE-%CTIME Source:Microphone MaxSize: ]</p>
<p><strong>Notes: </strong>Note the steps A2, A3 and A6. Basically Nexus one has a limitation that you cannot record directly from the call streams. So, I’m doing the recording from the microphone and this works best if the phone is in speakerphone mode. So, I’m turning up the call volume and setting speakerphone mode in A2 and A3 respectively. You can try tweaking these 2 steps (having different call volumes and not engaging speakerphone mode and you might have passable results without doing these as well). Also, try using “Call”, “Incoming Call”, “Outgoing Call” etc as sources in step A6 instead of microphone to check if your phone supports direct call stream recording. If it does, then you will have excellent recording quality and you can also remove steps A2 and A3.</p>
<p><strong><span style="text-decoration: underline;">Profile 3. Stop Record Call</span></strong></p>
<p>Tasker description:</p>
<p>Profile: Stop record call<br />
Event: Notification Click<br />
Enter: Stop Record Call<br />
Execute, Abort New Task<br />
A0: Record Audio Stop [ ]<br />
A1: Notify Cancel [ Title:Record Call Warn Not Exist: ]<br />
A2: Notify Cancel [ Title:Stop Record Call Warn Not Exist: ]<br />
A3: Flash [ Text:Stopped Recording Long: ]<br />
A4: Variable Clear [ Name:%RECORDING ]<br />
A5: Speakerphone [ Set:Off ]</p>
<p><strong>Notes: </strong>None</p>
<p><strong><span style="text-decoration: underline;">Profile 4. Call Complete</span></strong></p>
<p>Tasker description:</p>
<p>Profile: Call complete<br />
Event: Phone Idle<br />
Enter: Stop Record Call<br />
Execute, Abort New Task<br />
A0: Record Audio Stop [ ]<br />
A1: Notify Cancel [ Title:Record Call Warn Not Exist: ]<br />
A2: Notify Cancel [ Title:Stop Record Call Warn Not Exist: ]<br />
A3: Flash [ Text:Stopped Recording Long: ]<br />
A4: Variable Clear [ Name:%RECORDING ]<br />
A5: Speakerphone [ Set:Off ]</p>
<p><strong>Notes: </strong>None</p>
<p><strong><a title="Android Tasker Call Record Profiles" href="http://tech.shantanugoel.com/resources/downloads/android-tasker-call-record-profiles.zip">Download: Android Tasker Call Record Profiles</a></strong></p>
<p>And we are done, you can download the profile xml files in the zip file linked here.</p>
<p>Let me know if you need any clarifications on the above steps. I would also love to get your suggestions to make this better or if you have any of your own tasker tips and tricks. I’ll be posting more of my tasker adventures soon <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html">Setup Call Recording With Android App Tasker On Nexus One</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/09/24/setup-call-recording-android-app-tasker-nexus-one.html/feed</wfw:commentRss>
		<slash:comments>48</slash:comments>
		</item>
		<item>
		<title>Clearing the FUD around Ubuntu Application Review Process</title>
		<link>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html</link>
		<comments>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html#comments</comments>
		<pubDate>Tue, 21 Sep 2010 19:44:24 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FUD]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[ubuntu application review process]]></category>
		<category><![CDATA[ubuntu extras]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>An application review process was announced today for getting your apps into Ubuntu “extras” repository. But like most other announcements of new things, this one was met as well with as much criticism as the praise it got. A lot of the criticism is FUD though, although mostly unintentional and caused by ignorance of some <p>Continue reading <a href="http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html">Clearing the FUD around Ubuntu Application Review Process</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>An application review process was <a title="Ubuntu Application Review Process Announcement" href="http://www.jonobacon.org/2010/09/20/announcing-the-ubuntu-application-review-process/" rel="external nofollow" target="_blank">announced today</a> for getting your apps into Ubuntu “extras” repository. But like most other announcements of new things, this one was met as well with as much criticism as the praise it got. A lot of the criticism is FUD though, although mostly unintentional and caused by ignorance of some facts behind it. I’ll try to address some of these concerns here to the best of my knowledge from what I’ve been reading over the past some time about this development.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Before we begin, here are the terms listed out for an app to be eligible for the new repository:</p>
<blockquote><p>only new applications that are not present in an existing official Ubuntu repository (such as main/universe) are eligible in this process (e.g a new version of an application in an existing official repository is not eligible). Also no other software can depend on the application being submitted (e.g. development libraries are not eligible), only executable applications (and content that is part of them) are eligible, and not stand-alone content, documentation or media, and applications must be Open Source and available under an OSI approved license.</p>
</blockquote>
<p>  <span id="more-302"></span>
<p>Now, the concerns that are floating around are many. Some are genuine queries and many are straight attacks dishing out evil conspiracy theories <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> . The concerns can be summarised as:</p>
<ul>
<li>Closed source and paid apps are being given the boot by Ubuntu. They should have allowed them. </li>
<li>Why can’t we have updates for existing apps in this repository? </li>
<li>Why only standalone apps are allowed. Libraries are equally important. </li>
<li>Why should the software be packaged for /opt. This involves more headache for the developers. </li>
<li>Standalone media and content should have been allowed. </li>
</ul>
<p>Well, to answer these, all you need to understand is the “premise” and concept behind the repository where this software will go and the reasoning behind the review process will unfold itself. The repository governed by this review process is meant to be for “maintainable” pieces of software that would generally go to other universe/main etc repos but couldn’t make it into this release of Ubuntu because the developers were a bit late. This process and feature now gives a chance to the developers to still get their app to public instead of waiting for next release cycle and also allows end-users to use new apps without having to upgrade their version of Ubuntu . There is a separate “partners” repository where closed source and paid apps can go so there is no conflict there.</p>
<p>Only allowing standalone apps and not updates and dependencies is so obvious. It would soon go out of hand exponentially if you allowed dependencies since one thing needs another library updated, then that would need another and yet another and so on and before you know it, you would be back at square one, that is upgrading to the next version of Ubuntu itself.</p>
<p>The only thing that I found out of the place was not allowing standalone content but probably they didn’t allow it because such content can be had by end users without a repo easily and would ease the burden of repo maintainers and reviewers by lessening the entries.</p>
<p>I’d also like to point out that this is just a beginning and the process (and the people behind it) would definitely be maturing from all the feedback they get from the community. Think of it as an alpha release <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . Jono Bacon summed it up very nicely in this comment of his that he made elsewhere:</p>
<blockquote><p>this is an *experimental* process; it is a work in progress, it will evolve, and the kinks will be ironed out. The process was approved by the Ubuntu Technical Board who are all seasoned Ubuntu developers (Matt Zimmerman, Colin Watson, Martin Pitt, Mark Shuttleworth, and Kees Cook), and much of what you refer to as &quot;restrictions&quot; were requested by them for the purpose of delivering a nimble process that is stable and secure.</p>
<p>To be clear: you can think of this process as a &quot;light-weight&quot; equivalent to our traditional MOTU development process; it is intended to provide a method in which app devs can get content in Ubuntu, whereas our traditional development processes have be orientated around the needs of Operating System integrators.</p>
<p>As such, this is a first step; sure it is not perfect, but I would like to invite you to make it better; I think this would be a more valuable contribution than just ranting about it on here. Our goal is to make Ubuntu better and to make it more attractive to app developers, and this process will evolve and improve (as was made clear throughout the discussion of this).</p>
<p>&#160;</p>
</blockquote>
<p><font style="background-color: #eff7f7" face="Georgia">So, what do you think about it? I, for one, am pretty excited..</font></p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html">Clearing the FUD around Ubuntu Application Review Process</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/09/22/clearing-the-fud-around-ubuntu-application-review-process.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Camera LED As Flashlight on Non-Rooted Android Phones</title>
		<link>http://tech.shantanugoel.com/2010/07/30/camera-led-flashlight-non-rooted-android-phones.html</link>
		<comments>http://tech.shantanugoel.com/2010/07/30/camera-led-flashlight-non-rooted-android-phones.html#comments</comments>
		<pubDate>Fri, 30 Jul 2010 09:31:08 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[android apps]]></category>
		<category><![CDATA[android led flashlight without rooting]]></category>
		<category><![CDATA[camera led flashlight non-rooted android]]></category>
		<category><![CDATA[nexus one]]></category>
		<category><![CDATA[nexus one flashlight]]></category>
		<category><![CDATA[nexus one flashlight without rooting]]></category>
		<category><![CDATA[quick settings android]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=292</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>We all know that Android does not allow the camera LED to be controlled directly from apps and hence, you cannot use the camera LED as a Torch or Flashlight unless you are rooted. There are many flashlight apps on the Android Market Place but none of them will work for you if you don&#8217;t <p>Continue reading <a href="http://tech.shantanugoel.com/2010/07/30/camera-led-flashlight-non-rooted-android-phones.html">Camera LED As Flashlight on Non-Rooted Android Phones</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>We all know that Android does not allow the camera LED to be controlled directly from apps and hence, you cannot use the camera LED as a Torch or Flashlight unless you are rooted. There are many flashlight apps on the Android Market Place but none of them will work for you if you don&#8217;t have a rooted phone. BUT this changed recently. I use a brilliant app called &#8220;quick settings&#8221; which keeps an icon in the notification bar and I can pull it down and change any settings without leaving other apps. It has a flashlight function but so far it used to work by turning on the screen with a white screen, which was a less than ideal solution. I upgraded to the latest version a few days ago (1.9.4 p1). While messing around with the settings, I wandered across the flashlight settings which allows you to choose what kind of flashlight you want. Now, I&#8217;m not sure whether this setting was present earlier or not but I decided to give it a try and chose LED instead of screen (Screenshot below):<br />
<a href="http://tech.shantanugoel.com/uploads/quick-settings-flash-android-settings.png"><img src="http://tech.shantanugoel.com/uploads/quick-settings-flash-android-settings-thumb.png" alt="Android Quick Settings Flashlight LED Settings" title="Android Quick Settings Flashlight LED Settings" /></a></p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Once done, I went back to the main screen and pressed the flashlight icon in the top right (Screen shot below) and voila! my camera LED switched on. I&#8217;m a happy camper now as this is a life saver many times. Try this out for yourself by searching for &#8220;Quick Settings&#8221; in the market and let me know if it works on your phone too (mine is a nexus one).</p>
<p><a href="http://tech.shantanugoel.com/uploads/quick-settings-flash-android-main-screen.png"><img src="http://tech.shantanugoel.com/uploads/quick-settings-flash-android-main-screen-thumb.png" alt="Android Quick Settings" title="Android Quick Settings" /></a></p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/07/30/camera-led-flashlight-non-rooted-android-phones.html">Camera LED As Flashlight on Non-Rooted Android Phones</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/07/30/camera-led-flashlight-non-rooted-android-phones.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Firefly / sqlite error &#8220;unable to open database file&#8221; Solution</title>
		<link>http://tech.shantanugoel.com/2010/07/26/firefly-sqlite-error-unable-to-open-database-file-solution.html</link>
		<comments>http://tech.shantanugoel.com/2010/07/26/firefly-sqlite-error-unable-to-open-database-file-solution.html#comments</comments>
		<pubDate>Mon, 26 Jul 2010 18:11:40 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Asus]]></category>
		<category><![CDATA[Asus WL-500W]]></category>
		<category><![CDATA[daap]]></category>
		<category><![CDATA[daap protocol]]></category>
		<category><![CDATA[firefly]]></category>
		<category><![CDATA[itunes daap media server]]></category>
		<category><![CDATA[mt-daapd]]></category>
		<category><![CDATA[sqlite]]></category>
		<category><![CDATA[sqlite error unable to open database file]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=291</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Recently I came across a weird error while trying to run firefly itunes server (mt-daapd) on my router (Asus wl-500w). It had something to do with sqlite and gave a vague message &#8220;Unable to open database file&#8221;. After going bonkers for a short time, I solved it and this is how.</p> <p>One of my hard <p>Continue reading <a href="http://tech.shantanugoel.com/2010/07/26/firefly-sqlite-error-unable-to-open-database-file-solution.html">Firefly / sqlite error &#8220;unable to open database file&#8221; Solution</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Recently I came across a weird error while trying to run firefly itunes server (mt-daapd) on my router (Asus wl-500w). It had something to do with sqlite and gave a vague message &#8220;Unable to open database file&#8221;. After going bonkers for a short time, I solved it and this is how.</p>
<p>One of my hard disks crashed recently and unfortunately it was the one I had connected to my router to serve media to me all over the house (through PS3/laptop) or when I travel (through laptop/phone). I had all the data backed up but somehow didn&#8217;t preserve the firefly server. I rebuilt the server from source using my <a title="Compiling Latest Firefly mt-daapd for asus wl-500w" href="http://tech.shantanugoel.com/2009/07/03/compiling-latest-firefly-mt-daapd-asus-wl-500w.html" target="_blank">own guide</a> (Thank God I did it. I wouldn&#8217;t have been able to preserve my sanity finding all that out the hard way again.). But after doing all the installation and reconfiguration, it gave me a weird error &#8220;unable to open database file&#8221; every time and exited. I checked the permissions on the songs3.db file (in /opt/var/cache/mt-daapd for me) and made it writable by all but the issue persisted. I changed its ownership to the user under which firefly was running but the issue was still there. Finally I found that the server (or maybe its an sqlite thing) was trying to create a temp file in the cache directory for the transactions and since the user with which it was started, didn&#8217;t own the directory it wasn&#8217;t able to create the file in it.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>So, the fix: I did a &#8220;chown &lt;username&gt; /opt/var/cache/mt-daapd&#8221; on it and voila! the problem was fixed. I am a happy man now since I own a new android phone since last time and now able to stream all my music to my phone through itunes (daap protocol) server over an ssh tunnel <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/07/26/firefly-sqlite-error-unable-to-open-database-file-solution.html">Firefly / sqlite error &#8220;unable to open database file&#8221; Solution</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/07/26/firefly-sqlite-error-unable-to-open-database-file-solution.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Android App Wi-Fi Keep Alive updated to 1.4.1</title>
		<link>http://tech.shantanugoel.com/2010/07/22/android-app-wi-fi-keep-alive-updated-1-4-0.html</link>
		<comments>http://tech.shantanugoel.com/2010/07/22/android-app-wi-fi-keep-alive-updated-1-4-0.html#comments</comments>
		<pubDate>Thu, 22 Jul 2010 16:58:07 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[android apps]]></category>
		<category><![CDATA[android wi-fi sleep policy]]></category>
		<category><![CDATA[Pandora stops on sleep android]]></category>
		<category><![CDATA[Wi-Fi Keep Alive]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=289</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Update: Made a minor update for a small bug that can make wi-fi keep reconnecting in quick succession.</p> <p>Pushed out a new update to my Android App Wi-Fi Keep Alive today. This update brings in another work around for the issue where the wi-fi is alive on the phone and it is also connected to <p>Continue reading <a href="http://tech.shantanugoel.com/2010/07/22/android-app-wi-fi-keep-alive-updated-1-4-0.html">Android App Wi-Fi Keep Alive updated to 1.4.1</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p><strong>Update:</strong> Made a minor update for a small bug that can make wi-fi keep reconnecting in quick succession.</p>
<p>Pushed out a new update to my Android App <a title="Android App Wi-Fi Keep Alive" href="http://tech.shantanugoel.com/projects/android/wi-fi-keep-alive" target="_self">Wi-Fi Keep Alive</a> today. This update brings in another work around for the issue where the wi-fi is alive on the phone and it is also connected to the network but is somehow unable to send/receive any packets to the network. The new work around will automatically re-associate your phone with the wi-fi router if it detects such a situation. This seems to make it work properly again for sometime. When it fails again, the workaround kicks in automatically again. This is not an ideal &#8220;fix&#8221; as such because streaming apps like Pandora radio etc might have a hiccup because of this but it is unavoidable as of now and atleast the notifications for mails and other things etc will work fine because this state stops even the mobile data network from taking over since the phone perceives that wi-fi is connected but is not working actually.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>The other things include support for small screen devices like Xperia X10 mini, some optimizations for size and speed, some icon sizes and UI tweaks for compatibility with different screen sizes and android versions. Please try it out from the market as usual and let me know how it goes. You can find the details and QR code for downloading etc here: <a title="Android App Wi-Fi Keep Alive" href="http://tech.shantanugoel.com/projects/android/wi-fi-keep-alive" target="_self"><strong>Wi-Fi Keep Alive</strong></a></p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/07/22/android-app-wi-fi-keep-alive-updated-1-4-0.html">Android App Wi-Fi Keep Alive updated to 1.4.1</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/07/22/android-app-wi-fi-keep-alive-updated-1-4-0.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android App: Wi-Fi Keep Alive Updated to 1.2.0</title>
		<link>http://tech.shantanugoel.com/2010/07/04/android-app-wi-fi-keep-alive-updated-to-1-2-0.html</link>
		<comments>http://tech.shantanugoel.com/2010/07/04/android-app-wi-fi-keep-alive-updated-to-1-2-0.html#comments</comments>
		<pubDate>Sat, 03 Jul 2010 22:46:36 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[android apps]]></category>
		<category><![CDATA[android wi-fi sleep policy]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[Wi-Fi Keep Alive]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=283</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Just finished uploading the new version 1.2.0 of my android app Wi-Fi Keep Alive to the Android market. This version has a lot of optimizations and also a few workarounds to overcome the issues few guys were facing with Android&#8217;s in-built handling of wi-fi sleep policies. Please check out the Wi-Fi Keep Alive Home Page <p>Continue reading <a href="http://tech.shantanugoel.com/2010/07/04/android-app-wi-fi-keep-alive-updated-to-1-2-0.html">Android App: Wi-Fi Keep Alive Updated to 1.2.0</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Just finished uploading the new version 1.2.0 of my android app <a title="Wi-Fi Keep Alive" href="http://tech.shantanugoel.com/projects/android/wi-fi-keep-alive" target="_self">Wi-Fi Keep Alive</a> to the Android market. This version has a lot of optimizations and also a few workarounds to overcome the issues few guys were facing with Android&#8217;s in-built handling of wi-fi sleep policies. Please check out the <a title="Android Wi-Fi Keep Alive" href="http://tech.shantanugoel.com/projects/android/wi-fi-keep-alive" target="_self">Wi-Fi Keep Alive Home Page</a> for more details and download links etc.</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>Changes done in this version:</p>
<p>* Added workarounds to take care of sleep policies not working on some phones</p>
<p>* Optimized the code a bit for faster operations</p>
<p>* Added Configuration screens to widgets (pops up whenever widget is added)</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/07/04/android-app-wi-fi-keep-alive-updated-to-1-2-0.html">Android App: Wi-Fi Keep Alive Updated to 1.2.0</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/07/04/android-app-wi-fi-keep-alive-updated-to-1-2-0.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android App: Wi-Fi Keep Alive</title>
		<link>http://tech.shantanugoel.com/2010/06/28/android-app-wi-fi-keep-alive.html</link>
		<comments>http://tech.shantanugoel.com/2010/06/28/android-app-wi-fi-keep-alive.html#comments</comments>
		<pubDate>Mon, 28 Jun 2010 15:25:48 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[android apps]]></category>
		<category><![CDATA[downloads]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[Wi-Fi Keep Alive]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/?p=281</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I just wrote my second Android App. This again was to scratch an itch of mine but it seems to have become a bit popular already (My first app &#8220;Quick Sync Settings&#8221; did around 400 downloads in 20 days but this one has already surpassed that in less than one day). This app basically allows <p>Continue reading <a href="http://tech.shantanugoel.com/2010/06/28/android-app-wi-fi-keep-alive.html">Android App: Wi-Fi Keep Alive</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>I just wrote my second Android App. This again was to scratch an itch of mine but it seems to have become a bit popular already (My first app &#8220;<a title="Android Quick Sync Settings App" href="http://tech.shantanugoel.com/projects/android/quick-sync-settings" target="_blank">Quick Sync Settings</a>&#8221; did around 400 downloads in 20 days but this one has already surpassed that in less than one day). This app basically allows you to change the wi-fi sleep policy on android so that you can keep your wi-fi connected even if the phone goes to sleep (i.e. screen turns off). What&#8217;s more is that I&#8217;ve added a widget to it so you don&#8217;t even have to go into the app. Just tap on the widget to cycle through the settings. Please try it out here: <a title="Android Wi-Fi Keep Alive App" href="http://tech.shantanugoel.com/projects/android/wi-fi-keep-alive" target="_self">Android Wi-Fi Keep Alive</a> and let me know if you like it <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/06/28/android-app-wi-fi-keep-alive.html">Android App: Wi-Fi Keep Alive</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/06/28/android-app-wi-fi-keep-alive.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Froyo And Nexus One: Everything We Know</title>
		<link>http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html</link>
		<comments>http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html#comments</comments>
		<pubDate>Sun, 23 May 2010 17:44:18 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Phones]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[froyo]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[googleio]]></category>
		<category><![CDATA[nexus one]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>This is an effort from my side to consolidate everything about Android Froyo with respect to Nexus One. It is mainly concentrated towards listing the features/fixes that we have seen in Froyo that weren&#8217;t announced in Google I/O, things that work with nexus one, things that don&#8217;t and possible fixes/workarounds known, what the announced features <p>Continue reading <a href="http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html">Android Froyo And Nexus One: Everything We Know</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>This is an effort from my side to consolidate everything about Android Froyo with respect to Nexus One. It is mainly concentrated towards listing the features/fixes that we have seen in Froyo that weren&#8217;t announced in Google I/O, things that work with nexus one, things that don&#8217;t and possible fixes/workarounds known, what the announced features actually feel like in real use etc.<strong> Will keep updating this post as I get more info, get more fixes, etc. Please do let me know if I&#8217;ve missed something or there is some new development that should be updated here.</strong></p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p><strong>UPDATED: </strong></p>
<p><strong>27-MAY-2010 (Added things missing since Eclair and few other notes)</strong></p>
<p><strong>25-MAY-2010 (Added market missing apps fix, 802.11n and other features)</strong></p>
<p><strong>24-MAY-2010 (Added more un-announced features/fixes/changes)</strong></p>
<p><strong>To start with, just a quick recap of things that were announced and their look/feel/working in real use (First is the announced feature and then after &quot;:&quot; is the effect that we see)</strong></p>
<table border="1" cellspacing="2" cellpadding="0">
<tbody>
<tr>
<td>
<p align="left"><strong>Feature/Fix</strong></p>
</td>
<td>
<p align="left"><strong>Real Effects seen by us</strong></p>
</td>
<td>
<p align="left"><strong>Remarks</strong></p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">JIT for Dalvik JVM</p>
</td>
<td>
<p align="left">Apps are quite fast, visible difference animation effects, scrolling, games etc</p>
</td>
<td>
<p align="left">None</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Better Exchange support with calendar sync/GAL /remote wipe/account-auto-discovery/administation</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">Exchange support still not upto the mark. e.g. No support for selective folder sync, subfolders are not synced automatically, no phone number/location for GAL contacts, no “move to folder”, no search, etc.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Backup Application data/settings/history in cloud</p>
</td>
<td>
<p align="left">Yet to experience</p>
</td>
<td>
<p align="left">I&#8217;ve enabled the settings for this but haven&#8217;t switched to another ROM yet or figured out how to test it in some other way.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Cloud Messaging to activate intents</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">very cool feature. Try out this chrome extension to send links from chrome to your phone: <a href="http://code.google.com/p/chrometophone/" target="_blank">Chrome2Phone</a></p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">USB Tethering and Portable Wireless Hotspot</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">Real skin-saver. Works great and easily.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Javascript V8 Engine for Android Browser</p>
</td>
<td>
<p align="left">Much faster javascript execution</p>
</td>
<td>
<p align="left">Much better browsing experience noted.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">HTML5 support/Device Access (Camera/Accelerometer etc) through Browser</p>
</td>
<td>
<p align="left">Work In Progress. See Remarks</p>
</td>
<td>
<p align="left">Contrary to what many people tell you, this is still not there. HTML5 support is an ongoing thing and device access through browser would be present in Gingerbread (Next Android iteration, supposedly 3.0)</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Better Voice Input Integration</p>
</td>
<td>
<p align="left">&quot;Seems&quot; better.</p>
</td>
<td>
<p align="left">Now, I don&#8217;t have any tangible means to measure this but it seems to be working relatively better and it even seems to understand my non-US accent much better.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Flash 10.1 beta support</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">Almost every flash functionality in all sites I visited work ok. Please note that you need to install Flash from market as it doesn&#8217;t come &quot;built-in&quot;. Just search for &quot;Adobe&quot; in market.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Install apps on SD card</p>
</td>
<td>
<p align="left">Not tested.</p>
</td>
<td>
<p align="left">This feature requires support from apps to integrate this and currently no apps support it. There is a command that you can run from adb shell &quot;adb shell pm setInstallLocation 2&quot; but it will cause &quot;all&quot; your apps to install to the card plus users report problems on missing apps as SD card is not available immediately at boot up.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Better global search integration for apps</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">Now, apps can allow search to search within their data. Right now the official twitter app supports this and you can search your timeline from the main android search itself.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Update all apps in one click/automatic updates</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">None.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Stream music from PC to phone</p>
</td>
<td>
<p align="left">Yet to test.</p>
</td>
<td>
<p align="left">None. As pointed out by Hugo, it is not clear yet that this is supposed to be part of Froyo or GingerBread.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Improved crash reporting to developers</p>
</td>
<td>
<p align="left">Works as advertised</p>
</td>
<td>
<p align="left">Really useful to the developers as it sends complete report about the environment and stack trace etc.</p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Purchase music/apps on android market and push directly to device Over The Air</p>
</td>
<td>
<p align="left">Yet to test</p>
</td>
<td>
<p align="left">New market website that allows this hasn&#8217;t appeared yet. As pointed out by Hugo, it is not clear yet that this is supposed to be part of Froyo or GingerBread.</p>
</td>
</tr>
</tbody>
</table>
<p><strong>Now, we move on to things that weren&#8217;t announced but we found them in the updates. This may be because these pieces were too small or specific to nexus one to have warranted a place in the Google I/O keynote.</strong></p>

<p> <span id="more-269"></span>
</p>
<table border="1" cellspacing="2" cellpadding="0">
<tbody>
<tr>
<td>
<p align="left"><strong>Feature/Fix</strong></p>
</td>
<td>
<p align="left"><strong>Remarks</strong></p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Erratic/Crazy Touchscreen behaviour fixes</p>
</td>
<td>
<p align="left">This is about the erratic behaviour of the touchscreen that sometimes all the touches were being registered at the wrong places and one had to tap twice on the power button to fix it. So far, it seems that this has been fixed.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Multi-touch fixes</p>
</td>
<td>
<p align="left">This seems to be a hardware problem and there are no &quot;fixes&quot; to it as such but there seems to be a new touchscreen API in the 2.2 Froyo SDK that google is encouraging developers to use to alleviate this issue somewhat by doing some filtering/scaling within the Android framework.</p>
</td>
</tr>
<tr>
<td>
<p align="left">SMS App fix</p>
</td>
<td>
<p align="left">The messaging app had a nagging issue that many times it showed the first few words of a text message as the sender instead of the actual number/sender. This seems to be fixed now.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Capacitive Touch Button fix</p>
</td>
<td>
<p align="left">Nexus one was quite famous for its mal-functioning cap-touch buttons that didn&#8217;t seem to register the touches of a user. We had to press slightly above them most times to register a touch. This seems to be fixed now and feels much better.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Multi-Color Trackball</p>
</td>
<td>
<p align="left">The nexus one trackball can now display multiple colors instead of just white. e.g. a nee facebook update received makes it glow blue <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</td>
</tr>
<tr>
<td>
<p align="left">Better Camera/Gallery Interface</p>
</td>
<td>
<p align="left">The new camera/gallery interface is just awesome and much easier to use. Feature wise I think the new options are focus settings, zoom settings and storage location quick switch, flash on during video recording for night video capture. I must also mention that auto-flash works much better now as earlier it used to almost always fire even in quite ample light but that maybe just me.</p>
</td>
</tr>
<tr>
<td>Bigger Camera Pics</td>
<td>Somehow the pics are a bit heavier in size. Earlier a max resolution, finest pic used to weigh around 900-950 kB for me but now they are around 1.09-1.1 MB</td>
</tr>
<tr>
<td>Keyboard Quick Access to numbers/punctuation</td>
<td>Now, you don’t need to switch to the number mode by pressing “123?” key to input number/punctutation. Just press anywhere on the keyboard and drag it towards the preview/suggestion bar upwards and two new rows will appear with numbers and punctuation.</td>
</tr>
<tr>
<td>Library Projects</td>
<td>This is something for the devs. Now, you can create library projects so that you can make a library and share it across your different apps. e.g. you can use same library of code for your paid and free versions, etc.</td>
</tr>
<tr>
<td>wi-fi n</td>
<td>yes, it supports 802.11n now <img src='http://tech.shantanugoel.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </td>
</tr>
<tr>
<td>End call with power button</td>
<td>You can enable this in accessibility settings</td>
</tr>
<tr>
<td>vcard support</td>
<td>Nexus one can now handle vcards that someone sends through sms or bluetooth for contact information</td>
</tr>
</tbody>
</table>
<p><strong>Now, on our list are things/apps that don&#8217;t work or issues that plague the new update. We will also be listing the workarounds/fixes if known for them.</strong></p>
<table border="1" cellspacing="2" cellpadding="0">
<tbody>
<tr>
<td>
<p align="left"><strong>Issues</strong></p>
</td>
<td>
<p align="left"><strong>Fix/Workaround/Remarks</strong></p>
<p align="left">
</td>
</tr>
<tr>
<td>
<p align="left">Seesmic app keeps giving &quot;Connection error&quot; with froyo</p>
</td>
<td>
<p align="left">Simple fix is to delete your existing account in seesmic. Setup a new account and uncheck &quot;Secure connection&quot; in advanced setup.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Swype doesn&#8217;t work</p>
</td>
<td>
<p align="left">Just uninstall swype and swype installer and download/install them again and it will work.</p>
</td>
</tr>
<tr>
<td>
<p align="left">Pure Calendar doesn&#8217;t work</p>
</td>
<td>
<p align="left">New versions have been released to make them work</p>
</td>
</tr>
<tr>
<td>
<p align="left">Android market doesn&#8217;t show a lot of apps</p>
</td>
<td>
<p align="left">As of now, android market is not showing a lot of paid/copy-protected apps on the market for froyo users. There is a workaround for root users available here: <a title="http://forum.xda-developers.com/showthread.php?t=687371" href="http://forum.xda-developers.com/showthread.php?t=687371">http://forum.xda-developers.com/showthread.php?t=687371</a></p>
</td>
</tr>
<tr>
<td>
<p align="left">Worse radio/3G performance</p>
</td>
<td>
<p align="left">Several users at modaco/xda-devs report worse performance with 3G. They say downgrading back to previous radio fixes this but try it at your own risk.</p>
</td>
</tr>
</tbody>
</table>
<p><strong>Things missing since previous versions (i.e. Eclair):</strong></p>
<p>(Thanks to Marc for suggestion)</p>
<table border="1" cellspacing="2" cellpadding="0" width="414">
<tbody>
<tr>
<td width="408">
<p align="left"><strong>Things missing</strong></p>
</td>
</tr>
<tr>
<td width="408">
<p align="left">No “.com” button on the default Android keyboard</p>
</td>
</tr>
</tbody>
</table>
<p><strong>The final part of this post is for things that were rumored to be in the Froyo update for nexus one but aren&#8217;t present:</strong></p>
<table border="1" cellspacing="2" cellpadding="0">
<tbody>
<tr>
<td>
<p align="left"><strong>Rumored Feature/fix </strong>(Not present in Nexus One Froyo Update)</p>
</td>
</tr>
<tr>
<td>
<p align="left">FM Radio Receiver</p>
</td>
</tr>
<tr>
<td>
<p align="left">FM Transmitter</p>
</td>
</tr>
</tbody>
</table>
<p>That&#8217;s it for now. This is a huge post and I must have missed out on a lot of things for sure. So, if you remember something that I have missed or something has changed over past few days after I wrote/updated this post, please do let me know in comments.</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html">Android Froyo And Nexus One: Everything We Know</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/05/23/android-froyo-nexus-one.html/feed</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Android Froyo Update File</title>
		<link>http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html</link>
		<comments>http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html#comments</comments>
		<pubDate>Sat, 22 May 2010 19:36:34 +0000</pubDate>
		<dc:creator>Shantanu Goel</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Phones]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[froyo]]></category>
		<category><![CDATA[nexus one]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html</guid>
		<description><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Just a quick post to tell you how to update your Nexus One to Android 2.2 Froyo immediately without waiting for google to send it to you OTA.</p> <p>Download this file from google&#8217;s servers: http://android.clients.google.com/packages/passion/signed-passion-FRF50-from-ERE27.1e519a24.zip</p> <p>After that just follow the below mentioned steps:</p> <p>1. Put it on your SD card and rename to update.zip</p> <p>2. <p>Continue reading <a href="http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html">Android Froyo Update File</a></p>]]></description>
			<content:encoded><![CDATA[<!-- Powered by Shantz WP Prefix Suffix. Tech Blog: http://tech.shantanugoel.com/ Secure Programming Blog: http://www.safercode.com/blog/ Blog: http://blog.shantanugoel.com/ --><p>Just a quick post to tell you how to update your Nexus One to Android 2.2 Froyo immediately without waiting for google to send it to you OTA.</p>
<p>Download this file from google&#8217;s servers: http://android.clients.google.com/packages/passion/signed-passion-FRF50-from-ERE27.1e519a24.zip</p>
<p>After that just follow the below mentioned steps:</p><!--test --><script type="text/javascript"><!--
google_ad_client = "ca-pub-7364296987674978";
/* 468x60, created 10/6/08 */
google_ad_slot = "0345781418";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
<p>1. Put it on your SD card and rename to update.zip</p>
<p>2. Power off then hold trackball and press power again to boot into recovery</p>
<p>3. Go to Bootloader -&gt; Recovery</p>
<p>4. Press power button + Vol. Increase</p>
<p>5. Apply the update</p>
<p style='border:thin dotted black; padding:3mm;'><a href="http://tech.shantanugoel.com/terms-of-use">©</a> <a href="http://tech.shantanugoel.com/">Shantanu Goel</a> | This article, titled <strong><a href="http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html">Android Froyo Update File</a></strong>, was originally published on <a href="http://tech.shantanugoel.com/">Shantanu's Technophilic Musings</a></p>
]]></content:encoded>
			<wfw:commentRss>http://tech.shantanugoel.com/2010/05/23/android-froyo-update.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

