<?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>Kevin McMahon &#187; mobile</title>
	<atom:link href="http://blog.kevfoo.com/index.php/category/mobile/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.kevfoo.com</link>
	<description>The weblog of a Chicago based .Net and iPhone developer.</description>
	<lastBuildDate>Fri, 27 Aug 2010 15:00:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Monotouch: Flurry Analytics Bindings</title>
		<link>http://blog.kevfoo.com/index.php/2010/08/monotouch-flurry-analytics-bindings/</link>
		<comments>http://blog.kevfoo.com/index.php/2010/08/monotouch-flurry-analytics-bindings/#comments</comments>
		<pubDate>Fri, 06 Aug 2010 07:07:03 +0000</pubDate>
		<dc:creator>Kevin McMahon</dc:creator>
				<category><![CDATA[analytics]]></category>
		<category><![CDATA[binding]]></category>
		<category><![CDATA[btouch]]></category>
		<category><![CDATA[flurry]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[monotouch]]></category>
		<category><![CDATA[C Libraries]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Hardware Version]]></category>
		<category><![CDATA[Header Files]]></category>
		<category><![CDATA[Lib]]></category>
		<category><![CDATA[Libs]]></category>
		<category><![CDATA[Notifications]]></category>
		<category><![CDATA[Objective C]]></category>
		<category><![CDATA[Options]]></category>
		<category><![CDATA[Override]]></category>
		<category><![CDATA[Register]]></category>
		<category><![CDATA[Screens]]></category>
		<category><![CDATA[Sdk]]></category>
		<category><![CDATA[Service Provider]]></category>

		<guid isPermaLink="false">http://blog.kevfoo.com/index.php/2010/08/monotouch-flurry-analytics-bindings/</guid>
		<description><![CDATA[The MonoTouch libraries can be found on my fork of monotuch-libs on GitHub For my latest app I wanted to collect some analytics to see which screens and content included in the app are the most useful to users.&#160; In evaluating my mobile analytics options, Flurry’s free of charge service and easy to use API [...]]]></description>
			<content:encoded><![CDATA[<p><em>The MonoTouch libraries can be found on my </em><a href="http://github.com/kevinmcmahon/monotouch-libs"><em>fork of monotuch-libs on GitHub</em></a></p>
<p>For my <a href="http://www.tribeguides.com">latest app</a> I wanted to collect some analytics to see which screens and content included in the app are the most useful to users.&#160; In evaluating my mobile analytics options, Flurry’s free of charge service and easy to use API made the decision to go with them over Google Analytics and Mixpanel an easy one.</p>
<p>Integrating Flurry analytics into your app is pretty easy but there is a small amount of setup to be done prior.&#160; You will need to grab the iPhone SDK from Flurry and also register your application with them to get an API key.&#160; The API key is unique to your application and provides Flurry a way to know who is sending events and notifications back to them to log.&#160; The SDK includes a couple header files and the Objective-C libraries you’ll need to include and link against in your MonoTouch projects.&#160; Once the Flurry libraries and the <a href="http://github.com/kevinmcmahon/monotouch-libs">MonoTouch bindings</a> have been obtained and an API key has been generated, we can integrate them into MonoTouch application and start collecting data.</p>
<p>Initiating data collection is as simple as calling the StartSession method with the application’s API key.&#160; That is all it takes to start collecting basic information about your app like the amount of times it has been launched, the number of different users using it, and other bits of info like hardware version and service provider.</p>
<p>Here is some code showing how to turn analytics on.</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:e741bd95-b44c-42d9-aa9d-d45b1018beff" class="wlWriterEditableSmartContent">
<pre style="background-color:White;overflow: auto;"><span style="color: #0000FF;">using</span><span style="color: #000000;"> System;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> MonoTouch.Foundation;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> MonoTouch.UIKit;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> Flurry; </span><span style="color: #008000;">//</span><span style="color: #008000;"> include the MonoTouch binding lib</span><span style="color: #008000;">
</span><span style="color: #000000;">
</span><span style="color: #0000FF;">namespace</span><span style="color: #000000;"> Foo
{
    [Register (</span><span style="color: #800000;">"</span><span style="color: #800000;">AppDelegate</span><span style="color: #800000;">"</span><span style="color: #000000;">)]
    </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">class</span><span style="color: #000000;"> AppDelegate : UIApplicationDelegate
    {
        </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">const</span><span style="color: #000000;"> </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> FlurryApiKey </span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">...</span><span style="color: #800000;">"</span><span style="color: #000000;">;

        </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">override</span><span style="color: #000000;"> </span><span style="color: #0000FF;">bool</span><span style="color: #000000;"> FinishedLaunching (UIApplication app, NSDictionary options)
        {
            </span><span style="color: #008000;">//</span><span style="color: #008000;"> 1 liner to kick the session off</span><span style="color: #008000;">
</span><span style="color: #000000;">            Flurry.FlurryAPI.StartSession(FlurryApiKey);

            </span><span style="color: #008000;">//</span><span style="color: #008000;"> Do you app thing here...</span><span style="color: #008000;">
</span><span style="color: #000000;">        }
    }
}</span></pre>
<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --></div>
<p>If more detailed analytics are desired, there are additional methods available to help you glean whatever meaningful information you need from your application.&#160; The example below shows how you can automatically track the changes in navigation within a tab bar.&#160; When you pass a UINavigationController or a UITabBarController to the CurrentPageViews method, each navigation action as you move from one view or tab to another gets tracked.&#160; This is ideal for seeing which parts of your app users are interacting with the most.</p>
</p>
<div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:104833fe-e259-4268-8b6f-c8375220f118" class="wlWriterEditableSmartContent">
<pre style="background-color:#FFFFFF;overflow: auto;"><span style="color: #0000FF;">using</span><span style="color: #000000;"> System;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> MonoTouch.Foundation;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> MonoTouch.UIKit;
</span><span style="color: #0000FF;">using</span><span style="color: #000000;"> Flurry; </span><span style="color: #008000;">//</span><span style="color: #008000;"> include the MonoTouch binding lib</span><span style="color: #008000;">
</span><span style="color: #000000;">
</span><span style="color: #0000FF;">namespace</span><span style="color: #000000;"> Foo
{
    [Register (</span><span style="color: #800000;">"</span><span style="color: #800000;">AppDelegate</span><span style="color: #800000;">"</span><span style="color: #000000;">)]
    </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">class</span><span style="color: #000000;"> AppDelegate : UIApplicationDelegate
    {
        </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">const</span><span style="color: #000000;"> </span><span style="color: #0000FF;">string</span><span style="color: #000000;"> FlurryApiKey </span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">...</span><span style="color: #800000;">"</span><span style="color: #000000;">;

        </span><span style="color: #0000FF;">public</span><span style="color: #000000;"> </span><span style="color: #0000FF;">override</span><span style="color: #000000;"> </span><span style="color: #0000FF;">bool</span><span style="color: #000000;"> FinishedLaunching (UIApplication app, NSDictionary options)
        {
            </span><span style="color: #008000;">//</span><span style="color: #008000;"> 1 liner to kick the session off</span><span style="color: #008000;">
</span><span style="color: #000000;">            FlurryAPI.StartSession(FlurryApiKey);

            </span><span style="color: #008000;">//</span><span style="color: #008000;"> create a navigatable controller to watch...</span><span style="color: #008000;">
</span><span style="color: #000000;">            UITabBarController tabBarController </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #0000FF;">new</span><span style="color: #000000;"> UITabBarController();

            </span><span style="color: #008000;">//</span><span style="color: #008000;"> ...and pass it to CurrentPageViews.</span><span style="color: #008000;">
</span><span style="color: #000000;">            FlurryAPI.CurrentPageViews(tabBarController);

            </span><span style="color: #008000;">//</span><span style="color: #008000;"> Do you app thing here...</span><span style="color: #008000;">
</span><span style="color: #000000;">        }
    }
}</span></pre>
<p><!-- Code inserted with Steve Dunn's Windows Live Writer Code Formatter Plugin.  http://dunnhq.com --></div>
</p>
<p>I am touching on just a few things that you can do with Flurry.&#160; The SDK docs describe a number of other things you can do like creating and logging custom events and tracking how much time is spent performing activities.&#160; I’d recommend checking them out after you download the libraries.</p>
<p>I’ve just started collecting analytics during beta testing and things appear to working smoothly.&#160; If you find any issues with the MonoTouch bindings please let me know.&#160; Enjoy! </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevfoo.com/index.php/2010/08/monotouch-flurry-analytics-bindings/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Thoughts on the Day of Mobile conference</title>
		<link>http://blog.kevfoo.com/index.php/2010/03/thoughts-on-the-day-of-mobile-conference/</link>
		<comments>http://blog.kevfoo.com/index.php/2010/03/thoughts-on-the-day-of-mobile-conference/#comments</comments>
		<pubDate>Mon, 08 Mar 2010 06:15:23 +0000</pubDate>
		<dc:creator>Kevin McMahon</dc:creator>
				<category><![CDATA[conferences]]></category>
		<category><![CDATA[dayofmobile]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[Business Models]]></category>
		<category><![CDATA[Catalogs]]></category>
		<category><![CDATA[Closest Thing]]></category>
		<category><![CDATA[Cool Tools]]></category>
		<category><![CDATA[David Whatley]]></category>
		<category><![CDATA[Headaches]]></category>
		<category><![CDATA[Inaugural Conference]]></category>
		<category><![CDATA[Insights]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[Last Saturday]]></category>
		<category><![CDATA[Laughs]]></category>
		<category><![CDATA[Main Themes]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[Niche]]></category>
		<category><![CDATA[Platform Development]]></category>
		<category><![CDATA[Risk Reward]]></category>
		<category><![CDATA[Scenarios]]></category>
		<category><![CDATA[Sessions]]></category>
		<category><![CDATA[Ways To Make Money]]></category>
		<category><![CDATA[Win Lottery]]></category>
		<category><![CDATA[Win The Lottery]]></category>

		<guid isPermaLink="false">http://blog.kevfoo.com/index.php/2010/03/thoughts-on-the-day-of-mobile-conference/</guid>
		<description><![CDATA[Here is a collection of thoughts that I had about the Day of Mobile conference held at IIT last Saturday.&#160; This was the inaugural conference put together by the Tech in the Middle guys, and I thought that they did a great job.&#160; I look forward to seeing what they do next. Overall Themes Two [...]]]></description>
			<content:encoded><![CDATA[<p>Here is a collection of thoughts that I had about the <a href="http://www.techinthemiddle.com/DayOfMobile/">Day of Mobile</a> conference held at IIT last Saturday.&#160; This was the inaugural conference put together by the <a href="http://www.techinthemiddle.com">Tech in the Middle</a> guys, and I thought that they did a great job.&#160; I look forward to seeing what they do next.</p>
<h3>Overall Themes</h3>
<p>Two main themes that emerged during the sessions: the future of mobile is web-based apps rather than device specific apps, and the road to mobile riches probably doesn’t run through an app store.</p>
<h3>Multi-platform development is hard</h3>
<p>Certainly scenarios exist where multi-platform apps make sense, but it is imperative that the risk/reward ratio be in your favor to have a chance to be successful.&#160; Don’t underestimate the amount of effort and headaches that developing and supporting multi-platform apps will create.&#160; Going the mobile web app route has it’s limitations, but it is the closest thing to “write once, run anywhere” that mobile has.</p>
<h3>Cool Tools</h3>
<p>Really cool tools like <a href="http://www.phonegap.com">PhoneGap</a> and <a href="http://www.jqtouch.com">jQTouch</a> are out there that help lower the barriers to making apps and, in the case of PhoneGap, multi-platform apps.&#160; Both tools have been released under MIT licenses and are free to use.</p>
<h3>One Man’s Secret Sauce for Success</h3>
<p>David Whatley gave a funny presentation that provided a lot of laughs and some great insights into how the iPhone app store works.&#160; Even better was his ability to back up what he was saying with some real sales data and numbers.&#160; His secret sauce for success:&#160; PR, code re-use, and playing to your strengths.</p>
<h3>App stores are glorified catalogs</h3>
<p>Standing out or even being noticed amongst all the other apps is extremely difficult.&#160; Relying only on the app catalog to drive sales is effectively a “post and pray” strategy akin to trying to win the lottery.&#160; Try to find a niche and solve a problem.&#160; Focus on creating value for markets not just an app for it.&#160; Mark Murphy described many ways to <a href="http://www.slideshare.net/commonsguy/making-money-at-mobile">make money in mobile</a> other than direct app sales during his talk and in a series of blog posts about <a href="http://www.androidguys.com/2010/03/04/android-business-models/">Android Business Models</a>.</p>
<h3>Links</h3>
<ul>
<li><a href="http://www.phonegap.com">PhoneGap</a> </li>
<li><a href="http://www.jqtouch.com">jQTouch</a> </li>
<li><a href="http://www.iphonedevdepot.com">iPhone Dev Depot</a> </li>
<li><a href="http://www.slideshare.net/jschwan/mobile-web-development-tips-and-tricks">Mobile Web Development Tips and Tricks (Slides)</a> </li>
<li><a href="http://www.slideshare.net/commonsguy/making-money-at-mobile">Making Money at Mobile (Slides)</a> </li>
<li><a title="http://github.com/mikelaurence/CoreResource" href="http://github.com/mikelaurence/CoreResource">http://github.com/mikelaurence/CoreResource</a> (Cool iPhone library) </li>
</ul>
<h3>Books Recommended During the Conference</h3>
<ul>
<li><a href="http://www.amazon.com/gp/product/093849743X?ie=UTF8&amp;tag=kev02-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=093849743X">Aiming at Amazon</a> </li>
<li><a href="http://www.amazon.com/gp/product/1591841666?ie=UTF8&amp;tag=kev02-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1591841666">The Dip</a> </li>
<li><a href="http://www.amazon.com/gp/product/0307409503?ie=UTF8&amp;tag=kev02-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0307409503">The Whuffie Factor</a> </li>
</ul>
<p>Overall, the signal-to-noise ratio at the conference was good but not great.&#160; I did manage to glean at least one or two new ideas from most of the sessions I attended, and it was great to see the enthusiasm that the Chicago tech community has for events like this.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.kevfoo.com/index.php/2010/03/thoughts-on-the-day-of-mobile-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
