これはこれまでよりはるかに難しく、速いものが変化していることと、検索エンジンとの戦いでドキュメントを最新に保つのが難しいということがあります。最新の情報を提供する傾向があり、この場合、古くなって古くなり、もはや機能しなくなる。
ブルースの答えまでは、私は試みました。まず、私のモバイルアプリはAzureのApp Servicesに自動的に移行されたようです。次に、Microsoft Graphの実装は認証しますが、認証プロセスによって返された情報が、ユーザーを一意に識別するために使用するLive SDKから返された情報と一致しないため、切断を作成します。したがって、Graph実装を使用すると、私のユーザーは私がそれらのために保存するように要求したすべてのデータから切断されます。第3に、第2段落にリンクされている記事(6か月前に書かれているにもかかわらず)は古くなっており、古典的なAzure Portalなどの古いツールを使用して、新しいアプリケーションを作成することを想定しています。私が必要としていたような構成の取引。
私は真剣に努力を感謝しますが、ブルース。
昨年、私はOneDrive SDKを使用してUWPアプリケーションで認証を実装しました。私は新しいアプリでそれをやろうとして2つの問題に遭遇した:私は昨年使用
- バージョンが古い...フルバージョン(1.15 V 2.0.6)であった方法についてのチュートリアルの大多数があるとして私はインターネット上で見つけることができるSDKを使用する。すべてOneDriveClientExtensionsクラスに関するものです...もう存在しません。しかし、私は特に2015年のバージョンにこだわらず、アップグレードすることはできませんでした。最新バージョンはすでに6ヶ月ですから、とにかく恐ろしいです。
- 最新版では、認証目的でMicrosoft.OneDriveSDK.Authenticationパッケージもインストールする必要があります。これは最後に5か月前に更新されましたが、バージョン3.13のMicrosoft.IdentityModel.Clients.ActiveDirectoryのv2に依存しています(v2はまだ動作していますが)。これが本当に苦痛になるのは、UWP Community Toolkit Servicesライブラリに同じパッケージのv3が必要なため、Toolkit ServicesパッケージとOneDriveSDK認証パッケージを同じプロジェクトにインストールすることができないことです。幸いにも、UWP Servicesライブラリを私が望んだことをするために得ることができなかったので、私はそれを本当に必要としませんでした。
だから、私は私の溶液からUWPサービスパッケージを削除し、最新のOneDrive SDKパッケージをインストールし、そのバージョンを使用する方法の例を探して、インターネットを中心にrummagedと私は最終的に、この発見:
var scopes = new string[] { "wl.signin" };
var client = new OnlineIdAuthenticationProvider(scopes);
await client.AuthenticateUserAsync();
を
次に、クライアントのCurrentAccountSessionプロパティにアクセスしてUserIdを取得できます。
これは一時的な解決策であり、最終的にOneDrive SDKは廃止され、ActiveDirectoryパッケージのv3に依存するライブラリを使用する必要があると確信しています。