TheWidlarzGroup / react-native-video

A <Video /> component for react-native
https://docs.thewidlarzgroup.com/react-native-video/
MIT License
7.23k stars 2.9k forks source link

[BUG]: ios build fail #4289

Closed marwane1b3 closed 1 week ago

marwane1b3 commented 1 week ago

Version

^6.7.0

What platforms are you having the problem on?

iOS

System Version

ios 16.4

On what device are you experiencing the issue?

Real device, Simulator

Architecture

Old architecture

What happened?

tried all clearing and cleaning methods DerivedData and cache... the build fails no matter what in vscode this is what i get : r \=non-modular-include-in-framework-module -fmodule-name\=jsinspector_modern -Wno-trigraphs -fpascal-strings -O0 -fno-common -Wno-missing-field-initializers -Wno-missing-prototypes -Werror\=return-type -Wdocumentation -Wunreachable-code -Werror\=deprecated-objc-isa-usage -Werror\=objc-root-class -Wno-non-virtual-dtor -Wno-overloaded-virtual -Wno-exit-time-destructors -Wno-missing-braces -Wparentheses -Wswitch -Wunused-function -Wno-unused-label -Wno-unused-parameter -Wunused-variable -Wunused-value -Wempty-body -Wuninitialized -Wconditional-uninitialized -Wno-unknown-pragmas -Wno-shadow -Wno-four-char-constants -Wno-conversion -Wconstant-conversion -Wint-conversion -Wbool-conversion -Wenum-conversion -Wno-float-conversion -Wnon-literal-null-conversion -Wobjc-literal-conversion -Wshorten-64-to-32 -Wno-newline-eof -Wno-c++11-extensions -Wno-implicit-fallthrough -DPOD_CONFIGURATION_DEBUG\=1 -DDEBUG\=1 -DCOCOAPODS\=1 -isysroot.... Failed to build ios project. "xcodebuild" exited with error code '65'. To debug build logs further, consider building your app with Xcode.app, by opening 'GoToo.xcworkspace'. in xcode these are the errors --- Type 'AVPlayerItem' has no member 'newAccessLogEntryNotification' --- Type 'AVPlayerItem' has no member 'newAccessLogEntryNotification'.

Reproduction Link

repository link

Reproduction

Step to reproduce this bug are: swift language 5 > ios 16.4 xcode 14.3 iphone 12 pro Iphone 14 pro install package install pod run on ios > Fail .

github-actions[bot] commented 1 week ago

Thank you for your issue report. Please note that the following information is missing or incomplete:

Please update your issue with this information to help us address it more effectively.

Note: issues without complete information have a lower priority

There is a newer version of the library available. You are using version ^6.7.0, while the latest stable version is 6.7.0. Please update to the latest version and check if the issue still exists.

Note: If the issue still exists, please update the issue report with the latest information.

marwane1b3 commented 1 week ago

update had to downgrade the version to get the build working i use "react-native-video": "5.2.1", now works

freeboub commented 1 week ago

@marwane1b3 you should be able to comment the 2 problematic lines. You will just loose the onBandwithUpdate callback. There is no plan to support old xcode version...

BTW, I am not sure you will be able to publish your app on store if it is built with this xcode version: https://developer.apple.com/news/?id=fxu2qp7b

diff --git a/ios/Video/Features/RCTPlayerObserver.swift b/ios/Video/Features/RCTPlayerObserver.swift
index 6f73cfb9..3b693e79 100644
--- a/ios/Video/Features/RCTPlayerObserver.swift
+++ b/ios/Video/Features/RCTPlayerObserver.swift
@@ -283,12 +283,13 @@ class RCTPlayerObserver: NSObject, AVPlayerItemMetadataOutputPushDelegate, AVPla
                                                name: NSNotification.Name.AVPlayerItemFailedToPlayToEndTime,
                                                object: nil)

-        NotificationCenter.default.removeObserver(_handlers, name: AVPlayerItem.newAccessLogEntryNotification, object: player?.currentItem)
+/*        NotificationCenter.default.removeObserver(_handlers, name: AVPlayerItem.newAccessLogEntryNotification, object: player?.currentItem)

         NotificationCenter.default.addObserver(_handlers,
                                                selector: #selector(RCTPlayerObserverHandlerObjc.handleAVPlayerAccess(notification:)),
                                                name: AVPlayerItem.newAccessLogEntryNotification,
                                                object: player?.currentItem)
+ */
     }

     func clearPlayer() {