iOS5부터는 iOS SDK 자체에 twitter.framework가 추가되어 쉽게 트위터와의 연동이 가능하게 되었다.
하지만 직접 연동하는 방법과 내부 framework를 이용하는 방법 간에 차이가 있다.
구현 복잡도를 생각했을 때,
당연히 내부 라이브러리(Twitter.framework)를 이용하는 것이 간편하다.
더욱이 Twitter 홈페이지에 가서 어플리케이션으로 등록하는 절차도 생략가능하니 얼마나 편한가?
출처가 중요한 데이터일 때,
미세한 차이는 바로 여기에 있다.
복잡도에서 설명했듯이 iOS에 내장된 트위터 프레임워크를 이용할 때
트위터 홈페이지에 가서 어플리케이션을 등록하지 않는다는 사실. 인지하였었나?
직접 연동 시에는 Oauth 특성 상 토큰을 부여받아야 하고 이를 위해서 서버에 어플리케이션 등록 과정을 거치게 되는데
이 과정이 생략되었다는 의미는 누군가 이 과정을 대신해주고 있다는 것이다. 즉, 앱스토어 등록 시스템에서 자동으로 등록한다는 것으로 생각해볼 수 있다.
조금 상세하게 살펴보자.
트위터 API를 연동하면 많은 데이터들이 나온다. 트윗 하나에 이렇게 많은 정보가 담겨있는지 놀란 분도 많을 것이다.
(직접 샘플을 보고 싶은 분은 링크를 눌러서 화면 하단에 나타나는 JSON 형태를 보라. 하나의 트윗이다..)
이 정보 중 source라는 것이 있다. 한국말로 설명하자면 출처. 트윗이 작성된 클라이언트 이름이다.
한 번이라도 트위터 홈페이지에서 어플리케이션을 등록해본 사람은 알겠지만 여기에는 개발자가 지정한 이름이 링크 형태로 표현된다.
즉, 아래 화면에서의 Name과 Website가 표시되는 것이다.
필자가 주로 맥에서 이용하는 echofon의 경우는
타임라인에 출처까지 표현이 되고 있어 트윗이 작성된 클라이언트가 무언지 그리고 해당 클라이언트가 어디서 서비스하고 있는지도 알 수 있다.
위 이미지에서 보면 회색 글자로 “x hours ago via XXXXX” 라고 보이는 것이 현재 언급 중인 출처이다. (회사 분들 트윗 몰래 보고 있다는 것 들켰….)
자, 그렇다면 직접 연동 시와 iOS 내부 라이브러리로 연동했을 때의 차이점을 보도록 하자.
직접 연동 시에는 위에서 설명한 것처럼 개발자가 생성한 어플리케이션에 세팅된 내용들이 출처로 표시된다. 물론 Website 역시..
하지만 내부 라이브러리로 연동했을 때는 두 가지 경우로 나뉜다.
첫 번째로 해당 클라이언트가 앱스토어에 등록이 된 경우다.
앞에서도 설명했지만 내부 라이브러리를 이용하여 연동하면 개발자가 토큰 발급을 위해서 따로 설정하는 것이 없다. 그렇다고 출처도 없을까?
출처는 앱스토어에 앱을 등록할 때 입력한 metadata 중 앱의 이름 + “on iOS”라고 표시되고 웹사이트 링크는 해당 앱의 앱스토어 링크로 자동 입력된다.
두 번째로 해당 클라이언트가 앱스토어에 등록되지 않은 경우. 개발 중이거나 Enterprise 배포했을 경우이다.
이 경우에는 출처를 표시할 기준인 metadata를 알 수가 없기 때문에 그냥 via iOS라고 표시되며, 링크를 보면 애플 공식 사이트로 연결되게 되어 있다.
이렇게 설명한 부분이 사실 트윗을 공유하는 것에 큰 영향력은 없을 것이다.
하지만, 트윗을 분석하거나 트위터 클라이언트 종류를 분석하는 등 분석을 요하거나 출처를 이용하여 뭔가 창의적인 무언가를 행할 때는 분명 이슈가 될 것이며,
출처의 중요성을 인식하고 이를 통해 마케팅을 할려고 한다면 분명 고려되어야 할 사항일 것이다.
내부 프레임워크 사용이 좋지만은 않다는 것을 설명하기 위해서 끄적여봤다.