Android 용 App을 개발중에 ID, Password 로 로그인 해서 간단한 글을 남기는 기능이 필요해서
정보를 조사중에 아래와 같은 내용을 찾았다.
oAuth 기능을 이용하려면 WebView 를 통해 로그인을 하고, PIN값을 받아서 다시 입력해야 하는 번거로움이 있는데, 이를 피하기 위해서 xAuth 를 사용하려 하니 아래와 같은 제약 사항이 있었다.
정보를 조사중에 아래와 같은 내용을 찾았다.
oAuth 기능을 이용하려면 WebView 를 통해 로그인을 하고, PIN값을 받아서 다시 입력해야 하는 번거로움이 있는데, 이를 피하기 위해서 xAuth 를 사용하려 하니 아래와 같은 제약 사항이 있었다.
1. 트위터에 사용할 Application을 등록 한다
http://dev.twitter.com/apps/new 에서 Application을 등록한다.
http://dev.twitter.com/apps/new 에서 Application을 등록한다.
2. ConsumerKey 와 ConsumerSecret을 확인한다.
http://dev.twitter.com/apps 페이지에서 해당 Application 이름을 클릭 ->상세보기에서 확인 가능
3. xAuth 방식을 사용하기 위해서는 api@twitter.com 으로 간단한 어플리케이션 소개, Key값들, App ID 등을 보내서 인증을 받아야 한다.
1~2일 정도가 소요된다고 한다.
이 인증을 받지 않으면
The screen name / password combination seems to be invalid.
라는 Exception 을 만나게 된다.
위 준비 과정이 모두 끝나면 아래와같이 작성하여 정보를 전송 할 수 있다.
아래의 소스에서 accessToken을 저장해 두면 다시 로그인 하지 않아도 메세지를 바로 전송 할 수 있음을 참고 하자.
----------------------------------------------------------------------------------
public void sendTwitter() {
String consumer_key = "발급받은 consumerKey";
String consumer_secret = "발급받은 consumerSecret";
String ID ="사용자 ID";
String Password = "사용자 password";
String message = "보낼 메세지";
try {
AccessToken accessToken = null;
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.setOAuthConsumerKey(consumer_key);
builder.setOAuthConsumerSecret(consumer_secret);
Configuration config = builder.build();
OAuthAuthorization oauth = new OAuthAuthorization(config , consumer_key,consumer_secret );
accessToken = oauth.getOAuthAccessToken(ID, Password);
TwitterFactory facrory = new TwitterFactory(config);
Twitter twitter = facrory.getOAuthAuthorizedInstance(accessToken);
Status status = twitter.updateStatus(message); // twitter 인증 테스트
Log.d("TwitterTest" , "Success updated status : " + status.getText());
}
catch (TwitterException e) {
Log.d("TwitterTest" , "Failed : " + e.getMessage());
}
}
---------------------------------------------------------------------------------
3. xAuth 방식을 사용하기 위해서는 api@twitter.com 으로 간단한 어플리케이션 소개, Key값들, App ID 등을 보내서 인증을 받아야 한다.
1~2일 정도가 소요된다고 한다.
이 인증을 받지 않으면
The screen name / password combination seems to be invalid.
라는 Exception 을 만나게 된다.
위 준비 과정이 모두 끝나면 아래와같이 작성하여 정보를 전송 할 수 있다.
아래의 소스에서 accessToken을 저장해 두면 다시 로그인 하지 않아도 메세지를 바로 전송 할 수 있음을 참고 하자.
----------------------------------------------------------------------------------
public void sendTwitter() {
String consumer_key = "발급받은 consumerKey";
String consumer_secret = "발급받은 consumerSecret";
String ID ="사용자 ID";
String Password = "사용자 password";
String message = "보낼 메세지";
try {
AccessToken accessToken = null;
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.setOAuthConsumerKey(consumer_key);
builder.setOAuthConsumerSecret(consumer_secret);
Configuration config = builder.build();
OAuthAuthorization oauth = new OAuthAuthorization(config , consumer_key,consumer_secret );
accessToken = oauth.getOAuthAccessToken(ID, Password);
TwitterFactory facrory = new TwitterFactory(config);
Twitter twitter = facrory.getOAuthAuthorizedInstance(accessToken);
Status status = twitter.updateStatus(message); // twitter 인증 테스트
Log.d("TwitterTest" , "Success updated status : " + status.getText());
}
catch (TwitterException e) {
Log.d("TwitterTest" , "Failed : " + e.getMessage());
}
}
---------------------------------------------------------------------------------
출처 : 딩굴딩굴 곰탱이
댓글 없음:
댓글 쓰기