- 2010年2月10日 23:08
- iPhone
やっと念願のiPhone開発です。しかもいきなり実践ですから、そりゃ恐ろしい。。。けど嬉しいという複雑な気持ちです。
リファレンス見たり、ネットで調べたりと、本当慣れるまで大変です。。。助けて〜
そんな中、ネットの情報には助けられているので、自分も基本的な開発Tipsをアウトプットしていきたいと思います。(自分用に)
今日やったこと。
・画像のアップロード(POST送信)
・アップロードした画像をダウンロード
まず画像のアップロード。
UIImagePickerController でPhotoLibraryから画像を取得します。
次にpickerで取得した画像をUIImageで取得。
UIImage *image = [info objectForKey:UIImagePickerControllerOriginalImage];
ここまでは書籍等に書いてありますね。
取得したUIImageをPOST送信できるようにNSData型に変換します。
NSData* imgData = [[[NSData alloc] initWithData:UIImagePNGRepresentation( image )] autorelease];
こんな感じ。UIImagePNGRepresentation( image )がなかなか出てこなかった。
参考ページ:
http://iphone-dev.g.hatena.ne.jp/tokorom/20100113/1263325674
あとはNSDataをセットして送信と。
NSMutableURLRequest *request;
request = [ NSMutableURLRequest requestWithURL : [ NSURL URLWithString : url ] ];
[ request setHTTPMethod : @"POST" ];
[ request setHTTPBody: imgData ];
connection = [ NSURLConnection connectionWithRequest : request delegate : self ];
サーバからの戻り値はデリゲートの
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{}
ですね。
またここでハマったのは、戻り値のNSDataを文字列に変換する方法。
自分の場合は、アップロードした画像のアドレスが文字列で戻るシステムなので文字列を取得しないといけません。答えはこれでした。
NSString *d = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
今度は、画像のダウンロード。
こちらはとても素敵なライブラリ ImageStore を使わせてもらいました。
http://d.hatena.ne.jp/Psychs/20081024/1224833636
これはむっちゃ簡単。
[imageStore getImage:imageUrl];
とURLをつっこむと、ダウンロード終了でデリゲート通知がありますので、DL後の処理をする感じです。
こうやってみると、今日一日で結構進んだな。
Tweet- Newer: iPhone 画像のリサイズとトリミングなど
- Older: Android Marketへアプリ登録した
Comments:0
Trackbacks:0
- TrackBack URL for this entry
- http://www.hirano-dept.com/mt/mt-tb.cgi/80
- Listed below are links to weblogs that reference
- iPhone開発 本格的に始動です。 from 袖触れ合うも多少の縁