2017-03-11 3 views
0

Xamarin.Formsでは、私はOneDriveにアクセスするためにUWP上のOneDrive SDKを使用しています。私は/アップロードする小さなデータファイルをダウンロードし、私は、ファイルのも、LastModifiedDateは変更するには、次のコードを使用しています:Android Xamarin.Auth 1.2.2アップロードしたクラウドストレージファイルを更新する方法LastModifiedDate?

Item itemUpdate1 = new Item(); 
itemUpdate1.FileSystemInfo = new Microsoft.OneDrive.Sdk.FileSystemInfo {LastModifiedDateTime = lastModifiedDateTime }; 
await oneDriveClient1.Drive.Items[item1.Id].Request().UpdateAsync(itemUpdate1); 

は、Android上で、私はOneDriveへのアクセスにXamarin.Authを使用して、私は、ファイルのも、LastModifiedDateは更新する方法を見つけ出すことはできません。私は、ログインしてファイルをアップロードするには、次のコードを使用しています:

var auth = new OAuth2Authenticator(clientId: clientId, scope: storageScopes1, authorizeUrl: new System.Uri("https://login.live.com/oauth20_authorize.srf"), 
    redirectUrl: new System.Uri("https://login.live.com/oauth20_desktop.srf")); 

System.Uri dataFileUri = new System.Uri("https://api.onedrive.com/v1.0/drive/special/approot:/" + dataFileName1 + ":/content"); 
var requestUpload = new OAuth2Request("PUT", dataFileUri, null, account); 

私はOAuth2Requestは、ファイルのLastModifiedDate更新するために使用することができるかどうかを知りたいのか、それを行うための別の方法がある場合は? ご協力いただきありがとうございます。

答えて

0

短い回答はいいえ。 Xamarin.Authは、アプリケーションとOneDrive Rest APIの間の認証を処理するだけです。

OneDriveでファイルのプロパティを変更する場合は、UWPプロジェクトでのようにAndroid用OneDrive SDKを使用するか、アップロードするときと同じようにRest APIを使用してこれらの変更を直接行う必要がありますファイル。あなたは(LastModifiedDateのような)ファイルのプロパティを変更するOneDrive REST APIのエンドポイントを得ることができる場合は、上記のコードで行ったように

UPDATE 1

System.Uri dataFileUri = new System.Uri("https://api.onedrive.com/v1.0/drive/special/approot:/" + dataFileName1 + ":/content"); 
var requestUpload = new OAuth2Request("PUT", dataFileUri, null, account); 

あなたができるDOかもしれませんそれはOAuth2Requestである。

OneDrive Dev Portalにアクセスし、その情報をドキュメントから入手してください。

+0

ご協力いただきありがとうございます。 Xamarin.AuthのOAuth2Requestを使用してファイルをアップロードしていますので、OAuth2Requestを使用してファイルの変更日を更新する方法があると考えました。 Android用OneDriveSDKを試しましたが、Microsoft.OneDriveSDK.AuthenticationをAndroid用に動作させることができませんでした。Android用のXamarin.Authを使用して、すべてXamarin.AuthをUWP用に使用でき、 OneDriveSDKを使用したり、OneDriveClientとしてXamarin.Auth認証アカウントを使用できれば、認証以外の目的でOneDriveSDKを使用することもできます。 – MV12

+0

遅れて申し訳ありません。あなたのお勧めに続いて、私はonedrive.comのドキュメントに再度アクセスし、私が読んでいなかったページを見つけました。 https://dev.onedrive.com/items/upload_post.htmによると、Multipart Uploadを使用してlastModifiedDateTimeを変更する方法があります。 lastModifiedDateTimeを更新するために使用できる文字列を作成しようとしました。私の問題は、この更新文字列をどこに置くべきかわからないことです。体内に置かなければならないのか、それとも単にウリの最後に追加するのか?私はほとんど成功しないで両方の方法を試みた。ほとんどの場合、私は悪い要求を受けます。 – MV12

関連する問題