【问题标题】:Converting UIImage to Stream将 UIImage 转换为流
【发布时间】:2014-02-22 09:18:32
【问题描述】:

我正在使用 buddy sdk

这个示例告诉我如何添加个人资料图片,我尝试了各种方式,但是当我尝试使用此代码时

client.CreateUserAsync("username","password").ContinueWith(r => { var user = r.Result;

// upload a profile photo
Stream photoStream = GetSomePhoto();
user.AddProfilePhotoAsync(photoStream);
});

这是我的代码,但它给了我数组问题

    var img = loginImagePicker.Image.AsPNG().AsStream(); 
    var hu = await user.AddProfilePhotoAsync(img);

这就是问题

有什么建议吗?

【问题讨论】:

  • 你能添加你得到的错误的描述吗?例如编译,运行时异常?
  • 确定我刚刚上传了图片,
  • 事实上,我只是尝试上传流文件但返回“字符大小太大”奇怪buddy.com/dotnetsdk/html/…这是sdk的链接
  • 事实上,我只是使用了你的流转换器(看到你的帖子),比如 aspng().asstream,它可以但是扔掉那个东西

标签: c# ios xamarin.ios stream uiimage


【解决方案1】:

从您的屏幕截图看来,您的问题是没有获取流,即

var img = loginImagePicker.Image.AsPNG().AsStream(); 

上面的行似乎有效。问题是你的SDK,下一个调用,即:

var hu = await user.AddProfilePhotoAsync(img);

尝试将某些内容(可能是图像)编码为 URI(请参阅source)。

URI 的大小是有限制的(您遇到的例外情况),所以要么是因为存在一些错误(URI 类型或 Buddy SDK),要么是您可以提供的图像大小受到限制。

在任何情况下,问题都与将UIImage 转换为Stream 无关,该部分有效 - 问题在于稍后在Stream 上做了什么。

【讨论】:

  • 我想这是一个错误,你还有其他建议吗?如果您接近伙伴框架,那么可悲的是没有服务子框架,因为您是石头,我在这里看到您的整个单点主题,感谢英雄的支持:)
  • buddy.com/developers/#Pictures_ProfilePhoto_Add检查windows phone 8 sdk,可以移植monotouch吗?
  • 使用您的链接,我在 Safari 和 Chrome (OSX) 上都只看到一个菜单(在左侧)和一个空白区域(没有代码或除了轻微的蓝色渐变背景之外的任何东西)。
  • 对不起,forums.xamarin.com/discussion/14232/… 检查这个,buddy.com/developers 我发给你的第一个链接在图片下方,添加个人资料图片,我在 xamarin hq 打开主题
猜你喜欢
  • 1970-01-01
  • 2015-07-30
  • 2012-07-15
  • 2013-01-01
  • 2015-12-12
  • 2011-09-22
  • 2013-05-04
  • 2011-12-29
  • 2011-04-19
相关资源
最近更新 更多