developer's diary

最近はc#のエントリが多いです

monotouch-samplesのHttpClientを見てみる。

今日はあまり時間がとれなく、サンプルを見て実機に転送してみることに。 https://github.com/xamarin/monotouch-samples/tree/master/HttpClient

       public override bool FinishedLaunching (UIApplication app, NSDictionary options)
        {
            window.AddSubview (navigationController.View);
            
            //ボタンのイベント追加
            button1.TouchDown += Button1TouchDown;

            //UITableViewへ設定(TableViewRocks.csに実装がある)
            TableViewSelector.Configure (this.stack, new string [] {
                "http  - WebRequest",
                "https - WebRequest",
                "http  - NSUrlConnection"
            });
    
            //レンダリング                          
            window.MakeKeyAndVisible ();
            
            return true;
        }

        void Button1TouchDown (object sender, EventArgs e)
        {
            // Do not queue more than one request
            if (UIApplication.SharedApplication.NetworkActivityIndicatorVisible)
                return;
            
            switch (stack.SelectedRow ()){
            case 0:
                //.netのWebRequestを利用したサンプル(アクセス先はapi.twitter.com)
                new DotNet (this).HttpSample ();
                break;
            
            case 1:
                //.netのWebRequestを利用したサンプル(https:アクセス先はgmail)
                new DotNet (this).HttpSecureSample ();
                break;
                
            case 2:
                //CocoaのNSUrlRequestを利用したサンプル(アクセス先はapi.twitter.com)
                new Cocoa (this).HttpSample ();
                break;
            }
        }

こんな感じのアプリです。 実機に転送してプロキシ環境確認してみよう。

トップページの画面

f:id:mitsugi-bb:20130306081139p:plain

httpsのサンプル結果

f:id:mitsugi-bb:20130306081148p:plain

httpのサンプル結果(WebRequestも、NSUrlRequestも結果は同じ)

f:id:mitsugi-bb:20130306081203p:plain