首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >YoutubePlayer API无限加载问题

YoutubePlayer API无限加载问题
EN

Stack Overflow用户
提问于 2022-04-20 20:06:35
回答 1查看 39关注 0票数 0

每当发生新的地质变化时,我就开始一个新的意图。

GeofenceTransitionService.java

代码语言:javascript
复制
Intent intent = new Intent(GeofenceTransitionService.this, VideoActivity.class);
intent.putExtra("videoID", videoURLS[i]);
startActivity(intent);

我把片段初始化成这样,

VideoActivity.java

代码语言:javascript
复制
public class VideoActivity extends AppCompatActivity implements YouTubePlayer.OnInitializedListener {


    private String videoID;

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

        videoID = getIntent().getStringExtra("videoID");
        YouTubePlayerFragment youTubePlayerFragment = (YouTubePlayerFragment) getFragmentManager()
                .findFragmentById(R.id.youtubePlayerFragment);

        youTubePlayerFragment.initialize("APIKEY", this);
    }

    
    @Override
    public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean wasRestored) {

        youTubePlayer.setFullscreenControlFlags(YouTubePlayer.FULLSCREEN_FLAG_CONTROL_ORIENTATION |
                YouTubePlayer.FULLSCREEN_FLAG_ALWAYS_FULLSCREEN_IN_LANDSCAPE);


        if(!wasRestored) {
            youTubePlayer.cueVideo(videoID);
        }
        youTubePlayer.setFullscreenControlFlags(0);
        youTubePlayer.setFullscreen(true);
        youTubePlayer.setShowFullscreenButton(false);
    }
    @Override
    public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult error) {

        final int REQUEST_CODE = 1;

        if(error.isUserRecoverableError()) {
            error.getErrorDialog(this,REQUEST_CODE).show();
        } else {
            String errorMessage = String.format("There was an error initializing the YoutubePlayer (%1$s)", error.toString());
            Toast.makeText(this, errorMessage, Toast.LENGTH_LONG).show();
        }
    }
}

activity_video.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".VideoActivity">

        <fragment
            android:id="@+id/youtubePlayerFragment"
            android:name="com.google.android.youtube.player.YouTubePlayerFragment"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
    
</androidx.appcompat.widget.LinearLayoutCompat>

但这段视频永远不会载入。不过,它在其他活动中效果很好。我已经检查了清单,但是找不到任何区分这个活动和另一个有效活动的东西。对于其他活动,我使用相同的代码来初始化另一个片段。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-21 05:31:16

我忘了分割视频url来获取videoID。

代码语言:javascript
复制
intent.putExtra("videoID", videoURLS[i].split("=")[1]);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71945599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档