2017-03-28 4 views
0

私のアンドロイドアプリケーションからツイートを投稿するために、ユーザーが既にTwitterに接続しているかどうかをチェックしたいと思います。ファブリックを使用して、私はこのコードを経由してTwitterSessionを確認してください。ファブリック:TwitterSession always null

TwitterCore twitterCore = TwitterCore.getInstance(); 
TwitterSession twitterSession = twitterCore.getSessionManager().getActiveSession(); 
return (twitterSession != null && !twitterSession.getAuthToken().isExpired()); 

問題はtwitterSessionは、私はTwitterのアプリケーションに接続していた場合でも、常にnullであるということです。

どうすればこの問題を解決できますか?

答えて

0

最初にonCreateで初期化する必要があります。私はTwitterの数字を使用し、それはそのような気にいらinitilize:

TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); 
     Fabric.with(this, new Answers(), new TwitterCore(authConfig), new Digits()); 
     StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() 
       .detectAll() 
       .penaltyLog() 
       .build()); 

     StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() 
       .detectAll() 
       .penaltyLog() 
       .build()); 

     final Digits digits = new Digits.Builder() 
       .withDigitsEventLogger(new AnswersLogger()) 
       .build(); 

私はthis page

+0

を見て、私はtwitterSessionかのonCreateにtwitterCoreを初期化する必要があると思いますが? –

+0

どうすればいいですか?なぜなら私は単純なクラスでこの関数を使用していて、アクティビティでは使用していないからです。 –

+0

あなたはアクティブなセッションよりもあなたのベースアクティビティまたはログインアクティビティでそれを初期化する必要があります。このウェブサイトをご覧ください。彼らはサンプルコードを与える –