找不到符号 ExoPlayerFactory

Symbol ExoPlayerFactory not found

我快要发疯了。这根本没有意义。我已经在我的 build.gradle 文件中添加了所需的实现并将其同步得很好,但是当我尝试使用 ExoPlayer 时找不到它。我什至尝试使用自动完成手动输入导入行,com.google.android.exoplayer2 自动完成中唯一可用的是 BuildconfigR. 我不知道发生了什么.我有一个使用它的项目,一切都很棒。好久没打开了,想重新学习一下,打开了,现在怎么都找不到ExoPlayer的符号

这是我的 build.gradle 文件...

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "test.notreal.justatext"
        minSdkVersion 21
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }
    compileOptions {
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })

    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:animated-vector-drawable:28.0.0'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.android.support:design:28.0.0'
    implementation 'com.android.support:support-v13:28.0.0' //THIS
    implementation 'com.android.support:support-media-compat:28.0.0' //AND THIS
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.google.firebase:firebase-core:16.0.9'
    implementation 'com.google.firebase:firebase-auth:17.0.0'
    implementation 'com.google.firebase:firebase-database:17.0.0'
    implementation 'com.google.firebase:firebase-storage:17.0.0'
    implementation 'de.hdodenhof:circleimageview:1.3.0'
    implementation 'com.soundcloud.android:android-crop:1.0.1@aar'
    implementation 'com.jakewharton:butterknife:9.0.0-rc2'
    annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc2'
    implementation 'com.github.jd-alexander:LikeButton:0.2.3'
    implementation 'com.github.bumptech.glide:glide:4.8.0'
    implementation 'fr.tvbarthel.blurdialogfragment:lib:2.2.0'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.squareup.picasso:picasso:2.5.2'
    implementation 'com.nineoldandroids:library:2.4.0'
    implementation 'com.scottyab:aescrypt:0.0.1'
    implementation 'com.daimajia.slider:library:1.1.5@aar'
    implementation 'com.google.firebase:firebase-messaging:18.0.0'
    implementation 'com.google.android.exoplayer:exoplayer:r2.5.0' //RIGHT HERE
    implementation 'com.bignerdranch.android:recyclerview-multiselect:0.2'
    implementation 'com.theartofdev.edmodo:android-image-cropper:2.5.+'
    testImplementation 'junit:junit:4.12'
    implementation 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'
    implementation 'jp.wasabeef:glide-transformations:3.0.1'

}





apply plugin: 'com.google.gms.google-services'

在里面你可以看到...

implementation 'com.google.android.exoplayer:exoplayer:r2.5.0'

并且该应用程序将gradle正确同步,但在我的应用程序中,以下所有内容都是红色的...

import com.google.android.exoplayer2.ExoPlayerFactory;
import com.google.android.exoplayer2.SimpleExoPlayer;
import com.google.android.exoplayer2.extractor.DefaultExtractorsFactory;
import com.google.android.exoplayer2.extractor.ExtractorsFactory;
import com.google.android.exoplayer2.source.ExtractorMediaSource;
import com.google.android.exoplayer2.source.MediaSource;
import com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection;
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
import com.google.android.exoplayer2.trackselection.TrackSelection;
import com.google.android.exoplayer2.trackselection.TrackSelector;
import com.google.android.exoplayer2.ui.SimpleExoPlayerView;
import com.google.android.exoplayer2.upstream.BandwidthMeter;
import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
import com.google.android.exoplayer2.util.Util;

exoplayer2 之后的一切。是红色的。它找不到任何东西的符号。为了向自己保证我不会发疯,我开始了一个新项目,在我新的 build.gradle 文件中添加了 exoplayer 的实现,打开主 activity 并输入

SimpleExoPlayer player = ExoPlayerFactory.newSimpleInstance(this);

而且找不到符号。无法导入它,它仍然只显示 com.google.android.exoplayer2. 之后所有内容的 BuildConfigR 符号 我尝试更新到较新的版本,如 2.10.1,这会导致构建失败关于在全新的干净应用程序上合并 android 清单失败。所以我无法更新版本,但是突然间无论我做什么Android Studio 都找不到ExoPlayer 符号。

您使用的版本太旧,可能与Gradle版本冲突。 您可以尝试降级 Gradle 版本或升级 Exoplayer 到较新的 version,这是推荐的。

即使更新后仍然没有在包中找到 ExoPlayerFactory class,它已从 2.14.0 版本中删除

你应该使用 SimpleExoPlayer.Builder

在这里查看:https://github.com/google/ExoPlayer/releases