LoginSignup
5
5

More than 5 years have passed since last update.

Xamarin.iOS で 100k以上のボディで通信できない問題と解決法

Posted at

前提

この記事は以下の前提がありまーす。

環境

  • OS X El Capitan 10.11.5
  • Xamarin Studio Version 6.0 (build 5174)
  • Xamarin.iOS Version: 9.8.0.323 (Xamarin Business)

備考

とりあえず今現在(2016/06/15)の最新バージョン

問題

この問題はHttps通信の場合 PostやらPutやらで100kぐらいのbodyがあるとエラーが発生します。
(Http通信も含むかどうかは知らないです。。。)

sampleCilent.cs
  var client = new HttpClient ();
  var bodyContent = new ByteArrayContent (new byte [100 * 1024]);
  var response = await client.PostAsync ("https://hoge/post", bodyContent);

エラーメッセージは Unknown Secure Transport error 'ClosedGraceful'. でした。

 解決法

Bugzilla の引用で解決

iOSプロジェクトのオプションから iOS build -> SSL/TLS Implementation の設定を
Mono(TLS v1.0)に変更する

一応 シミュレーターの設定とデバイスの設定で分けてる場合は両方必要。

これから

一応Bugzillaであがっているので今後解決されるのかな?
しかし 投稿の日付がリリース前ということはalpha betaの時からあるわけでそれを解決しないままリリースって…

もしくはこれ以外にbodyにセットする方法があるのかな。。。

終わり。

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5