【发布时间】:2011-09-23 11:47:28
【问题描述】:
我已经构建了 2 个项目,我的主要项目和一个在 Twitter 上发布的项目。我已经将 twitter 导入到 main 中,现在正在尝试将其连接起来。下面是导入代码。问题是我知道我错过了可能与上下文有关的东西?我刚刚总结了下面我的主要项目中包含的内容,以便您更好地理解(希望如此)。
import com.tweet.t.TweetToTwitterActivity;
TweetToTwitterActivity twitter = new TweetToTwitterActivity();
twitter.buttonLogin(v);
这是 TweetToTwitterActivity
public class TweetToTwitterActivity extends Activity {
private SharedPreferences mPrefs;
/** Twitter4j object */
private Twitter mTwitter;
private RequestToken mReqToken;
public void buttonLogin(View v) {
mPrefs = getSharedPreferences("twitterPrefs", MODE_PRIVATE);
// Load the twitter4j helper
mTwitter = new TwitterFactory().getInstance();
// Tell twitter4j that we want to use it with our app
mTwitter.setOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);
if (mPrefs.contains(PREF_ACCESS_TOKEN)) {
Log.i(TAG, "Repeat User");
loginAuthorisedUser();
} else {
Log.i(TAG, "New User");
loginNewUser();
}
}
Logcat 产生此错误
09-23 11:27:40.034: ERROR/AndroidRuntime(229): java.lang.NullPointerException
09-23 11:27:40.034: ERROR/AndroidRuntime(229): at android.content.ContextWrapper.getSharedPreferences(ContextWrapper.java:146)
09-23 11:27:40.034: ERROR/AndroidRuntime(229): at com.tweet.t.TweetToTwitterActivity.buttonLogin(TweetToTwitterActivity.java:74)
并指向这条线。
mPrefs = getSharedPreferences("twitterPrefs", MODE_PRIVATE);
【问题讨论】:
-
你的 onCreate() 方法在哪里.. 发布这个活动的完整代码,以便我们了解..