ユーザーがC#で記述されたWindows Phone 8アプリからSkyDriveで保存または開く場所を選択できるようにするための正しい/推奨される方法は何ですか?
Windows 8アプリで使用されているFileOpenPickerを試しましたが、C ++(管理されていない)からのみ機能するようで、正しく表示されていれば、マルチメディアファイルのみがサポートされます。
MSDNから:
Windows Phone 8
このAPIは、ネイティブアプリでのみサポートされています。
ユーザーがC#で記述されたWindows Phone 8アプリからSkyDriveで保存または開く場所を選択できるようにするための正しい/推奨される方法は何ですか?
Windows 8アプリで使用されているFileOpenPickerを試しましたが、C ++(管理されていない)からのみ機能するようで、正しく表示されていれば、マルチメディアファイルのみがサポートされます。
MSDNから:
Windows Phone 8
このAPIは、ネイティブアプリでのみサポートされています。
Win8とは異なり、SkyDriveへのアクセスを可能にする組み込みのメカニズムはWP8にはありません。WP8のFilePickerクラスは、マネージAPIにアクセスできないため、ネイティブアプリでオーバーロードされています。Win8のFilePickerと同じ意味でのFilePickerはWP8には存在しません。具体的には、 WP8のFilePickerは、マネージドアプリでのみ使用できるため、マネージドPhotoChooserTaskの代わりに使用されます。
SkyDriveにアクセスする場合は、SkyDriveのRESTサービスまたはそれらのラッパー(具体的にはLive SDK)を使用してアクセスできます。たとえば、LiveSDKSigninButtonとサインインの処理は次のとおりです。
<live:SignInButton x:Name="btnSignin" Scopes="wl.signin wl.basic" SessionChanged="btnSignin_SessionChanged" />
private void btnSignin_SessionChanged(object sender, LiveConnectSessionChangedEventArgs e)
{
if (e.Status == LiveConnectSessionStatus.Connected)
{
session = e.Session;
client = new LiveConnectClient(session);
infoTextBlock.Text = "Signed in.";
}
else
{
infoTextBlock.Text = "Not signed in.";
client = null;
}
}
ただし、これらはサードパーティのAPIとSDKであるため、ユーザーはアプリ内でユーザー名とパスワードを使用して認証する必要があります。それは基本的にあなたにSkyDriveへのユーザーのプライベートデータの自由な統治を与えるので、それはかなり悪いです。ライブ認証によって強化された他のすべてを完全に制御することは言うまでもありません。そのため、ほとんどのアプリは、SkyDriveのコア機能でない限り、SkyDriveへのアクセスを回避する傾向があります。
SkyDriveAPIを含むMicrosoftLiveSDKを調べます:http://msdn.microsoft.com/en-us/library/live/hh826521.aspx
ここからダウンロードしてインストールできます:http ://www.microsoft.com/en-us/download/details.aspx?id = 35754