Microsoft Outlook Preview available for Android

Microsoft Outlook is now available for Android as a preview in the Google Play Store. I just installed it on my Samsung Galaxy S3.  Here’s the “Add an Account” screen.  At first glance there doesn’t appear to be any integration of Outlook contacts with contacts in Android.

Hopefully they are working on that.

Microsoft Outlook for Android Preview

Microsoft Outlook for Android Preview

Here’s the link to the app on Google Play.  It’s hard to find just searching on Google Play as there are other similar apps from Microsoft such as Outlook.com and OWA for Android which are different applications!

iTunes web site and Google Chrome on Microsoft Windows – Part II

Ok, my first attempt (see my previous post on this) at this was a little “programmy” and “hacky“. It also appears that Apple changed the itmsCheck.js JavaScript code and no longer set the iTunesPresent cookie as they did before. Apple still doesn’t recognize Google Chrome as one of the browsers or platforms on which they will automatically attempt to load iTunes from web pages. To overcome this issue I searched for a Google Chrome extension that could be configured to use a Safari Macintosh User-Agent string whenever browsing a web page in the Apple.com domain. I found User-Agent Switcher for Chrome which did the trick! Below is a screenshot of the configuration screen for User-Agent Switcher. I added a setting telling the software to use the pre-configured Mac Safari user-agent string for any web page in the Apple.com domain.

I am now able to automatically have Chrome load iTunes whenever I click on iTunes Preview link such as the one below.

iTunes web site and Google Chrome on Microsoft Windows

Here’s proof that Apple’s iTunes web site doesn’t natively recognize Google Chrome for automatically launching the iTunes application from the iTunes web site. Below is a screen capture of the source code used by the iTunes web site to detect the presence of the iTunes software on the PC accessing the iTunes web site. The JavaScript function used to detect iTunes is called “iTunesDetected” and will only return TRUE if any of the following are true:

  • the browser’s user agent string contains the word “Macintosh”
  • the browser is Internet Explorer and the iTunes ActiveX component installed
  • the browser is Firefox and the iTunes Mozilla plugin is installed
  • an iTunes cookie named “iTunesPresent” set to true in the domain of the Apple web site visiting or in “.apple.com”

iTunes web site JavaScript that excludes Google Chrome

The $64 question now is what’s the best way to get the “iTunesPresent” cookie set in domain “.apple.com”.

My first thought was to configure Chrome to use a user agent string containing “Macintosh” and then launch iTunes from the iTunes web site once thereby setting the cookie.

Chrome using Macintosh/Safari User Agent String

I was perplexed when this didn’t work. Using the built-in debugger in Chrome I proceeded to set a break point in the iTunesDetected function and then single stepped through the function to see what was happening. Even thought I had set my user agent string to “Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_3; en-us) AppleWebKit/525.19 (KHTML, like Gecko) Version/3.2.1 Safari/525.19″ using the Chrome command line switch “–user-agent=” debugging showed me that “navigator.agentString” was still set to the default Chrome UAS.

navigator.userAgent

At this point I decided to take the sledgehammer approach. I navigated Chrome to the following url: http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewTop?id=25204&popId=30 and after receiving the error that iTunes wasn’t installed I set a break-point in the JavaScript that tested whether iTunes was “installed”.

itmsCheck.js

I then reloaded the page and after the breakpoint triggered, I changed “iTunesDetected()” to “true” and began to single step through the code. Once I entered function “its.cookies.setUnescaped” I proceeded to change “if (domain)” to “if (true)” and hard-coded the setting of domainString to ” domain=.apple” (see lines 216 and 217 below).

How to force creation of iTunesPresent cookie in .apple.com domain

I then let the script continue by pressing the run pause-run buttonbutton.

My PC now contains the iTunesPresent cookie in the “.apple.com” domain which now allows me to automatically launch iTunes from web pages on the iTunes web site using Google Chrome.

iTunesPresent cookie

Why Apple doesn’t directly support Google Chrome remains a mystery to me. I understand that Google Chrome is a competing product to Apple’s Safari browser, however, I am confident that Apple will make far more revenue from the iTunes store by making the user experience of iTunes best-in-class using any platform or browser.

Twitter tip – How to remove a saved search that returns no results

If you have a saved search in Twitter that returns no results Twitter doesn’t allow you to remove or delete the saved search. To resolve the problem, all you have to do is to send a new tweet that contains the item that the saved search is looking for. If the saved search is for some hash tag that isn’t popular any more, just include that hash tag in a new tweet. Give Twitter a few minutes after you send the tweet for them to update all of their indexes and when you rerun the search your new tweet should appear in the results and Twitter will then allow you to delete the saved search.

This worked for me today. Here are the specifics of what I did. I had three saved searches that I couldn’t remove. I had the hash tag #amexgiftcard, the word “ch9live” and a search for all tweets to me “to:HeatFanJohn” (I guess I not a very popular recipient of tweets!). I therefore generated a tweet containing all of these items. My new tweet was “@HeatFanJohn Test tweet with #amexgiftcard & ch9live to allow me to delete these saved searches & to:HeatFanJohn – this worked @support !”.

Below is a screenshot of running the saved search “to:HeatFanJohn” right after I sent the tweet. As you can see Twitter hadn’t updated their indexes yet so my search returned no results and as a result Twitter didn’t include the link to remove the saved search.

After waiting a couple of minutes I reran the search and as you can see my new tweet showed up and I was then able to click on the link to remove the saved search.


Voilá! After clicking on “Remove this saved search”, my saved search was deleted!


Again, this method worked for me. I hope that it helps you. Perhaps Twitter will correct this problem soon to eliminate the need for this easy workaround.

Happy Tweeting!