FirebaseOffline 无法转换为 android.app.Activity

FirebaseOffline cannot be cast to android.app.Activity

我正在使用 YouTube API 在我的应用程序中播放视频。视频 ID 从 Firebase 数据库加载。

这是数据库结构:

这是 Adapter ViewHolder 的代码:

 class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
    protected RelativeLayout relativeLayoutOverYouTubeThumbnailView;
    TextView channel_name;
    YouTubeThumbnailView youTubeThumbnailView;
    public ImageView playButton;


    public ViewHolder(@NonNull View itemView) {
        super(itemView);
        channel_name = itemView.findViewById(R.id.channel_name);
        playButton = itemView.findViewById(R.id.btnYoutube_player);
        playButton.setOnClickListener(this);
        relativeLayoutOverYouTubeThumbnailView = itemView.findViewById(R.id.relativeLayout_over_youtube_thumbnail);
        youTubeThumbnailView = itemView.findViewById(R.id.youtube_thumbnail);


    }

    @Override
    public void onClick(View view) {
        String id = list.get(getAdapterPosition()).getVid_ID();

       // ERROR IN BELOW LINE

        Intent intent = YouTubeStandalonePlayer.createVideoIntent((Activity) context, YoutubeConfig.getApiKey(), id, 100,
                true,
                false);
        context.startActivity(intent);

这是我的清单:

  <application
    android:name=".FirebaseOffline"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <activity android:name=".VideoActivity"
        android:configChanges="orientation|screenSize">
        <intent-filter>
            <action android:name=".Video.VideoActivity" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>

    </activity>

当我点击播放视频时,出现这个错误:

java.lang.ClassCastException: com.devapps.FirebaseOffline cannot be cast to android.app.Activity.

您需要将 activity 传递给您的 RecyclerView Adapter,然后将其更改为 activity。示例:在您的 activity(您调用 recyclerview 的地方)

adapter = new ExampleRecyclerAdapter(CurrentActivity.this, data);

在您的 RecyclerView 适配器中:

Activity activity;
ExampleRecyclerAdapter(CurrentActivity activity, Data data) {
this.activity = activity;
}

然后在您的代码中将其替换为 activity

context.startActivity(YouTubeStandalonePlayer.createVideoIntent(activity, DEVELOPER_KEY, VIDEO_ID));

}