相关疑难解决方法(0)

如何在 WKWebView 中自动播放 YouTube 视频?

我编写了一个在 WKWebView 中播放 youtube 视频的代码。我想在加载屏幕时自动播放视频,并且内联视频不应在新屏幕中播放。下面是我的代码。

 @IBOutlet weak var myPlayer: WKWebView!
 override func viewDidLoad() {
    super.viewDidLoad()

    if let videoURL:URL = URL(string: 
    "https://www.youtube.com/embed/695PN9xaEhs?playsinline=1") {
    let request:URLRequest = URLRequest(url: videoURL)
    myPlayer.load(request)
  }
 }
Run Code Online (Sandbox Code Playgroud)

我已经在界面生成器中设置了 WKWebView 的配置。

界面生成器属性属性

在此输入图像描述

任何人都可以提供在加载视图时自动播放的建议吗?

ios swift wkwebview youtubeplayer

9
推荐指数
2
解决办法
1万
查看次数

如何检测AVplayer并从WKWebView获取当前视频的URL?

我正在使用下面的代码从UIWebView提取URL :它工作正常,但是,用于WKWebView的相同代码不再起作用。谁能帮我?在WKWebView中播放的视频不是全屏播放,而是Inlineplacyback。

我的代码是:

 NotificationCenter.default.addObserver(self, selector: #selector(self.playerItemBecameCurrent(_:)), name: NSNotification.Name("AVPlayerItemBecameCurrentNotification"), object: nil)

 @objc func playerItemBecameCurrent(_ sender : NSNotification){
    let playerItem: AVPlayerItem? = sender.object as? AVPlayerItem
    if playerItem == nil {
        print("player item nil")
        return
    }
    // Break down the AVPlayerItem to get to the path
    let asset = playerItem?.asset as? AVURLAsset
    let url: URL? = asset?.url
    let path = url?.absoluteString

    print(path!,"video url")
}
Run Code Online (Sandbox Code Playgroud)

回应网址:

https://r2---sn-po4g5uxa-5hql.googlevideo.com/videoplayback?txp=5531432&sparams=clen%2Cdur%2Cei%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Crypto%2Cmime%2Cmm 2Cms%2Cmv%2Cpcm2%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cexpire&IP = 103.37.181.55&ratebypass = YES&ID =邻AM9UWIaxopyYZX4gikGuswG8EMi3dhH_PPBMIqY5cbXj&到期= 1554400796& C = MWEB&fvip = 4&initcwndbps = …

ios avplayer swift wkwebview

8
推荐指数
2
解决办法
1968
查看次数

UIWebview中的Youtube视频自动播放

我在这个论坛上发现了许多关于嵌入youtube视频和自动播放的问题,但没有一个问题清除我的疑虑.

我找到了两种在UIWebView中嵌入youtube视频的方法

1)

NSString *youTubeHTMLTemplate = @"<html><head><style type=\"text/css\">body { background-color: transparent;color: white;}</style></head><body style=\"margin:0\"><embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" width=\"%0.0f\" height=\"%0.0f\"></embed></body></html>"; 
finalHtml = [NSString stringWithFormat:youTubeHTMLTemplate, fullYopuTubeUrl, htmlFrameWidth, htmlFrameHeight];
Run Code Online (Sandbox Code Playgroud)

2)

NSString *youTubeHTMLTemplate = @"<html><body style=\"margin:0;padding:0;\"><iframe class=\"youtube-player\" type=\"text/html\" width=\"%f\" height=\"%f\" src=\"http://www.youtube.com/embed/%@\" frameborder=\"0\" allowfullscreen></iframe></body></html>";
finalHtml = [NSString stringWithFormat:youTubeHTMLTemplate, htmlFrameWidth, htmlFrameHeight, videoID];
Run Code Online (Sandbox Code Playgroud)

如果我使用(1)方法并按照这里给出的方法我的视频自动播放.想法是在UIWebView中找到按钮并向其发送触摸事件.

如果我使用(2)并遵循相同的方法,视频不会自动播放.

我认为建议使用(2)方法,因为(1)仅用于Flash视频(对吗?).

无论如何(2)是可能的吗?这个链接说不.

谁能证实

  • 如果我是正确的,建议使用(2)
  • 无法使用(2)进行自动播放.

embed youtube uiwebview autoplay ios

5
推荐指数
1
解决办法
1万
查看次数

在UIWebview,iOS中的视频自动播放

我有URL例如https://www.youtube.com/watch?v=c2ccXwwmcnA.如果我将此URL UIWebView自动传递给play视频.我试过以下方法

选项1

@property (weak, nonatomic) IBOutlet UIWebView *webvie; 


  NSString *url=@"https://www.youtube.com/watch?v=7jYa7dfrXKU";

  self.webvie.allowsInlineMediaPlayback = YES;
 self.webvie.scrollView.bounces = NO;
self.webvie.mediaPlaybackRequiresUserAction = NO;

[self.webvie loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:url]]];
Run Code Online (Sandbox Code Playgroud)

选项2

NSString *youTubeHTMLTemplate = @"<html><head><style type=\"text/css\">body { background-color: transparent;color: white;}</style></head><body style=\"margin:0\"><embed id=\"yt\" src=\"%@\" type=\"application/x-shockwave-flash\" width=\"%0.0f\" height=\"%0.0f\"></embed></body></html>"; 
finalHtml = [NSString stringWithFormat:youTubeHTMLTemplate, fullYopuTubeUrl, htmlFrameWidth, htmlFrameHeight];
Run Code Online (Sandbox Code Playgroud)

选项-3

如何在UIWebView中自动播放YouTube视频

我不想在UIWebview播放youtube视频中自动播放

但所有选择都没有帮助我,

objective-c ios swift

3
推荐指数
1
解决办法
7717
查看次数