gpt4 book ai didi

c# - 使用google drive Api上传图片文件

转载 作者:行者123 更新时间:2023-11-30 00:10:13 32 4
gpt4 key购买 nike

尝试使用驱动 API 和 Xamarin (C#) 通过我的应用程序从用户的手机 (Android) 上传图像文件(已经存在)到他的谷歌驱动器上。有几种上传解决方案,但它们都显示上传新文件..例如

Google Drive API implementation Xamarin Android

Upload file into google drive folder using Xamarin.Android

@sushihangover 给出的解决方案都创建一个新的文本文件,然后通过 v3 API 上传它。我也查看了 API,但无法解决问题。

最佳答案

upload image files using google drive Api

您可以使用以下代码将图像文件上传到 Google 云端硬盘:

DriveClass.DriveApi.NewDriveContents(client).SetResultCallback(new System.Action<IDriveApiDriveContentsResult>((result)=> {

//Create MetadataChangeSet
MetadataChangeSet metadataChangeSet = new MetadataChangeSet.Builder()
.SetTitle("Test.jpg")
.SetMimeType("image/jpeg").Build();

var contents = result.DriveContents;

//push the bitmap data to DriveContents
bitmapFromYourPicture.Compress(CompressFormat.Jpeg, 1, contents.OutputStream);
IntentSender intentSender = DriveClass.DriveApi
.NewCreateFileActivityBuilder()
.SetInitialMetadata(metadataChangeSet)
.SetInitialDriveContents(contents)
.Build(client);

StartIntentSenderForResult(intentSender, 2, null, 0, 0, 0);
}));

如果你使用 intent 选择图像图片,你可以像这样得到图片 Bitmap :

protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (requestCode == 0)
{
var uri = data.Data;

System.IO.Stream image_stream = ContentResolver.OpenInputStream(uri);
Bitmap getBitmap = BitmapFactory.DecodeStream(image_stream);
}
}

关于c# - 使用google drive Api上传图片文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48268063/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com