【问题标题】:cannot resolve symbol 'Twitter' - Twitter Fabric无法解析符号“Twitter”-Twitter Fabric
【发布时间】:2015-09-23 18:14:44
【问题描述】:

我在尝试为我的小 Android 应用程序使用 Twitter 登录 时遇到问题,它一直给出错误提示 Cannot find symbol 'Twitter' 我在网上搜索了几种解决方案包括下面这个,但没有找到任何可能的解决方案。

Twitter Fabric - Cannot Resolve Symbol

我已经清理、重建,甚至重新启动了我的 Android 工作室,尝试重新同步 Gradle,但还没有解决方案。

这是我的 Build.Gradle (Project) 下面

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://maven.fabric.io/public' }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}


allprojects {
    repositories {
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
}

这是我的 Build.Gradle(应用程序)

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    repositories {
        mavenCentral()
        maven { url 'https://maven.fabric.io/public' }
    }

    defaultConfig {
        applicationId "com.example.hp.navigationexercise"
        minSdkVersion 11
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])

    compile('com.twitter.sdk.android:twitter-core:1.3.1@aar') {
        transitive = true;
    }
}

这是我的活动

public class TestActivity extends ActionBarActivity {

    String TWITTER_KEY="mykey";
    String TWITTER_SECRET="mysecret";

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

        /* Twitter */
        TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
        Fabric.with(this, new Twitter(authConfig));
        setUpTwitterButton();
    }


    TwitterLoginButton twitterButton;
    private void setUpTwitterButton() {

        twitterButton = (TwitterLoginButton) findViewById(R.id.login_button);
        twitterButton.setCallback(new Callback<TwitterSession>() {
            @Override
            public void success(Result<TwitterSession> result) {

                Log.d("login:", "twitter:success");
                Log.d("Data", result.data.getUserName());

            }

            @Override
            public void failure(TwitterException exception) {
                Toast.makeText(getApplicationContext(),
                        "twitter Login failed",
                        Toast.LENGTH_SHORT).show();

            }
        });
    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        // Pass the activity result to the login button.
        twitterButton.onActivityResult(requestCode, resultCode,
                data);
    }

}

【问题讨论】:

    标签: android twitter twitter-fabric


    【解决方案1】:

    尝试将其添加到您的 gradle 中

    compile('com.twitter.sdk.android:twitter:1.3.2@aar') {
            transitive = true;
        }
    

    【讨论】:

    • 谢谢。有效。现在我的 Twitter 按钮变灰了。任何我也像这样在线检查过解决方案,github.com/twitterdev/cannonball-android/blob/master/app/src/…,但仍然没有工作
    • 请问您有什么想法吗?
    • 对不起,我还没有实现登录按钮,所以帮不上什么忙。
    • 请注意1.3.2 并非总是如此!
    【解决方案2】:

    我也遇到同样的问题,这对我有用。

    在同步 Gradle 文件后,我只是重建我的项目(Android Studio 文件菜单-> 构建-> 重建项目)。 就是这样。

    【讨论】:

      猜你喜欢
      • 2015-01-20
      • 1970-01-01
      • 2016-04-18
      • 2011-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多