0

ステータスの更新をツイッターに投稿しようとしています。Twitter4j lib を使用しています。私のコードはクラッシュせずに実行されますが、ログの猫には「401: 認証資格情報 ( https://dev.twitter.com/pages/auth ) が見つからないか、正しくありません。有効なコンシューマー キー/シークレット、アクセス トークンが設定されていることを確認してください。 /secret であり、システム クロックは同期しています。

{"request":"\/1.1\/statuses\/update.json","error":"Read-only application cannot POST."}

助けはありますか?Twitterにサインアップし、読み取りと書き込みの権限を確認しました。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Runnable runnable = new Runnable() {
        public void run() {
            ConfigurationBuilder builder = new ConfigurationBuilder();
            builder.setOAuthConsumerKey("kkwfh72794883jjg");
            builder.setOAuthConsumerSecret("77j3jgweqwewerrud3434567hgfd");



            // Access Token
            String access_token = "lokiujyhtgrfedvwn325zckjdhdgeAHGsw23";
            // Access Token Secret
            String access_token_secret = "QsRgfgHJMsjeh5762JHF2dgswrfMNQljsG";

            AccessToken accessToken = new AccessToken(access_token, access_token_secret);
            Twitter twitter = new TwitterFactory(builder.build()).getInstance(accessToken);

            // Update status
            try {
                twitter4j.Status response = twitter.updateStatus("updated via myapp");

                Log.d("Status", "> " + response.getText());

                // Error in updating status


                } catch (TwitterException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                Log.d("Twitter Update Error", e.getMessage());
            }


        }
    };
    Thread mythread = new Thread(runnable);
    mythread.start();


}
4

2 に答える 2

0

私は同様の問題を抱えていました。私がしたことは:

  1. アプリに読み取りと書き込みのアクセス許可があるかどうかを確認します
  2. そうでない場合は、権限のラジオボタンをオンにして、[設定の更新] をクリックします。
  3. その後、手動でアクセス トークンを再生成する必要があります (コンシューマ キーも再生成しました)。

これが他の闘争者に役立つことを願っています。

于 2015-06-19T09:56:44.183 に答える