<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Chris Risner . Com</title><link>http://chrisrisner.com</link><description>Chris Risner . Com</description><ttl>60</ttl><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/chrisrisnercom" /><feedburner:info uri="chrisrisnercom" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title><![CDATA[ Changing the SDK Path with Android Studio ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/tvEM-pSJv4Y/Changing-the-SDK-Path-with-Android-Studio</link><guid isPermaLink="false">http://chrisrisner.com/Changing-the-SDK-Path-with-Android-Studio</guid><description>&lt;p&gt;&lt;img style="float: right; margin: 0px 0px 5px 5px; display: inline" align="right" src="http://storage.chrisrisner.com/images/android-studio.jpg" /&gt;If you’ve been watching the news out of Google I/O today, you’ll have heard about &lt;a title="Android Studio" href="http://developer.android.com/sdk/installing/studio.html"&gt;Android Studio&lt;/a&gt;.&amp;#160; Android Studio is a new IDE based off of NetBean’s IntelliJ IDE for Android development.&amp;#160; This is super exciting to many Android developers because many people are using Eclipse and Eclipse is generally pretty terrible.&amp;#160; Plus, an IDE made by the people that are making the Android OS / SDK is pretty exciting.&amp;#160; As soon as they made Android Studio available to download, I went and grabbed it and installed it.&amp;#160; One of the first things I noticed once I installed it was that when I went to create a project, not all of the SDK versions that I already had installed were showing up as SDK choices.&amp;#160; This made me realize that at no point in the install process was I asked where my install of the Android SDK was at.&amp;#160; The reason for that is that Android Studio installs it’s own version of the SDK in it’s own app folder.&amp;#160; On OS X, if you navigate to /Applications/Android Studio.app/sdk, you’ll see the Android SDK installed by Android Studio.&amp;#160; This might be fine if I was ready to commit entirely to Android Studio, but with it being at v0.1, I’m not quite ready to make that jump.&amp;#160; What I really wanted to do was point Android Studio at the same version of the SDK I was using elsewhere.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Changing the SDK&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The first place I looked for changing this was in the &lt;strong&gt;Preferences&lt;/strong&gt; section.&amp;#160; Unfortunately, I couldn’t find anything here.&amp;#160; I looked around in some of the other menus and didn’t find anything obvious (&lt;strong&gt;Tools&lt;/strong&gt; has an &lt;strong&gt;Android&lt;/strong&gt; submenu, but it’s just for launching the AVD Manager, SDK Manager, Monitor, or enabling ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Changing-the-SDK-Path-with-Android-Studio"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/tvEM-pSJv4Y" height="1" width="1"/&gt;</description><pubDate>Wed, 15 May 2013 21:16:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Changing-the-SDK-Path-with-Android-Studio</feedburner:origLink></item><item><title><![CDATA[ CountDownLatchs and Android ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/Zn46NPkjaQ0/CountDownLatchs-and-Android</link><guid isPermaLink="false">http://chrisrisner.com/CountDownLatchs-and-Android</guid><description>&lt;p&gt;&lt;img style="float: right; margin: 0px 0px 5px 5px; display: inline" align="right" src="http://chrisrisner.com/upload/android-200.png" /&gt;A few weeks ago I was working on an &lt;a title="Android, auth, and Mobile Services" href="http://chrisrisner.com/Authentication-with-Android-and-Windows-Azure-Mobile-Services"&gt;Android sample connecting to Windows Azure Mobile Services to do different kinds of authentication&lt;/a&gt;.&amp;#160; One of the features of that sample was the ability to ask the user to login if they made a request that required they be authenticated but the token they were using had expired.&amp;#160; After they logged in again, the previous request would then be retried.&amp;#160; Unfortunately, at the time it seemed like I would need to add something custom to the Mobile Services SDK for Android in order to track the previous request and then retry it.&amp;#160; This resulted in the addition of quite a bit of code.&amp;#160; After posting that sample and walking through the changes I made with the SDK team, we found a much easier way to accomplish the task without making any changes to the SDK:&amp;#160; using a &lt;a title="CountDownLatch" href="http://developer.android.com/reference/java/util/concurrent/CountDownLatch.html"&gt;CountDownLatch&lt;/a&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;What is a CountDownLatch?&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;A CountDownLatch is a synchronization aid that enables you to block a thread until the countdown reaches zero.&amp;#160; In other words, you can pause execution of one thread until a second thread says “ok you can finish now”.&amp;#160; How does this help us with the scenario above?&amp;#160; Well, due to the fact that network requests can’t (and shouldn’t) be made on the main (UI) thread, you have to perform these requests on a separate thread.&amp;#160; When we make the first request (with the expired token) the response is handled on a background thread.&amp;#160; From this thread, if we want to make the user log in again, we need to open the login dialog, but we need to jump back to the UI thre...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/CountDownLatchs-and-Android"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/Zn46NPkjaQ0" height="1" width="1"/&gt;</description><pubDate>Mon, 13 May 2013 20:07:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/CountDownLatchs-and-Android</feedburner:origLink></item><item><title><![CDATA[ Accessing Twitter API v1.1 from Mobile Services Scripts ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/yv4VZg3vpEs/Accessing-Twitter-API-v1-1-from-Mobile-Services-Scripts</link><guid isPermaLink="false">http://chrisrisner.com/Accessing-Twitter-API-v1-1-from-Mobile-Services-Scripts</guid><description>&lt;p&gt;&lt;img style="float: right; margin: 0px 0px 5px 5px; display: inline" align="right" src="http://storage.chrisrisner.com/images/WAMobileServicesblue.png" /&gt;Recently I had someone reach out to me as they were trying to communicate from their Windows Azure Mobile Service scripts to Twitter’s API and were running into issues.&amp;#160; At first I didn’t understand why as everything was working for me.&amp;#160; I then discovered that I had been using version 1.0 of the Twitter API while they were using the new 1.1 version.&amp;#160; After a little bit of work I was able to figure out how to get through to the 1.1 API with an authenticated request from Mobile Service scripts.&amp;#160; With the &lt;a title="Twitter v1 API retirement" href="https://dev.twitter.com/blog/api-v1-retirement-date-extended-to-june-11"&gt;upcoming retirement of version 1.0 of the API on June 11th&lt;/a&gt;, I felt it was important to share with people how they could also access the updated API.&amp;#160; It’s important to note that if your application is currently using v1 of the API, it will NOT work as of June 11th.&amp;#160; This includes if you followed along with the steps in my &lt;a title="Authentication with Mobile Services" href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;extensive Authentication sample&lt;/a&gt; from a couple weeks ago (where I’m using v1 of the Twitter API to get the username).&amp;#160; Today we’ll look at the same situation, pulling the current user’s username.&amp;#160; However, you could use the same approach for any of the API methods.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;A word on complexity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;One of the first things you’ll notice when you look at this script is that it is pretty intense.&amp;#160; If you were going to access Twitter from more than one script, you’d have to copy and paste a lot of the same code into your scripts resulting in some very messy scripts.&amp;#160; We’re working on a solution to this but I can’t share any more details yet.&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Accessing v1.1 of the T...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Accessing-Twitter-API-v1-1-from-Mobile-Services-Scripts"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/yv4VZg3vpEs" height="1" width="1"/&gt;</description><pubDate>Thu, 09 May 2013 20:19:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Accessing-Twitter-API-v1-1-from-Mobile-Services-Scripts</feedburner:origLink></item><item><title><![CDATA[ Authentication with iOS and Windows Azure Mobile Services ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/mkSeqazVTQ0/Authentication-with-iOS-and-Windows-Azure-Mobile-Services</link><guid isPermaLink="false">http://chrisrisner.com/Authentication-with-iOS-and-Windows-Azure-Mobile-Services</guid><description>&lt;p&gt;&lt;img title="Mobile Services with Android" style="float: right; margin: 0px 0px 5px 5px; display: inline" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/WAMobileServicesblue.png" /&gt;This article is the companion to one I just &lt;a title="Service side of Authentication and Mobile Services" href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;posted about handling different types of authentication with Windows Azure Mobile Services&lt;/a&gt;.&amp;#160; Prior to taking a look through this article and the mentioned code, I would go through the &lt;a title="Authentication and Mobile Services" href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;original article&lt;/a&gt; on Mobile Services and auth.&amp;#160; This article will cover how to connect the Mobile Service we set up there with an iOS client using the Mobile Services SDK for iOS.&amp;#160; All of the source code for this iOS app is &lt;a title="iOS and Mobile Services App Source Code" href="https://github.com/WindowsAzure-Samples/iOS-MobileServices-Authentication"&gt;available here in GitHub&lt;/a&gt;.&amp;#160; I’m going to cover a few different areas in the app in this post:&amp;#160; giving users the choice of how to login, creating and logging in with custom accounts, logging users out and returning to the root view controller, caching user tokens so we won’t have to login each time, and dealing with expired tokens now that we’re caching them.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Giving the user choice&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is one of the easiest things to do from a front end perspective because all I need to do is give the user the ability to select their authentication provider:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img title="Login proviers" alt="Login proviers" src="http://storage.chrisrisner.com/images/ios-auth-providers.jpg" width="230" height="342" /&gt;&lt;/p&gt;  &lt;p&gt;All I’ve done is put one button for each provider and then the custom auth at the bottom.&amp;#160; Each of these buttons (except for...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Authentication-with-iOS-and-Windows-Azure-Mobile-Services"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/mkSeqazVTQ0" height="1" width="1"/&gt;</description><pubDate>Mon, 22 Apr 2013 20:13:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Authentication-with-iOS-and-Windows-Azure-Mobile-Services</feedburner:origLink></item><item><title><![CDATA[ Authentication with Android and Windows Azure Mobile Services ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/pFFo-LQn2J8/Authentication-with-Android-and-Windows-Azure-Mobile-Services</link><guid isPermaLink="false">http://chrisrisner.com/Authentication-with-Android-and-Windows-Azure-Mobile-Services</guid><description>&lt;p&gt;&lt;img title="Mobile Services with Android" style="float: right; margin: 0px 0px 5px 5px; display: inline" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/wams-logo-android.jpg" /&gt;
&lt;p&gt;&lt;strong&gt;Update 5-13-2013&lt;/strong&gt;: Since writing this I found an easier way to do the retry request that does not require the changes to the SDK.  Please read more about this at this post on &lt;a href="http://chrisrisner.com/CountDownLatchs-and-Android" title="Android and CountDownLatchs"&gt;CountDownLatchs&lt;/a&gt;.
&lt;/p&gt;

This article is the companion to one I just &lt;a title="Server side of authentication and Mobile Services" href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;posted about handling different types of authentication with Windows Azure Mobile Services&lt;/a&gt;.&amp;#160; Prior to taking a look through this article and the mentioned code, I would go through the &lt;a title="Authentication and Mobile Services" href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;original article&lt;/a&gt; on Mobile Services and auth.&amp;#160; This article will cover how to connect the Mobile Service we set up there with an Android client using the Mobile Services SDK for Android.&amp;#160; All of the source code for this Android app is &lt;a title="Android Authentication with Mobile Services" href="https://github.com/WindowsAzure-Samples/Android-MobileServices-Authentication"&gt;available here in GitHub&lt;/a&gt;.&amp;#160; I’m going to cover a few different areas in the app in this post: giving users the choice of how to login, creating and logging in with custom accounts, logging users out and returning to the root view controller, caching user tokens so we don’t have to login each time we run the app, and dealing with expired tokens now that we’re caching them.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;An updated Android SDK&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;For a couple of different reasons, I needed to update the Android SDK to complete this sample.&amp;#160; I’m in the process ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Authentication-with-Android-and-Windows-Azure-Mobile-Services"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/pFFo-LQn2J8" height="1" width="1"/&gt;</description><pubDate>Mon, 22 Apr 2013 20:13:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Authentication-with-Android-and-Windows-Azure-Mobile-Services</feedburner:origLink></item><item><title><![CDATA[ Authentication with Windows Azure Mobile Services ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/1pbLGBzwNzI/Authentication-with-Windows-Azure-Mobile-Services</link><guid isPermaLink="false">http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services</guid><description>&lt;p&gt;&lt;img title="Mobile Services with Android" style="float: right; margin: 0px 0px 5px 5px; display: inline" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/WAMobileServicesblue.png" /&gt;
&lt;p&gt;&lt;strong&gt;Update 5-9-2013&lt;/strong&gt;: With &lt;a href="https://dev.twitter.com/blog/api-v1-retirement-date-extended-to-june-11"&gt;Twitter retiring their version 1.0 API on June 11, 2013&lt;/a&gt;, I thought it would be a good idea to let people know how to update the script that pulls out the username to support v1.1.  The script necessary for this is a good deal more complicated but I've walked through it in a new blog post you can find &lt;a href="http://chrisrisner.com/Accessing-Twitter-API-v1-1-from-Mobile-Services-Scripts" Title="Accessing Twitter API v1.1"&gt;here&lt;/a&gt;.
&lt;/p&gt;

One of the most powerful capabilities of &lt;a title="Windows Azure Mobile Services" href="http://www.windowsazure.com/mobile"&gt;Windows Azure Mobile Services&lt;/a&gt; is how easy it is to add user authentication to your mobile apps.&amp;#160; Mobile Services does this by providing a super easy way to connect your app with Facebook, Google, Microsoft, and Twitter.&amp;#160; For each provider, you go to their developer site and create an application which yields a key / id and a secret.&amp;#160; You then take thoose pieces of information and put them in the portal for your Mobile Service and now your app can use that provider as a way of authenticating.&amp;#160; Behind the scenes, things are a lot more complex because when you use these providers to authenticate, you’re using something called &lt;a title="OAuth" href="http://oauth.net/"&gt;OAuth&lt;/a&gt;.&amp;#160; Explaining how OAuth works is far beyond the scope of this article.&amp;#160; Fortunately you don’t need to know how it works to take advantage of it in your mobile applications.&amp;#160; I wanted to build an application that demonstrated how you could put authentication with all four of these providers into the same app but got a little ambitious and decided to d...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/1pbLGBzwNzI" height="1" width="1"/&gt;</description><pubDate>Mon, 22 Apr 2013 20:08:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Authentication-with-Windows-Azure-Mobile-Services</feedburner:origLink></item><item><title><![CDATA[ Unwinding with iOS and Storyboards ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/RWfe61LEgyw/Unwinding-with-iOS-and-Storyboards</link><guid isPermaLink="false">http://chrisrisner.com/Unwinding-with-iOS-and-Storyboards</guid><description>&lt;p&gt;Last night and today I was running into an issue where I wanted to jump from one position in an iOS app back to the start.&amp;#160; Essentially I had something that looked a lot like this:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img title="several view controllers" alt="several view controllers" src="http://storage.chrisrisner.com/images/iOS-5-view-controllers.jpg" /&gt;&lt;/p&gt;  &lt;p&gt;Several View Controllers lined up in a row.&amp;#160; In this case, the view controller at the far left (so the second “item”) is the root.&amp;#160; There is a button on that VC that pushes you to the second (or middle item).&amp;#160; The second VC has another button that pushes you to the third VC (fourth item).&amp;#160; That VC has two buttons: one that should return you back to the beginning and one that opens another VC in a modal.&amp;#160; That last VC has a single button which should also push you back to the beginning.&amp;#160; I did it this way so I could test out both returning from a modal and returning through a pushed stack of VCs.&amp;#160; Basically, I wanted to be able to do this:&lt;/p&gt;  &lt;p align="center"&gt;&lt;img title="View Controllers with Arrows" alt="View Controllers with Arrows" src="http://storage.chrisrisner.com/images/ios-view-controllers-with-arrows.jpg" /&gt;&lt;/p&gt;  &lt;p&gt;This isn’t very uncommon and a quick search of the internet will review quite a few posts on Stack Overflow and other sites.&amp;#160; It’s important to point that here I’m going to each “next” view controller via a segue.&amp;#160; Now the “old” or common way of returning back definitely wasn’t as nice as just going back via a segue or anything like that.&amp;#160; The steps you used to take were to:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Create a delegate on the destination View Controller. &lt;/li&gt;    &lt;li&gt;Implement that delegate on the source View Controller. &lt;/li&gt;    &lt;li&gt;In the &lt;strong&gt;prepareForSegue&lt;/strong&gt; method, set the destination VC’s delegate to be the source VC. &lt;/li&gt;    &lt;li&gt;When you want to “bounce back” you’d have to keep firing methods up the delegate ladder until you got t...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Unwinding-with-iOS-and-Storyboards"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/RWfe61LEgyw" height="1" width="1"/&gt;</description><pubDate>Wed, 03 Apr 2013 20:39:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Unwinding-with-iOS-and-Storyboards</feedburner:origLink></item><item><title><![CDATA[ iOS and Mobile Services and Windows Azure Storage ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/us5y4ImRnZs/iOS-and-Mobile-Services-and-Windows-Azure-Storage</link><guid isPermaLink="false">http://chrisrisner.com/iOS-and-Mobile-Services-and-Windows-Azure-Storage</guid><description>&lt;p&gt;&lt;img style="margin: 0px 0px 5px 5px; display: inline; float: right" title="Mobile Services with Android" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/WAMobileServicesblue.png" /&gt;This article is the companion to one I just &lt;a title="Mobile Services and Windows Azure Storage" href="http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage"&gt;posted about connecting Mobile Services to Windows Azure Table and Blob Storage&lt;/a&gt;.&amp;#160; Prior to taking a look through this article and the mentioned code, I would go through the &lt;a title="Mobile Services and Windows Azure Storage" href="http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage"&gt;original article&lt;/a&gt; on Mobile Services and Windows Azure Storage.&amp;#160; This article will cover how to connect the Mobile Service we set up there with an iOS client using the Mobile Services SDK for iOS.&amp;#160; All of the source code for this iOS app is &lt;a title="iOS and Mobile Services App Source Code" href="https://github.com/WindowsAzure-Samples/iOS-MobileServices-Storage"&gt;available here in GitHub&lt;/a&gt;.&amp;#160; Since this app deals with talking to Table and Blob Storage through Mobile Services, I’m only going to highlight here when we’re talking to Mobile Services from iOS and maybe a few other important pieces.&amp;#160; If you want to see how the entire app works (such as how we display table names and blob names in a table view) take a closer look at the source code.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Before you run the app&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The only thing you need to do before you run this app is adjust the &lt;strong&gt;init &lt;/strong&gt;method of the &lt;strong&gt;StorageService &lt;/strong&gt;class to use your Mobile Service’s URL and Application Key.&amp;#160; You can grab these by logging into the Windows Azure portal, going to your Mobile Service, and clicking the &lt;strong&gt;MANAGE KEYS &lt;/strong&gt;button when viewing your service’s dashboard.&amp;#160; Those values go into the &lt;strong&gt;MSClient&lt;/strong&gt;’s &lt;strong&gt;clientWithA...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/iOS-and-Mobile-Services-and-Windows-Azure-Storage"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/us5y4ImRnZs" height="1" width="1"/&gt;</description><pubDate>Mon, 01 Apr 2013 16:30:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/iOS-and-Mobile-Services-and-Windows-Azure-Storage</feedburner:origLink></item><item><title><![CDATA[ Android and Mobile Services and Windows Azure Storage ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/aABcpf5NFNY/Android-and-Mobile-Services-and-Windows-Azure-Storage</link><guid isPermaLink="false">http://chrisrisner.com/Android-and-Mobile-Services-and-Windows-Azure-Storage</guid><description>&lt;p&gt;&lt;img style="margin: 0px 0px 5px 5px; display: inline; float: right" title="Mobile Services with Android" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/wams-logo-android.jpg" /&gt;This article is the companion to one I just &lt;a title="Mobile Services and Windows Azure Storage" href="http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage"&gt;posted about connecting Mobile Services to Windows Azure Table and Blob Storage&lt;/a&gt;.&amp;#160; Prior to taking a look through this article and the mentioned code, I would go through the &lt;a title="Mobile Services and Windows Azure Storage" href="http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage"&gt;original article&lt;/a&gt; on Mobile Services and Windows Azure Storage.&amp;#160; This article will cover how to connect the Mobile Service we set up there with an Android client using the Mobile Services SDK for Android.&amp;#160; All of the source code for this Android app is &lt;a title="Android and Mobile Services App Source Code" href="https://github.com/WindowsAzure-Samples/Android-MobileServices-Storage"&gt;available here in GitHub&lt;/a&gt;.&amp;#160; Since this app deals with talking to Table and Blob Storage through Mobile Services, I’m only going to highlight here when we’re talking to Mobile Services from Android and maybe a few other important pieces.&amp;#160; If you want to see how the entire app works (such as how we display table names and blob names in a table view) take a closer look at the source code.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Before you run the app&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The first thing you need to do before you run this app is adjust the constructor method for the &lt;strong&gt;StorageService &lt;/strong&gt;class to use your Mobile Service’s URL and Application Key.&amp;#160; You can grab these by logging into the Windows Azure portal, going to your Mobile Service, and clicking the &lt;strong&gt;MANAGE KEYS&lt;/strong&gt; button when viewing your service’s dashboard.&amp;#160; Those values go into the &lt;strong&gt;new MobileServiceClient(…&lt;...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Android-and-Mobile-Services-and-Windows-Azure-Storage"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/aABcpf5NFNY" height="1" width="1"/&gt;</description><pubDate>Mon, 01 Apr 2013 16:29:05 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Android-and-Mobile-Services-and-Windows-Azure-Storage</feedburner:origLink></item><item><title><![CDATA[ Mobile Services and Windows Azure Storage ]]></title><link>http://feedproxy.google.com/~r/chrisrisnercom/~3/6aqM5Pt0LtE/Mobile-Services-and-Windows-Azure-Storage</link><guid isPermaLink="false">http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage</guid><description>&lt;p&gt;&lt;img style="margin: 0px 0px 5px 5px; display: inline; float: right" title="Mobile Services with Android" alt="Mobile Services with Android" align="right" src="http://storage.chrisrisner.com/images/WAMobileServicesblue.png" /&gt;Since we launched Mobile Services, one of the common questions we get is how to connect Mobile Services with &lt;a title="Table and Blob Storage" href="http://www.windowsazure.com/en-us/home/features/data-management/"&gt;Windows Azure Table and Blob Storage&lt;/a&gt;.&amp;#160; Mobile Services is built off of SQL Database which is really great for many reasons.&amp;#160; The motivations for connecting to Table and Blob storage usually have to do with scalability, cost, and file storage.&amp;#160; Table storage is a NoSQL data storage implementation that offers really great scalability in addition to geo-replication.&amp;#160; Additionally, table storage is a good deal cheaper than SQL database.&amp;#160; Blob storage is specifically suited to storing files be they images, videos, or anything else.&amp;#160; SQL Storage makes Mobile Services a bit more straightforward but does come at the costs I just mentioned.&amp;#160; Today, I’m happy to announce a sample which will demonstrate how you can connect your Mobile Services into Table and Blob Storage.&amp;#160; It’s not quite as easy as flipping a switch and saying “don’t use SQL, use Tables and Blobs” but this should give you a pretty thorough understanding of how to take advantage of Tables and Blobs.&amp;#160; Additionally, after this you should understand enough to be able to use them in conjunction with the built in SQL storage if you want.&amp;#160; This article will cover how to handle things on the server (Mobile Services) side and the next two will cover connecting to them with the iOS and Android clients.&amp;#160; Source code, including the server scripts, is available for &lt;a title="iOS Mobile Services Storage" href="https://github.com/WindowsAzure-Samples/iOS-MobileServices-Storage"&gt;iOS&lt;/a&gt; and &lt;a title="Android Mobile Services Storage" ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span stlye="float: left"&gt;Read the rest of the article &lt;a href="http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage"&gt;here.&lt;/a&gt;&lt;/span&gt;&lt;img src="http://feeds.feedburner.com/~r/chrisrisnercom/~4/6aqM5Pt0LtE" height="1" width="1"/&gt;</description><pubDate>Mon, 01 Apr 2013 16:23:00 GMT</pubDate><feedburner:origLink>http://chrisrisner.com/Mobile-Services-and-Windows-Azure-Storage</feedburner:origLink></item></channel></rss>
