Android 将图片发布到 Facebook 评论

编程入门 行业动态 更新时间:2024-10-18 03:30:29
本文介绍了Android 将图片发布到 Facebook 评论的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时送ChatGPT账号..

这是我上一个问题的后续:

解决方案

下面使用:

 IntentsharingIntent = new Intent();字符串 imageUri = "file://" + requestsUri;sharedIntent.SetData(Android.Net.Uri.Parse(imageUri));

This is a followup to my previous question: Xamarin.Forms App return data to calling App

That works perfectly and I can share images to anywhere, except to Facebook comments. When I click the camera on the content box the app can be selected, I can select the image, Set result and Finish are called, and the app closes and it sends data to Facebook, and then however I then get the error : The image could not be uploaded, try again?

I can't find any fundamental differences between posting to a status or a comment, so I'm guessing it's subtle. Any thoughts on how I can change my intent to post properly?

Adding for completeness:

Bitmap b = null;
string url;
if (!string.IsNullOrEmpty(this.saleItems[i].ImageUrl))
{
    url = this.saleItems[i].ImageUrl;
}
else
{
    url = await FileHelper.GetLocalFilePathAsync(this.saleItems[i].Id);
}
//download
using (var webClient = new WebClient())
{
    var imageBytes = webClient.DownloadData(url);
    if (imageBytes != null && imageBytes.Length > 0)
    {
        b = BitmapFactory.DecodeByteArray(imageBytes, 0, imageBytes.Length);
    }
}
//set local path
var tempFilename = "test.png";
var sdCardPath = Android.OS.Environment.ExternalStorageDirectory.AbsolutePath;
var filePath = System.IO.Path.Combine(sdCardPath, tempFilename);
using (var os = new FileStream(filePath, FileMode.Create))
{
    b.Compress(Bitmap.CompressFormat.Png, 100, os);
}
b.Dispose();

var imageUri = Android.Net.Uri.Parse($"file://{sdCardPath}/{tempFilename}");

var sharingIntent = new Intent();
sharingIntent.SetAction(Intent.ActionSend);
sharingIntent.SetType("image/*");
sharingIntent.PutExtra(Intent.ExtraText, "some txt content");
sharingIntent.PutExtra(Intent.ExtraStream, imageUri);
sharingIntent.AddFlags(ActivityFlags.GrantReadUriPermission);

//await SaleItemDataService.Instance.BuySaleItemAsync(this.saleItem);

SetResult(Result.Ok, sharingIntent);
Finish();

解决方案

Use below:

        Intent sharingIntent = new Intent();
        string imageUri = "file://" + requestedUri;
        sharingIntent.SetData(Android.Net.Uri.Parse(imageUri));

这篇关于Android 将图片发布到 Facebook 评论的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

更多推荐

[db:关键词]

本文发布于:2023-04-24 17:58:16,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1068481.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:图片   Android   Facebook

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!