티스토리 뷰

반응형

OS가 계속 업데이트 되면서 SNS 라이브러리도 계속 진화하고

iOS 버전도 올라가면서 이놈의 연동 설정은 계속 바뀌고 있다.

하지만 iOS6 이상부터는 계정이나, 키 없이도 기본 계정만 가지고 있으면 SNS에 날릴 수 있으니 이 얼마나 편한가..


다만 어디서 보냈는지 출저는 나오지 않는다.

사용자가 정해진 메시지 양식에 글을 덧 붙일 수 있다.


1. 프레임워크에 social 프레임 워크를 추가.

2. 해더에 프레임워크 #import <social/socialDefines.h>

3,SLComposeViewController 객채를 생성하여 viewController에 붙이면 된다.


-(void)sendTwitter

{

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter])

    {

        SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];

        [tweetSheet setInitialText:@"보낼 메시지"];

  [tweetSheet addImage:[UIImage imageNamed:@"img_twitter.png"]];

        [view presentViewController:tweetSheet animated:YES completion:nil];

    }

}else{

//설정에서 연동하라는 팝업 표출로 로그인 유도.

}


페이스북에 글을 보내고 싶다면 SLServiceTypeTwitter  속성을 SLServiceTypeFacebook 으로 바꿔주면 된다.


설정에 트위터, 페이스북 계정이 여러개일 경우에는

#import <Accounts/AccountsDefines.h>

해당 프레임워크를 추가하고 별도의 화면과 설정을 해줘도 된다. (ACAccountStore 검색)


하지만 위에서 처럼 alertView로 띄우는 방법이 번거러움을 덜고 개발하기엔 편한것 같다.

WebView, Library, iOS 제공 등 SNS 연동 방법은 여러가지이나 OS 버전만 허용한다면 SLComposeViewController를 사용하여 연동하는게 가장 심플한 것 같다.


결과 화면.




참조 블로그 주소 : http://www.raywenderlich.com/21558/beginning-twitter-tutorial-updated-for-ios-6




반응형
댓글
댓글쓰기 폼
공지사항