             
             cpmoduleManager.willSection(cpu())
             
-            playerItem = backPlayer?.currentItem as! CPPlayerItem
-            playerAsset = playerItem.asset as! AVURLAsset
+            playerItem = backPlayer?.currentItem as? CPPlayerItem
+            playerAsset = playerItem!.asset as? AVURLAsset
             
             registerPlayerItemEvent()
             

    #if os(iOS)
        
    func appResignActive(notification: NSNotification) {
        playerstate.lastplay = player!.isPlaying()
        
        if !isAirplaying() {
            player!.pause()
        }
        
        cpmoduleManager.appResign()

    
    func deregisterPlayerItemEvent() {
        if keyobserver.status {
            playerItem!.removeObserver(self, forKeyPath:kStatusKey)
            keyobserver.status = false
        }
        
        if keyobserver.keep {
            playerItem!.removeObserver(self, forKeyPath:kPlaybackKeepUpKey)
            keyobserver.keep = false
        }
        
        if keyobserver.presentation {
            playerItem!.removeObserver(self, forKeyPath:kPresentationSizeKey)
            keyobserver.presentation = false
        }
        
        if keyobserver.duration {
            playerItem!.removeObserver(self, forKeyPath:kDurationKey)
            keyobserver.duration = false
        }
        
        if keyobserver.loaded {
            playerItem!.removeObserver(self, forKeyPath:kLoadedKey)
            keyobserver.loaded = false
        }
        
