Skydrive API Windows Phone 8
У кого-нибудь еще была проблема с SkyDrive API для Windows Phone 8? Я обновляю свой код Windows Phone 7 до Windows Phone 8. Когда я нажимаю кнопку входа в систему (SkyDrive), я получаю следующий экран:
Этот код (без изменений от WP7) используется для работы в VS2010. Кто-нибудь еще имеет эту проблему? Есть ли более новая версия, которую я должен использовать (текущая версия v2.0.50727)?
Текущий XAML:
HorizontalAlignment="Left" Margin="308,71,0,0"
Name="signInButton1" VerticalAlignment="Top" Width="160"
ClientId="[myID]" Scopes="wl.skydrive_update"
TextType="SignIn" SessionChanged="btnSignin_SessionChanged"
Branding="Windows"/>
Код входа в систему:
private void btnSignin_SessionChanged(object sender, LiveConnectSessionChangedEventArgs e)
{
if (e.Status == LiveConnectSessionStatus.Connected)
{
client = new LiveConnectClient(e.Session);
infoTextBlock.Text = "Signed in.";
client.GetCompleted +=
new EventHandler<LiveOperationCompletedEventArgs>(OnGetCompleted);
client.GetAsync("me", null);
for (var i = 0; i < this.ApplicationBar.Buttons.Count; i++)
{
var button = this.ApplicationBar.Buttons[i] as ApplicationBarIconButton;
if (button != null)
{
if (button.Text == "Upload")
{
button.IsEnabled = true;
}
}
}
}
else
{
infoTextBlock.Text = "Not signed in.";
client = null;
}
}
ОБНОВИТЬ!
Я продолжал пытаться, и я все еще получал этот белый экран. Тем не менее, я нажал на увеличительное стекло и затем нажал стрелку назад (она возобновилась), затем попытался войти снова, и это сработало. Так это просто шатко или как?
2 ответа
После дальнейшего рассмотрения я считаю, что это проблема эмулятора. Если я возлюсь с этим достаточно, в конечном итоге это работает.
Я читал, что нельзя использовать LiveSDK в эмуляторе, потому что у вас нет учетной записи MS в эмуляторе.
Поэтому попробуйте использовать физическое устройство для отладки. Это подходит для меня.