|
@@ -15,6 +15,7 @@ class TSBandRingTool:NSObject {
|
|
|
|
|
|
lazy var ringLoadingView: TSRingLoadingView = {
|
|
lazy var ringLoadingView: TSRingLoadingView = {
|
|
let ringLoadingView = TSRingLoadingView(frame: CGRectMake(0, 0, k_ScreenWidth, k_ScreenHeight))
|
|
let ringLoadingView = TSRingLoadingView(frame: CGRectMake(0, 0, k_ScreenWidth, k_ScreenHeight))
|
|
|
|
+// ringLoadingView.backgroundColor = .blue
|
|
return ringLoadingView
|
|
return ringLoadingView
|
|
}()
|
|
}()
|
|
weak var targetVC:UIViewController?
|
|
weak var targetVC:UIViewController?
|
|
@@ -58,12 +59,12 @@ class TSBandRingTool:NSObject {
|
|
fileURLString: String,
|
|
fileURLString: String,
|
|
fileName:String?,
|
|
fileName:String?,
|
|
completion: ((Bool) -> Void)? = nil) {
|
|
completion: ((Bool) -> Void)? = nil) {
|
|
-
|
|
|
|
|
|
+ self.targetVC = vc
|
|
if checkGarageBandInstallation() == false {
|
|
if checkGarageBandInstallation() == false {
|
|
completion?(false)
|
|
completion?(false)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- self.targetVC = vc
|
|
|
|
|
|
+
|
|
if fileURLString.contains("http") {
|
|
if fileURLString.contains("http") {
|
|
|
|
|
|
// TSLoadingAnimation.showLoading(in: self.targetVC?.view)
|
|
// TSLoadingAnimation.showLoading(in: self.targetVC?.view)
|
|
@@ -72,7 +73,7 @@ class TSBandRingTool:NSObject {
|
|
ringLoadingView.isRotating = true
|
|
ringLoadingView.isRotating = true
|
|
}
|
|
}
|
|
|
|
|
|
- TSCommonTool.downloadAndCacheFile(from: fileURLString) { [weak self] path, error in
|
|
|
|
|
|
+ TSCommonTool.downloadAndCacheFile(from: fileURLString,missingEx: "mp3") { [weak self] path, error in
|
|
guard let self = self else { return }
|
|
guard let self = self else { return }
|
|
// TSLoadingAnimation.hideLoading()
|
|
// TSLoadingAnimation.hideLoading()
|
|
ringLoadingView.removeFromSuperview()
|
|
ringLoadingView.removeFromSuperview()
|
|
@@ -187,11 +188,12 @@ extension TSBandRingTool : AVPlayerViewControllerDelegate, AVPictureInPictureCon
|
|
tutorialPlayer?.replaceCurrentItem(with: playerItem)
|
|
tutorialPlayer?.replaceCurrentItem(with: playerItem)
|
|
}
|
|
}
|
|
tutorialPlayer?.allowsExternalPlayback = true
|
|
tutorialPlayer?.allowsExternalPlayback = true
|
|
-
|
|
|
|
|
|
+// playContentView.backgroundColor = .red
|
|
targetVC?.view.addSubview(playContentView)
|
|
targetVC?.view.addSubview(playContentView)
|
|
|
|
|
|
let layer = AVPlayerLayer(player: tutorialPlayer)
|
|
let layer = AVPlayerLayer(player: tutorialPlayer)
|
|
layer.frame = CGRect(x: 0, y: 0, width: 1, height: 1)
|
|
layer.frame = CGRect(x: 0, y: 0, width: 1, height: 1)
|
|
|
|
+// layer.backgroundColor = UIColor.yellow.cgColor
|
|
playContentView.layer.addSublayer(layer)
|
|
playContentView.layer.addSublayer(layer)
|
|
|
|
|
|
let pictureVC = AVPictureInPictureController(playerLayer: layer)
|
|
let pictureVC = AVPictureInPictureController(playerLayer: layer)
|