| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // ViewController.swift
- // Tencent is pleased to support the open source community by making vap available.
- import UIKit
- import QGVAPlayer
- final class ViewController: UIViewController, LNVAPPlaybackDelegate {
- private let vapButton = UIButton()
- private var playerView: LNVAPPlayerView?
- override func viewDidLoad() {
- super.viewDidLoad()
- vapButton.frame = CGRect(x: 0, y: 100, width: view.frame.width, height: 90)
- vapButton.backgroundColor = .lightGray
- vapButton.setTitle("LN Swift API", for: .normal)
- vapButton.addTarget(self, action: #selector(playVap), for: .touchUpInside)
- view.addSubview(vapButton)
- }
- @objc private func playVap() {
- playerView?.removeFromSuperview()
- let player = LNVAPFacade.lnMakePlayerView(frame: view.bounds)
- player.center = view.center
- player.delegate = self
- player.enterBackgroundOperation = .stop
- player.lnSetMute(true)
- player.lnEnableOldVersion(true)
- player.lnAddTapGesture(target: self, action: #selector(onTap(_:)))
- view.addSubview(player)
- playerView = player
- let mp4Path = "\(Bundle.main.resourcePath ?? "")/Resource/vap.mp4"
- player.lnPlay(filePath: mp4Path, repeatCount: -1)
- }
- @objc private func onTap(_ gesture: UIGestureRecognizer) {
- playerView?.lnStop()
- gesture.view?.removeFromSuperview()
- }
- func lnPlayerDidStop(_ playerView: LNVAPPlayerView) {
- DispatchQueue.main.async {
- playerView.removeFromSuperview()
- }
- }
- }
|