我在我的ionic项目中使用了Cordova YoutubeVideoPlayer插件。它在IOS的android.But中工作得很好,它不能处理带有连字符(-)的视频id (例如:"6L-ZHjUhcQY")。它与所有其他urls都工作得很好。我怎么才能解决这个问题。
.controller('menuController', function () {
var id = "6L-ZHjUhcQY";
YoutubeVideoPlayer.openVideo(id);
});发布于 2017-06-19 13:03:13
在调试器中,变量中是否正确保存了带连字符的视频In?这可能是字符编码问题,也可能是插件本身的问题。
发布于 2017-07-06 12:18:04
通过更新一些文件https://github.com/fingentffts/CordovaYoutubeVideoPlayer修复了ios问题
现在我在android标签页上发现了一些问题。
即使屏幕被锁定,视频仍在播放。而且连字符视频也不能在三星标签中播放。
发布于 2017-07-06 15:41:33
通过在插件中编辑YoutubeVideoPlayer.java文件中的代码也修复了安卓问题
private Intent createYoutubeIntent(String videoId) {
// if (Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP){
Intent intent;
Context cordovaContext = cordova.getActivity();
String version = YouTubeIntents.getInstalledYouTubeVersionName(cordovaContext);
if(version != null && version.startsWith("11.16") && YouTubeIntents.canResolvePlayVideoIntent(cordovaContext)) {
intent = YouTubeIntents.createPlayVideoIntent(cordovaContext, videoId);
} else {
if(YouTubeIntents.canResolvePlayVideoIntentWithOptions(cordovaContext)){
intent = YouTubeIntents.createPlayVideoIntentWithOptions(cordovaContext, videoId, true, true);
} else {
intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=" + videoId), cordovaContext, YouTubeActivity.class);
intent.putExtra("videoId", videoId);
ConfigXmlParser parser = new ConfigXmlParser();
parser.parse(cordovaContext);
CordovaPreferences prefs = parser.getPreferences();
intent.putExtra("YouTubeApiId", prefs.getString("YouTubeDataApiKey","YOUTUBE_API_KEY"));
}
}
return intent;
// }
//return new Intent(null, Uri.parse("ytv://" + videoId), cordova.getActivity(), OpenYouTubePlayerActivity.class);
}https://stackoverflow.com/questions/44622526
复制相似问题