title: Why does the Live Connect SignInButton fail with an invalid redirect_uri?
body: <p>I'm experimenting with Windows Phone apps and live connect. I have this control on my main page:</p>
  
  <pre><code>xmlns:live="clr-namespace:Microsoft.Live.Controls;assembly=Microsoft.Live.Controls"
  
  ...
  
  &lt;live:SignInButton ClientId="[my client id, which I registered earlier today]"
                     Scopes="wl.signin wl.basic"
                     Branding="Skydrive"
                     TextType="SignIn"
                     SessionChanged="SignInButton_SessionChanged" /&gt;
  </code></pre>
  
  <p>Here is the handler for <code>SessionChanged</code>:</p>
  
  <pre><code>private async void SignInButton_SessionChanged(object sender, LiveConnectSessionChangedEventArgs e)
  {
      if (e.Error != null)
          System.Diagnostics.Debugger.Break();
  
      ...
  }
  </code></pre>
  
  <p>I debug my app using the Windows Phone emulator. When I click the Sign In button, I get this exception:</p>
  
  <blockquote>
    <p>The provided value for the input parameter 'redirect_uri' is not valid. The client application must be marked as 'mobile' or the value must be an absolute URL which matches the registered redirect URI.</p>
  </blockquote>
  
  <p>I do not explicitly specify a <code>redirect_uri</code> anywhere. Why does Sign In fail due to an invalid <code>redirect_uri</code>?</p>