Java 将Twitter API添加到我的应用程序

Java 将Twitter API添加到我的应用程序,java,android,twitter,Java,Android,Twitter,我希望能够在我的应用程序中添加Twitter时间线,并允许用户更新其状态。问题是我不知道如何进入登录屏幕。我试着在网上搜索,但是他们网站上所有的都过时了,我想为4.0+版开发 到目前为止,我得到的是:代码似乎根本不起作用,因为我在Android>4.0的Android应用程序中使用了它,所以它不会使用15或更高的SDK编译。这一次我还在使用图书馆,所有的文件都被更新了 package com.shirwa.texthero.fragments; import android.app.Activ

我希望能够在我的应用程序中添加Twitter时间线,并允许用户更新其状态。问题是我不知道如何进入登录屏幕。我试着在网上搜索,但是他们网站上所有的都过时了,我想为4.0+版开发

到目前为止,我得到的是:代码似乎根本不起作用,因为我在Android>4.0的Android应用程序中使用了它,所以它不会使用15或更高的SDK编译。这一次我还在使用图书馆,所有的文件都被更新了

package com.shirwa.texthero.fragments;

import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.shirwa.texthero.R;

public class TwitterTab extends Activity implements OnClickListener {

    static final String TAG = "MyTwitter";

    TwitterTab twitter;
    SharedPreferences prefs;

    Button buttonUpdate;
    Button buttonPrefs;
    EditText textStatus;

    @Override
    public void onClick(View src) {
        String status = textStatus.getText().toString();

        Log.d(TAG, "Clicked on " + status);

        // Toast
        Toast.makeText(this, textStatus.getText(), Toast.LENGTH_LONG).show();

        // set twitter status
        twitter.updateStatus(status);

        // reset status string
        textStatus.setText("");
    }

    /** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // find views by id
        buttonUpdate = (Button) findViewById(R.id.buttonUpdate);
        textStatus = (EditText) findViewById(R.id.textStatus);

        // Add listener
        buttonUpdate.setOnClickListener(this);

        // Initialize twitter
        prefs = PreferenceManager.getDefaultSharedPreferences(this);
        String username = prefs.getString("username", "n/a");
        String password = prefs.getString("password", "n/a");
        if (username != null && password != null) {
            twitter = new Twitter(username, password);
        }
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu, menu);
        return true;
    }

    // Called when menu item is selected //
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
        case R.id.menuPrefs:
            // Launch Prefs activity
            Intent i = new Intent(TwitterTab.this, Prefs.class);
            startActivity(i);
            Log.d(TAG, "MenuPrefs starting Prefs");
            Toast.makeText(TwitterTab.this, textStatus.getText(),
                    Toast.LENGTH_LONG).show();
            break;
        }
        return true;
    }
}

您在那里实际使用的API是什么

没有为android构建的官方twitter SDK,只有他们的RESTAPI。为此,我个人可以推荐library Scribe处理与twitter的集成。它可以处理RESTAPI中指定的身份验证、发布和任何其他功能


您在那里实际使用的API是什么

没有为android构建的官方twitter SDK,只有他们的RESTAPI。为此,我个人可以推荐library Scribe处理与twitter的集成。它可以处理RESTAPI中指定的身份验证、发布和任何其他功能

在我开始之前,让我先说一句,我通常不发布链接,只发布答案。作为一个初学者,我可能已经这样做了,但现在几乎没有了。除非这篇文章是合法有效的,没有链接就无法完整回答

要开始通过你的应用程序登录Twitter,这里有一个精彩的小教程,可以让你开始:

以及在登录后发布状态更新

您还可以查看托管在GitHub上的示例。这是使用应用程序登录Twitter并发布状态更新的另一个示例

至于奖金,其实只有一件。一旦你对Android的整体开发感到有点满意,或者当你可以开始破解其他开发者的代码时,这里有一个完整的功能,它是开源的,在上可用,并且在上相当流行

这是一个指向GitHub上搜索结果的链接,关键词为Android和twitter4J:

在我开始之前,让我先说,我通常不发布链接,只发布答案。作为一个初学者,我可能已经这样做了,但现在几乎没有了。除非这篇文章是合法有效的,没有链接就无法完整回答

要开始通过你的应用程序登录Twitter,这里有一个精彩的小教程,可以让你开始:

以及在登录后发布状态更新

您还可以查看托管在GitHub上的示例。这是使用应用程序登录Twitter并发布状态更新的另一个示例

至于奖金,其实只有一件。一旦你对Android的整体开发感到有点满意,或者当你可以开始破解其他开发者的代码时,这里有一个完整的功能,它是开源的,在上可用,并且在上相当流行


这是一个指向GitHub上搜索结果的链接,关键词为Android和twitter4J:

首先,你必须验证你的应用程序,这需要2个secretkey,在你注册应用程序时,twitter会提供给你

第二,您需要使用Oauth进行身份验证,您可以在谷歌上搜索它,然后单独尝试

第三,处理回调并处理所需的响应。

首先,你必须对你的应用进行身份验证,这需要2个secretkey,在你注册应用时,twitter会提供给你

第二,您需要使用Oauth进行身份验证,您可以在谷歌上搜索它,然后单独尝试

第三,处理回调并处理所需的响应。

我已经在我的应用程序中开发了TWITTER。它正在成功运行。下面是

你可以为你的应用程序开发。

我已经在我的应用程序中开发了TWITTER。它正在成功运行。下面是


你可以为你的应用程序开发。

你不知道是什么?您列出了代码,但没有列出问题本身。让你的问题更清楚一点。您发布的代码中有什么不起作用。我进行了编辑。对不起,一开始不清楚。对不起。我还是不明白。您是否被困于完成登录?你在推特上发帖吗?你在获取时间线时卡住了吗?您是否一直在让应用程序在较低的SDK上运行?我完全迷路了。我无法登录。如果可以的话。通过登录,我应该能够获取时间线..啊。现在我终于明白了。查看我的帖子,了解更多信息和一些额外的好处-你不知道是什么?您列出了代码,但没有列出问题本身。让你的问题更清楚一点。您发布的代码中有什么不起作用。我进行了编辑。对不起,一开始不清楚。对不起。我还是不明白。您是否被困于完成登录?你被困在Twitt上了吗
呃?你在获取时间线时卡住了吗?您是否一直在让应用程序在较低的SDK上运行?我完全迷路了。我无法登录。如果可以的话。通过登录,我应该能够获取时间线..啊。现在我终于明白了。查看我的帖子,了解更多信息和一些额外的好处-你需要像我链接的Scribe这样的第三方库来处理oauth到twitter的连接并使用它的RESTAPI。等等,所以我会在main.java中实现它,或者为它创建一个单独的类?你需要像Scribe这样的第三方库,我链接它来处理oauth到twitter的连接,并使用它的REST API。等等,所以我会在main.java中实现它,或者为它创建一个单独的类?