iphoneアプリのテスト版を配布するのに便利な
テストフライトってのがあります!

詳しいことは他のサイトでも見てみて下さい。
テストフライトとは

開発者、ユーザともに設定が完了してればすごく便利です。
でも設定がめんどくさいのでユーザ目線で手順まとめます。

①ユーザは開発者からのテストフライトの招待状メールを受取る。
※招待状メールはアプリをインストールしたいiphoneで開いて下さい。

$独学で作成!!金儲けiphoneアプリ

②メールの「Accept」ボタンを押してテストフライトのアカウントを作成する。
※以前にテストフライトのアカウントを作った場合はそのアカウントでログインする。

$独学で作成!!金儲けiphoneアプリ

③アカウントの作成できたら「Go to your Dashboard」ボタンをクリック
独学で作成!!金儲けiphoneアプリ

④「Register Device」ボタンを押す
独学で作成!!金儲けiphoneアプリ

⑤TestFlightをインストール
$独学で作成!!金儲けiphoneアプリ

ひとまずここまでできたら休憩します。
開発者が上記操作でudidを受取るのでアプリの配布準備をします。
そのため配布メールがくるまで待ちます。

休憩終了後
⑥開発者からアプリのインストールメールが届きます。
$独学で作成!!金儲けiphoneアプリ

⑦メールの「インストール」ボタンを押します。

⑧ページ遷移して「Install」ボタンを押すと完了!
appstoreでアプリをダウンロードする時のようにトップ画面にアプリがインストールされます。
たまにこの画面でInstallボタンが出ない時があります。その時は慌てず、下のほうにある「Re-Registore This Device」を押してみて下さい。その操作の後にインストールボタンが出ることがあります。

$独学で作成!!金儲けiphoneアプリ

ということでユーザはテストアプリをインストールできるようになります!
お疲れ様です。ジャマです。
iphoneアプリからfacebookに写真とコメントを
投稿してみたので方法を紹介します。

認証とかは置いといて
以下3行のコードでできちゃいます。

① NSData* pngData = [[NSDataalloc] initWithData:UIImagePNGRepresentation(UIimage)];
② NSMutableDictionary *params = [NSMutableDictionarydictionaryWithObjectsAndKeys:@"コメント",@"caption",pngData, @"picture",nil];
③[facebook requestWithMethodName:@"photos.upload" andParams:params andHttpMethod:@"POST" andDelegate:self];

ポイントとしては
①UIImageを.pngデータに変換
②@"caption"と写真のコメント、@"picture"と写真データをセットにした連想配列を作成
③requestWithMethodNameに@"photos.upload"を指定することで写真の投稿ができます。
お久しぶりです。ジャマです。
今回はios5から新設されたTwitter.frameworkを使ったので紹介します。

Twitter.frameworkを使うと簡単にiphoneアプリからツイッターに
ポストしたりデータを取得したりできます。
今までxauth認証を使って大変な思いでツイッターと連携してたのが
嘘のようです。

私のリサーチによるとTwitter.frameworkでの連携は2種類の方法あります。
・TWTweetComposeViewController
・TWRequest

TWTweetComposeViewController

これはios標準のダイアログを出してそこからツイッターに投稿します。
流れとして
ボタン押す(自作ボタン)→ダイアログが出る→ツイッターに投稿
となります。
簡単に実装できるのですがダイアログから投稿しないといけないので、
自分の好きなタイミングで投稿することができません。

ボタン押す(自作ボタン)→ツイッターに投稿
といった流れで投稿したい場合は
TWRequest
を使います。

TWTweetComposeViewControllerに関しては
この辺を参考にして下さい。
http://araking56.blog134.fc2.com/blog-entry-172.html

TWRequestは直接apiを叩いて投稿します。
自分がネットで探して切り貼りして作った写真と文字を同時に投稿するソースをアップしてみます。

写真と文字を投稿する時のポイントとしては
①apiを叩くためのurlの指定
https://upload.twitter.com/1/statuses/update_with_media.json

②画像送る処理、文字を送る処理を行う

画像
[request addMultiPartData:imageData withName:@"media[]"type:@"multipart/form-data"];

文字
[request addMultiPartData:[status dataUsingEncoding:NSUTF8StringEncoding] withName:@"status"type:@"multipart/form-data"];

③画像サイズは3MBまで
こんな感じで自作のボタンのアクションに投稿処理を書いておくと
ダイアログを経由せずにツイッターに投稿することができます。

ソースです。
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
ACAccountStore *account = [[ACAccountStorealloc] init];
ACAccountType *accountType = [account accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[account requestAccessToAccountsWithType:accountType withCompletionHandler:^(BOOL granted, NSError *error)
{
if (granted == YES)
{
NSArray *arrayOfAccounts = [account accountsWithAccountType:accountType];
ACAccount *acct = [arrayOfAccounts objectAtIndex:0];
NSURL *url =
[NSURLURLWithString:
@"https://upload.twitter.com/1/statuses/update_with_media.json"];

TWRequest *request =
[[TWRequestalloc] initWithURL:url parameters:nil
requestMethod:TWRequestMethodPOST];
[request setAccount:acct];

UIImage *image = [UIImage imageNamed:@"test.png"];
NSData *imageData = UIImagePNGRepresentation(image);


[request addMultiPartData:imageData
withName:@"media[]"type:@"multipart/form-data"];


NSString *status = @"投稿テスト";


[request addMultiPartData:[status dataUsingEncoding:NSUTF8StringEncoding]
withName:@"status"type:@"multipart/form-data"];


[request performRequestWithHandler:
^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
NSDictionary *dict =
(NSDictionary *)[NSJSONSerialization
JSONObjectWithData:responseData options:0error:nil];


NSLog(@"%@", dict);

dispatch_async(dispatch_get_main_queue(), ^{

});
}];

}

}];
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
参考サイト
http://iphonedevelopertips.com/core-services/ios-5-twitter-framework-part-1.html
http://iphonedevelopertips.com/core-services/ios-5-twitter-framework-part-2.html
https://dev.twitter.com/docs/ios/posting-images-using-twrequest