안드로이드 개발 질문/답변
(글 수 45,052)
package com.andro.loveyahak;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import twitter4j.Twitter;
import twitter4j.Status;
import twitter4j.TwitterException;
import twitter4j.TwitterFactory;
import twitter4j.auth.AccessToken;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;
public class twitterActivity extends Activity implements OnClickListener{
/** Called when the activity is first created. */
private ArrayList<String> twitList;
private Twitter twitter;
@SuppressWarnings("deprecation")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.twitter);
Button b_class =(Button)findViewById(R.id.b_class);
b_class.setOnClickListener(this);
Button b_location =(Button)findViewById(R.id.b_location);
b_location.setOnClickListener(this);
Button b_time =(Button)findViewById(R.id.b_time);
b_time.setOnClickListener(this);
twitList = new ArrayList<String>();
try {
twitter = new TwitterFactory () .getInstance();
twitter.setOAuthConsumer(" 컨슈머 ID", "컨슈머 PW");
AccessToken accessToken =
new AccessToken("토큰", "토큰PW");
twitter.setOAuthAccessToken(accessToken);
List<Status> statuses = null;
try{
statuses = twitter.getFriendsTimeline();
}catch (TwitterException e)
{e.printStackTrace();
}
for (Status status : statuses) {
twitList.add(status.getCreatedAt().toString()+" - " + status.getUser().getName()+" : "+status.getText());
}
}catch (Exception e){
Toast.makeText(getBaseContext(),e.toString(),Toast.LENGTH_SHORT).show();
}
ListView listView = (ListView)findViewById(R.id.twit_list);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>
(this,android.R.layout.simple_list_item_1,twitList);
listView.setAdapter(arrayAdapter);
}
public void onClick (View v)
{
Intent ic =new Intent(this,kwamok.class);
Intent il =new Intent(this,locationActivity.class);
Intent it =new Intent(this,timeActivity.class);
if (v.getId() == R.id.b_class)
{startActivity(ic);
finish();
}
if (v.getId() == R.id.b_location)
{startActivity(il);
finish();
}
if (v.getId() == R.id.b_time)
{startActivity(it);
finish();
}
}
}실행하면 나머지는 다 되는데, 이것만 안되네요 ㅠ
실행하면 java.lang.NullPointerException 이 오류가 뜨면서 실행이 안되구요...
컨슈머랑 토큰 ID/ PW는 입력했구요 당연히..
트위터에서 지금 못읽어 오고 있는건가요??




twitter4j 라이브러리 버전을 뭐 쓰시는지 잘 모르겠으나
getFriendsTimeline() 메소드는 deprecated 되었습니다.
대신에 getHomeTimeline() 을 사용하도록 되었습니다.