bitmovin-player-react-native 0.44.1-alpha.0 → 1.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +11 -0
- package/.eslintrc.js +7 -0
- package/.gitattributes +3 -0
- package/.prettierignore +11 -0
- package/.ruby-version +1 -0
- package/.swiftlint.yml +171 -0
- package/Brewfile +2 -0
- package/CHANGELOG.md +627 -0
- package/CONTRIBUTING.md +255 -0
- package/TODO.md +0 -0
- package/android/.editorconfig +8 -0
- package/android/build.gradle +78 -75
- package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/android/gradle/wrapper/gradle-wrapper.properties +7 -0
- package/android/gradle.properties +1 -0
- package/android/gradlew +248 -0
- package/android/gradlew.bat +92 -0
- package/android/ktlint.gradle +31 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/ActivityLifecycleListener.kt +51 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/BitmovinCastManagerModule.kt +32 -55
- package/android/src/main/java/com/bitmovin/player/reactnative/BufferModule.kt +33 -45
- package/android/src/main/java/com/bitmovin/player/reactnative/CustomMessageHandlerModule.kt +84 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/DebugModule.kt +6 -14
- package/android/src/main/java/com/bitmovin/player/reactnative/DecoderConfigModule.kt +89 -44
- package/android/src/main/java/com/bitmovin/player/reactnative/DrmModule.kt +80 -99
- package/android/src/main/java/com/bitmovin/player/reactnative/EventSubscription.kt +22 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/FullscreenHandlerModule.kt +100 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/MediaSessionPlaybackManager.kt +5 -5
- package/android/src/main/java/com/bitmovin/player/reactnative/NetworkModule.kt +98 -56
- package/android/src/main/java/com/bitmovin/player/reactnative/OfflineModule.kt +132 -186
- package/android/src/main/java/com/bitmovin/player/reactnative/PlayerAnalyticsModule.kt +37 -36
- package/android/src/main/java/com/bitmovin/player/reactnative/PlayerModule.kt +252 -528
- package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerPackage.kt +11 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerView.kt +558 -213
- package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerViewManager.kt +99 -286
- package/android/src/main/java/com/bitmovin/player/reactnative/ResultWaiter.kt +58 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/SourceModule.kt +77 -151
- package/android/src/main/java/com/bitmovin/player/reactnative/Types.kt +44 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/UuidModule.kt +12 -15
- package/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt +296 -456
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ListExtension.kt +89 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/MapExtension.kt +95 -0
- package/android/src/main/java/com/bitmovin/player/reactnative/offline/OfflineContentManagerBridge.kt +20 -52
- package/android/src/main/java/com/bitmovin/player/reactnative/ui/CustomMessageHandlerBridge.kt +10 -20
- package/android/src/main/java/com/bitmovin/player/reactnative/ui/FullscreenHandlerBridge.kt +4 -9
- package/app.plugin.js +21 -0
- package/build/BitmovinPlayerReactNative.types.d.ts +18 -0
- package/build/BitmovinPlayerReactNative.types.d.ts.map +1 -0
- package/build/BitmovinPlayerReactNative.types.js +2 -0
- package/build/BitmovinPlayerReactNative.types.js.map +1 -0
- package/build/adaptationConfig.d.ts +18 -0
- package/build/adaptationConfig.d.ts.map +1 -0
- package/build/adaptationConfig.js +2 -0
- package/build/adaptationConfig.js.map +1 -0
- package/build/advertising.d.ts +175 -0
- package/build/advertising.d.ts.map +1 -0
- package/build/advertising.js +37 -0
- package/build/advertising.js.map +1 -0
- package/build/analytics/config.d.ts +194 -0
- package/build/analytics/config.d.ts.map +1 -0
- package/build/analytics/config.js +2 -0
- package/build/analytics/config.js.map +1 -0
- package/build/analytics/index.d.ts +3 -0
- package/build/analytics/index.d.ts.map +1 -0
- package/build/analytics/index.js +3 -0
- package/build/analytics/index.js.map +1 -0
- package/build/analytics/player.d.ts +24 -0
- package/build/analytics/player.d.ts.map +1 -0
- package/build/analytics/player.js +30 -0
- package/build/analytics/player.js.map +1 -0
- package/build/analytics/playerAnalyticsModule.d.ts +13 -0
- package/build/analytics/playerAnalyticsModule.d.ts.map +1 -0
- package/build/analytics/playerAnalyticsModule.js +3 -0
- package/build/analytics/playerAnalyticsModule.js.map +1 -0
- package/build/audioSession.d.ts +33 -0
- package/build/audioSession.d.ts.map +1 -0
- package/build/audioSession.js +21 -0
- package/build/audioSession.js.map +1 -0
- package/build/audioTrack.d.ts +39 -0
- package/build/audioTrack.d.ts.map +1 -0
- package/build/audioTrack.js +2 -0
- package/build/audioTrack.js.map +1 -0
- package/build/bitmovinCastManager.d.ts +58 -0
- package/build/bitmovinCastManager.d.ts.map +1 -0
- package/build/bitmovinCastManager.js +64 -0
- package/build/bitmovinCastManager.js.map +1 -0
- package/build/bufferApi.d.ts +85 -0
- package/build/bufferApi.d.ts.map +1 -0
- package/build/bufferApi.js +60 -0
- package/build/bufferApi.js.map +1 -0
- package/build/bufferConfig.d.ts +42 -0
- package/build/bufferConfig.d.ts.map +1 -0
- package/build/bufferConfig.js +2 -0
- package/build/bufferConfig.js.map +1 -0
- package/build/components/PlayerView/events.d.ts +310 -0
- package/build/components/PlayerView/events.d.ts.map +1 -0
- package/build/components/PlayerView/events.js +2 -0
- package/build/components/PlayerView/events.js.map +1 -0
- package/build/components/PlayerView/index.d.ts +10 -0
- package/build/components/PlayerView/index.d.ts.map +1 -0
- package/build/components/PlayerView/index.js +72 -0
- package/build/components/PlayerView/index.js.map +1 -0
- package/build/components/PlayerView/native.d.ts +30 -0
- package/build/components/PlayerView/native.d.ts.map +1 -0
- package/build/components/PlayerView/native.js +6 -0
- package/build/components/PlayerView/native.js.map +1 -0
- package/build/components/PlayerView/nativeEvents.d.ts +437 -0
- package/build/components/PlayerView/nativeEvents.d.ts.map +1 -0
- package/build/components/PlayerView/nativeEvents.js +2 -0
- package/build/components/PlayerView/nativeEvents.js.map +1 -0
- package/build/components/PlayerView/pictureInPictureConfig.d.ts +22 -0
- package/build/components/PlayerView/pictureInPictureConfig.d.ts.map +1 -0
- package/build/components/PlayerView/pictureInPictureConfig.js +2 -0
- package/build/components/PlayerView/pictureInPictureConfig.js.map +1 -0
- package/build/components/PlayerView/playerViewConfig.d.ts +111 -0
- package/build/components/PlayerView/playerViewConfig.d.ts.map +1 -0
- package/build/components/PlayerView/playerViewConfig.js +51 -0
- package/build/components/PlayerView/playerViewConfig.js.map +1 -0
- package/build/components/PlayerView/properties.d.ts +61 -0
- package/build/components/PlayerView/properties.d.ts.map +1 -0
- package/build/components/PlayerView/properties.js +2 -0
- package/build/components/PlayerView/properties.js.map +1 -0
- package/build/components/index.d.ts +5 -0
- package/build/components/index.d.ts.map +1 -0
- package/build/components/index.js +5 -0
- package/build/components/index.js.map +1 -0
- package/build/debug.d.ts +46 -0
- package/build/debug.d.ts.map +1 -0
- package/build/debug.js +52 -0
- package/build/debug.js.map +1 -0
- package/build/decoder/decoderConfig.d.ts +96 -0
- package/build/decoder/decoderConfig.d.ts.map +1 -0
- package/build/decoder/decoderConfig.js +6 -0
- package/build/decoder/decoderConfig.js.map +1 -0
- package/build/decoder/decoderConfigModule.d.ts +14 -0
- package/build/decoder/decoderConfigModule.d.ts.map +1 -0
- package/build/decoder/decoderConfigModule.js +31 -0
- package/build/decoder/decoderConfigModule.js.map +1 -0
- package/build/decoder/index.d.ts +26 -0
- package/build/decoder/index.d.ts.map +1 -0
- package/build/decoder/index.js +50 -0
- package/build/decoder/index.js.map +1 -0
- package/build/drm/drmModule.d.ts +55 -0
- package/build/drm/drmModule.d.ts.map +1 -0
- package/build/drm/drmModule.js +3 -0
- package/build/drm/drmModule.js.map +1 -0
- package/build/drm/fairplayConfig.d.ts +91 -0
- package/build/drm/fairplayConfig.d.ts.map +1 -0
- package/build/drm/fairplayConfig.js +2 -0
- package/build/drm/fairplayConfig.js.map +1 -0
- package/build/drm/index.d.ts +112 -0
- package/build/drm/index.d.ts.map +1 -0
- package/build/drm/index.js +191 -0
- package/build/drm/index.js.map +1 -0
- package/build/drm/widevineConfig.d.ts +58 -0
- package/build/drm/widevineConfig.d.ts.map +1 -0
- package/build/drm/widevineConfig.js +2 -0
- package/build/drm/widevineConfig.js.map +1 -0
- package/build/events.d.ts +692 -0
- package/build/events.d.ts.map +1 -0
- package/build/events.js +2 -0
- package/build/events.js.map +1 -0
- package/build/hooks/index.d.ts +2 -0
- package/build/hooks/index.d.ts.map +1 -0
- package/build/hooks/index.js +2 -0
- package/build/hooks/index.js.map +1 -0
- package/build/hooks/usePlayer.d.ts +8 -0
- package/build/hooks/usePlayer.d.ts.map +1 -0
- package/build/hooks/usePlayer.js +10 -0
- package/build/hooks/usePlayer.js.map +1 -0
- package/build/hooks/useProxy.d.ts +18 -0
- package/build/hooks/useProxy.d.ts.map +1 -0
- package/build/hooks/useProxy.js +16 -0
- package/build/hooks/useProxy.js.map +1 -0
- package/build/index.d.ts +32 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +32 -0
- package/build/index.js.map +1 -0
- package/build/liveConfig.d.ts +13 -0
- package/build/liveConfig.d.ts.map +1 -0
- package/build/liveConfig.js +2 -0
- package/build/liveConfig.js.map +1 -0
- package/build/media.d.ts +85 -0
- package/build/media.d.ts.map +1 -0
- package/build/media.js +2 -0
- package/build/media.js.map +1 -0
- package/build/mediaControlConfig.d.ts +62 -0
- package/build/mediaControlConfig.d.ts.map +1 -0
- package/build/mediaControlConfig.js +2 -0
- package/build/mediaControlConfig.js.map +1 -0
- package/build/mediaTrackRole.d.ts +28 -0
- package/build/mediaTrackRole.d.ts.map +1 -0
- package/build/mediaTrackRole.js +2 -0
- package/build/mediaTrackRole.js.map +1 -0
- package/build/modules/AudioSessionModule.d.ts +8 -0
- package/build/modules/AudioSessionModule.d.ts.map +1 -0
- package/build/modules/AudioSessionModule.js +7 -0
- package/build/modules/AudioSessionModule.js.map +1 -0
- package/build/modules/BitmovinCastManagerModule.d.ts +11 -0
- package/build/modules/BitmovinCastManagerModule.d.ts.map +1 -0
- package/build/modules/BitmovinCastManagerModule.js +3 -0
- package/build/modules/BitmovinCastManagerModule.js.map +1 -0
- package/build/modules/BufferModule.d.ts +16 -0
- package/build/modules/BufferModule.d.ts.map +1 -0
- package/build/modules/BufferModule.js +3 -0
- package/build/modules/BufferModule.js.map +1 -0
- package/build/modules/DebugModule.d.ts +8 -0
- package/build/modules/DebugModule.d.ts.map +1 -0
- package/build/modules/DebugModule.js +3 -0
- package/build/modules/DebugModule.js.map +1 -0
- package/build/modules/PlayerModule.d.ts +188 -0
- package/build/modules/PlayerModule.d.ts.map +1 -0
- package/build/modules/PlayerModule.js +3 -0
- package/build/modules/PlayerModule.js.map +1 -0
- package/build/modules/SourceModule.d.ts +51 -0
- package/build/modules/SourceModule.d.ts.map +1 -0
- package/build/modules/SourceModule.js +3 -0
- package/build/modules/SourceModule.js.map +1 -0
- package/build/modules/UuidModule.d.ts +8 -0
- package/build/modules/UuidModule.d.ts.map +1 -0
- package/build/modules/UuidModule.js +3 -0
- package/build/modules/UuidModule.js.map +1 -0
- package/build/nativeInstance.d.ts +49 -0
- package/build/nativeInstance.d.ts.map +1 -0
- package/build/nativeInstance.js +20 -0
- package/build/nativeInstance.js.map +1 -0
- package/build/network/index.d.ts +50 -0
- package/build/network/index.d.ts.map +1 -0
- package/build/network/index.js +102 -0
- package/build/network/index.js.map +1 -0
- package/build/network/networkConfig.d.ts +151 -0
- package/build/network/networkConfig.d.ts.map +1 -0
- package/build/network/networkConfig.js +21 -0
- package/build/network/networkConfig.js.map +1 -0
- package/build/network/networkModule.d.ts +29 -0
- package/build/network/networkModule.d.ts.map +1 -0
- package/build/network/networkModule.js +3 -0
- package/build/network/networkModule.js.map +1 -0
- package/build/offline/index.d.ts +8 -0
- package/build/offline/index.d.ts.map +1 -0
- package/build/offline/index.js +8 -0
- package/build/offline/index.js.map +1 -0
- package/build/offline/offlineContentConfig.d.ts +18 -0
- package/build/offline/offlineContentConfig.d.ts.map +1 -0
- package/build/offline/offlineContentConfig.js +2 -0
- package/build/offline/offlineContentConfig.js.map +1 -0
- package/build/offline/offlineContentManager.d.ts +90 -0
- package/build/offline/offlineContentManager.d.ts.map +1 -0
- package/build/offline/offlineContentManager.js +177 -0
- package/build/offline/offlineContentManager.js.map +1 -0
- package/build/offline/offlineContentManagerListener.d.ts +174 -0
- package/build/offline/offlineContentManagerListener.d.ts.map +1 -0
- package/build/offline/offlineContentManagerListener.js +17 -0
- package/build/offline/offlineContentManagerListener.js.map +1 -0
- package/build/offline/offlineContentOptions.d.ts +29 -0
- package/build/offline/offlineContentOptions.d.ts.map +1 -0
- package/build/offline/offlineContentOptions.js +2 -0
- package/build/offline/offlineContentOptions.js.map +1 -0
- package/build/offline/offlineDownloadRequest.d.ts +19 -0
- package/build/offline/offlineDownloadRequest.d.ts.map +1 -0
- package/build/offline/offlineDownloadRequest.js +2 -0
- package/build/offline/offlineDownloadRequest.js.map +1 -0
- package/build/offline/offlineModule.d.ts +32 -0
- package/build/offline/offlineModule.d.ts.map +1 -0
- package/build/offline/offlineModule.js +3 -0
- package/build/offline/offlineModule.js.map +1 -0
- package/build/offline/offlineSourceOptions.d.ts +12 -0
- package/build/offline/offlineSourceOptions.d.ts.map +1 -0
- package/build/offline/offlineSourceOptions.js +2 -0
- package/build/offline/offlineSourceOptions.js.map +1 -0
- package/build/offline/offlineState.d.ts +23 -0
- package/build/offline/offlineState.d.ts.map +1 -0
- package/build/offline/offlineState.js +24 -0
- package/build/offline/offlineState.js.map +1 -0
- package/build/playbackConfig.d.ts +88 -0
- package/build/playbackConfig.d.ts.map +1 -0
- package/build/playbackConfig.js +2 -0
- package/build/playbackConfig.js.map +1 -0
- package/build/player.d.ts +308 -0
- package/build/player.d.ts.map +1 -0
- package/build/player.js +445 -0
- package/build/player.js.map +1 -0
- package/build/playerConfig.d.ts +83 -0
- package/build/playerConfig.d.ts.map +1 -0
- package/build/playerConfig.js +2 -0
- package/build/playerConfig.js.map +1 -0
- package/build/remoteControlConfig.d.ts +38 -0
- package/build/remoteControlConfig.d.ts.map +1 -0
- package/build/remoteControlConfig.js +2 -0
- package/build/remoteControlConfig.js.map +1 -0
- package/build/source.d.ts +216 -0
- package/build/source.d.ts.map +1 -0
- package/build/source.js +167 -0
- package/build/source.js.map +1 -0
- package/build/styleConfig.d.ts +120 -0
- package/build/styleConfig.d.ts.map +1 -0
- package/build/styleConfig.js +38 -0
- package/build/styleConfig.js.map +1 -0
- package/build/subtitleFormat.d.ts +27 -0
- package/build/subtitleFormat.d.ts.map +1 -0
- package/build/subtitleFormat.js +28 -0
- package/build/subtitleFormat.js.map +1 -0
- package/build/subtitleTrack.d.ts +55 -0
- package/build/subtitleTrack.d.ts.map +1 -0
- package/build/subtitleTrack.js +2 -0
- package/build/subtitleTrack.js.map +1 -0
- package/build/thumbnail.d.ts +38 -0
- package/build/thumbnail.d.ts.map +1 -0
- package/build/thumbnail.js +2 -0
- package/build/thumbnail.js.map +1 -0
- package/build/tweaksConfig.d.ts +197 -0
- package/build/tweaksConfig.d.ts.map +1 -0
- package/build/tweaksConfig.js +25 -0
- package/build/tweaksConfig.js.map +1 -0
- package/build/ui/customMessageHandlerModule.d.ts +27 -0
- package/build/ui/customMessageHandlerModule.d.ts.map +1 -0
- package/build/ui/customMessageHandlerModule.js +3 -0
- package/build/ui/customMessageHandlerModule.js.map +1 -0
- package/build/ui/custommessagehandler.d.ts +56 -0
- package/build/ui/custommessagehandler.d.ts.map +1 -0
- package/build/ui/custommessagehandler.js +54 -0
- package/build/ui/custommessagehandler.js.map +1 -0
- package/build/ui/custommessagehandlerbridge.d.ts +33 -0
- package/build/ui/custommessagehandlerbridge.d.ts.map +1 -0
- package/build/ui/custommessagehandlerbridge.js +72 -0
- package/build/ui/custommessagehandlerbridge.js.map +1 -0
- package/build/ui/custommessagesender.d.ts +5 -0
- package/build/ui/custommessagesender.d.ts.map +1 -0
- package/build/ui/custommessagesender.js +2 -0
- package/build/ui/custommessagesender.js.map +1 -0
- package/build/ui/fullscreenHandlerModule.d.ts +20 -0
- package/build/ui/fullscreenHandlerModule.d.ts.map +1 -0
- package/build/ui/fullscreenHandlerModule.js +3 -0
- package/build/ui/fullscreenHandlerModule.js.map +1 -0
- package/build/ui/fullscreenhandler.d.ts +18 -0
- package/build/ui/fullscreenhandler.d.ts.map +1 -0
- package/build/ui/fullscreenhandler.js +2 -0
- package/build/ui/fullscreenhandler.js.map +1 -0
- package/build/ui/fullscreenhandlerbridge.d.ts +26 -0
- package/build/ui/fullscreenhandlerbridge.d.ts.map +1 -0
- package/build/ui/fullscreenhandlerbridge.js +67 -0
- package/build/ui/fullscreenhandlerbridge.js.map +1 -0
- package/build/ui/index.d.ts +3 -0
- package/build/ui/index.d.ts.map +1 -0
- package/build/ui/index.js +3 -0
- package/build/ui/index.js.map +1 -0
- package/expo-module.config.json +40 -0
- package/ios/AppLifecycleDelegate.swift +25 -0
- package/ios/AudioSessionModule.swift +14 -40
- package/ios/BitmovinCastManagerModule.swift +30 -69
- package/ios/BufferModule.swift +26 -62
- package/ios/CustomMessageHandlerBridge.swift +11 -18
- package/ios/CustomMessageHandlerModule.swift +61 -63
- package/ios/DebugModule.swift +6 -27
- package/ios/DrmModule.swift +105 -379
- package/ios/Event+JSON.swift +1 -0
- package/ios/FullscreenHandlerBridge.swift +12 -5
- package/ios/FullscreenHandlerModule.swift +73 -57
- package/ios/LockedBox.swift +21 -0
- package/ios/ModuleRegistry+Generics.swift +11 -0
- package/ios/NetworkModule.swift +78 -82
- package/ios/OfflineContentManagerBridge.swift +11 -38
- package/ios/OfflineModule.swift +136 -454
- package/ios/PlayerAnalyticsModule.swift +24 -52
- package/ios/PlayerModule.swift +192 -770
- package/ios/RCTConvert+BitmovinPlayer.swift +38 -312
- package/ios/RNBitmovinPlayer.h +1 -8
- package/ios/RNBitmovinPlayer.podspec +47 -0
- package/ios/RNPlayerView.swift +600 -77
- package/ios/RNPlayerViewManager.swift +96 -210
- package/ios/Registry.swift +2 -2
- package/ios/ResultWaiter.swift +66 -0
- package/ios/SourceModule.swift +104 -223
- package/ios/UuidModule.swift +9 -18
- package/package.json +67 -71
- package/plugin/build/FeatureFlags.d.ts +24 -0
- package/plugin/build/FeatureFlags.js +2 -0
- package/plugin/build/index.d.ts +7 -0
- package/plugin/build/index.js +10 -0
- package/plugin/build/withAppGradleDependencies.d.ts +7 -0
- package/plugin/build/withAppGradleDependencies.js +49 -0
- package/plugin/build/withBitmovinAndroidConfig.d.ts +7 -0
- package/plugin/build/withBitmovinAndroidConfig.js +159 -0
- package/plugin/build/withBitmovinConfig.d.ts +7 -0
- package/plugin/build/withBitmovinConfig.js +21 -0
- package/plugin/build/withBitmovinIosConfig.d.ts +7 -0
- package/plugin/build/withBitmovinIosConfig.js +53 -0
- package/plugin/src/FeatureFlags.ts +21 -0
- package/plugin/src/index.ts +9 -0
- package/plugin/src/withAppGradleDependencies.ts +80 -0
- package/plugin/src/withBitmovinAndroidConfig.ts +224 -0
- package/plugin/src/withBitmovinConfig.ts +24 -0
- package/plugin/src/withBitmovinIosConfig.ts +71 -0
- package/plugin/tsconfig.json +9 -0
- package/plugin/tsconfig.tsbuildinfo +1 -0
- package/prettier.config.js +7 -0
- package/scripts/format-android.sh +2 -0
- package/scripts/format-swift.sh +3 -0
- package/scripts/lint-android.sh +2 -0
- package/scripts/lint-swift.sh +3 -0
- package/scripts/pre-commit.sh +14 -0
- package/scripts/setup-hooks.sh +58 -0
- package/src/BitmovinPlayerReactNative.types.ts +19 -0
- package/src/adaptationConfig.ts +1 -1
- package/src/advertising.ts +1 -1
- package/src/analytics/config.ts +4 -4
- package/src/analytics/player.ts +4 -6
- package/src/analytics/playerAnalyticsModule.ts +19 -0
- package/src/audioSession.ts +4 -6
- package/src/audioTrack.ts +1 -1
- package/src/bitmovinCastManager.ts +14 -10
- package/src/bufferApi.ts +1 -3
- package/src/bufferConfig.ts +2 -2
- package/src/components/PlayerView/events.ts +92 -94
- package/src/components/PlayerView/index.tsx +109 -159
- package/src/components/PlayerView/native.ts +24 -11
- package/src/components/PlayerView/nativeEvents.ts +113 -94
- package/src/components/PlayerView/pictureInPictureConfig.ts +1 -1
- package/src/components/PlayerView/playerViewConfig.ts +4 -8
- package/src/components/PlayerView/properties.ts +23 -22
- package/src/debug.ts +1 -3
- package/src/decoder/decoderConfig.ts +3 -3
- package/src/decoder/decoderConfigModule.ts +62 -0
- package/src/decoder/index.ts +32 -16
- package/src/drm/drmModule.ts +84 -0
- package/src/drm/fairplayConfig.ts +1 -1
- package/src/drm/index.ts +130 -40
- package/src/drm/widevineConfig.ts +5 -5
- package/src/events.ts +47 -41
- package/src/hooks/useProxy.ts +13 -20
- package/src/mediaControlConfig.ts +1 -1
- package/src/modules/AudioSessionModule.ts +13 -0
- package/src/modules/BitmovinCastManagerModule.ts +14 -0
- package/src/modules/BufferModule.ts +18 -0
- package/src/modules/DebugModule.ts +9 -0
- package/src/modules/PlayerModule.ts +251 -0
- package/src/modules/SourceModule.ts +74 -0
- package/src/modules/UuidModule.ts +9 -0
- package/src/nativeInstance.ts +3 -3
- package/src/network/index.ts +42 -15
- package/src/network/networkConfig.ts +3 -3
- package/src/network/networkModule.ts +51 -0
- package/src/offline/offlineContentConfig.ts +1 -1
- package/src/offline/offlineContentManager.ts +15 -50
- package/src/offline/offlineContentManagerListener.ts +20 -23
- package/src/offline/offlineContentOptions.ts +2 -2
- package/src/offline/offlineDownloadRequest.ts +1 -1
- package/src/offline/offlineModule.ts +46 -0
- package/src/offline/offlineSourceOptions.ts +2 -2
- package/src/offline/offlineState.ts +1 -1
- package/src/playbackConfig.ts +5 -6
- package/src/player.ts +53 -48
- package/src/source.ts +15 -14
- package/src/styleConfig.ts +5 -5
- package/src/subtitleFormat.ts +5 -5
- package/src/subtitleTrack.ts +1 -1
- package/src/tweaksConfig.ts +16 -16
- package/src/ui/customMessageHandlerModule.ts +46 -0
- package/src/ui/custommessagehandlerbridge.ts +45 -18
- package/src/ui/fullscreenHandlerModule.ts +35 -0
- package/src/ui/fullscreenhandlerbridge.ts +35 -15
- package/tsconfig.json +9 -0
- package/typedoc.json +23 -0
- package/RNBitmovinPlayer.podspec +0 -26
- package/android/src/main/java/com/bitmovin/player/reactnative/BitmovinBaseModule.kt +0 -114
- package/android/src/main/java/com/bitmovin/player/reactnative/EventRelay.kt +0 -47
- package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerViewPackage.kt +0 -48
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReactContextExtension.kt +0 -24
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableArray.kt +0 -20
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableMap.kt +0 -15
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableMapExtension.kt +0 -57
- package/android/src/main/java/com/bitmovin/player/reactnative/extensions/WritableMap.kt +0 -27
- package/android/src/main/java/com/bitmovin/player/reactnative/ui/CustomMessageHandlerModule.kt +0 -86
- package/android/src/main/java/com/bitmovin/player/reactnative/ui/FullscreenHandlerModule.kt +0 -78
- package/ios/AudioSessionModule.m +0 -10
- package/ios/BitmovinCastManagerModule.m +0 -14
- package/ios/BufferModule.m +0 -8
- package/ios/CustomMessageHandlerModule.m +0 -10
- package/ios/DebugModule.m +0 -7
- package/ios/DrmModule.m +0 -16
- package/ios/FullscreenHandlerModule.m +0 -10
- package/ios/NetworkModule.m +0 -10
- package/ios/OfflineModule.m +0 -19
- package/ios/PlayerAnalyticsModule.m +0 -8
- package/ios/PlayerModule.m +0 -130
- package/ios/PreprocessHttpRequestDelegateBridge.swift +0 -30
- package/ios/RCTBridge+Generics.swift +0 -6
- package/ios/RNBitmovinPlayer.xcodeproj/project.pbxproj +0 -303
- package/ios/RNPlayerView+PlayerListener.swift +0 -229
- package/ios/RNPlayerView+UserInterfaceListener.swift +0 -35
- package/ios/RNPlayerViewManager.m +0 -79
- package/ios/SourceModule.m +0 -42
- package/ios/UuidModule.m +0 -9
- package/lib/index.d.mts +0 -4303
- package/lib/index.d.ts +0 -4303
- package/lib/index.js +0 -1895
- package/lib/index.mjs +0 -1836
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
## Issues
|
|
4
|
+
|
|
5
|
+
With bugs and problems, please try to describe the issue as detailed as possible to help us reproduce it.
|
|
6
|
+
|
|
7
|
+
## Pull Requests
|
|
8
|
+
|
|
9
|
+
Before creating a pull request, please
|
|
10
|
+
|
|
11
|
+
- Make sure all guidelines are followed
|
|
12
|
+
- Make sure your branch is free of merge conflicts
|
|
13
|
+
|
|
14
|
+
## Development workflow
|
|
15
|
+
|
|
16
|
+
To get started with the project, run `yarn bootstrap` in the root directory to install the required dependencies for each package and cocoapods dependencies for the example app:
|
|
17
|
+
|
|
18
|
+
```sh
|
|
19
|
+
yarn bootstrap
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
> While it's possible to use [`npm`](https://github.com/npm/cli), the tooling is built around [`yarn`](https://classic.yarnpkg.com/), so you'll have an easier time if you use `yarn` for development.
|
|
23
|
+
|
|
24
|
+
While developing, you can run the [example app](/example/) to test your changes. Any changes you make in your library's JavaScript code will be reflected in the example app without a rebuild. If you change any native code, then you'll need to rebuild the example app.
|
|
25
|
+
|
|
26
|
+
To start the packager, run in the root directory:
|
|
27
|
+
|
|
28
|
+
```sh
|
|
29
|
+
yarn example start
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
To build and run the example app on Android:
|
|
33
|
+
|
|
34
|
+
```sh
|
|
35
|
+
yarn example android
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
To build and run the example app on iOS:
|
|
39
|
+
|
|
40
|
+
```sh
|
|
41
|
+
yarn example ios
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
To edit the Swift/Objective-C files, open `example/ios/BitmovinPlayerReactNativeExample.xcworkspace` in Xcode and find the source files at `Pods > Development Pods > RNBitmovinPlayer`.
|
|
45
|
+
|
|
46
|
+
To edit the Kotlin files, open `example/android` in Android Studio and find the source files at `bitmovin-player-react-native` under `Android`.
|
|
47
|
+
|
|
48
|
+
## For iOS/tvOS on-device development
|
|
49
|
+
|
|
50
|
+
To build the example project for an iOS or tvOS device, you need to create a file at `example/ios/Developer.xcconfig`. In this file, add your development team like this:
|
|
51
|
+
|
|
52
|
+
```yml
|
|
53
|
+
DEVELOPMENT_TEAM = YOUR_TEAM_ID
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## TypeScript Code Style
|
|
57
|
+
|
|
58
|
+
- Follow the `eslint` rules (`yarn lint`). They are enforced automatically via a pre-commit git hook.
|
|
59
|
+
- Always add return values to functions (even if `void`)
|
|
60
|
+
- No unused imports
|
|
61
|
+
- Public functions should be documented with a description that explains _what_ it does
|
|
62
|
+
- Every code block that does not obviously explain itself should be commented with an explanation of _why_ and _what_ it does
|
|
63
|
+
|
|
64
|
+
## Linting
|
|
65
|
+
|
|
66
|
+
### Pre-commit Hooks
|
|
67
|
+
|
|
68
|
+
The project uses pre-commit hooks to automatically enforce code quality standards across all languages (TypeScript, Swift, Kotlin). The hooks will:
|
|
69
|
+
|
|
70
|
+
- Run ESLint (quiet mode) on TypeScript/JavaScript files
|
|
71
|
+
- Auto-format Swift files with SwiftLint, then run SwiftLint (strict mode)
|
|
72
|
+
- Auto-format Kotlin files with ktlint, then run ktlint
|
|
73
|
+
- Auto-format files with Prettier
|
|
74
|
+
|
|
75
|
+
**Setup:**
|
|
76
|
+
|
|
77
|
+
```sh
|
|
78
|
+
yarn setup-hooks
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Or manually install the pre-commit hook:
|
|
82
|
+
|
|
83
|
+
```sh
|
|
84
|
+
# Copy the pre-commit hook (done automatically by yarn setup-hooks)
|
|
85
|
+
cp scripts/pre-commit.sh .git/hooks/pre-commit
|
|
86
|
+
chmod +x .git/hooks/pre-commit
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**Testing all linting:**
|
|
90
|
+
|
|
91
|
+
```sh
|
|
92
|
+
yarn lint:all
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Typescript
|
|
96
|
+
|
|
97
|
+
[ESLint](https://eslint.org/), [Prettier](https://prettier.io/), [TypeScript](https://www.typescriptlang.org/)
|
|
98
|
+
|
|
99
|
+
We use [TypeScript](https://www.typescriptlang.org/) for type checking, [ESLint](https://eslint.org/) with [Prettier](https://prettier.io/) for linting and formatting the code, and [Jest](https://jestjs.io/) for testing.
|
|
100
|
+
|
|
101
|
+
Make sure your code passes TypeScript and ESLint. Run the following to verify:
|
|
102
|
+
|
|
103
|
+
```sh
|
|
104
|
+
yarn typecheck
|
|
105
|
+
yarn lint
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
To run TypeScript checking for all packages:
|
|
109
|
+
|
|
110
|
+
```sh
|
|
111
|
+
yarn typecheck:all
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
To fix formatting errors, run the following:
|
|
115
|
+
|
|
116
|
+
```sh
|
|
117
|
+
yarn format:all
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Or for specific platforms:
|
|
121
|
+
|
|
122
|
+
```sh
|
|
123
|
+
yarn format # Prettier (TypeScript/JavaScript/Markdown/JSON/YAML)
|
|
124
|
+
yarn format:ios # SwiftLint auto-correction
|
|
125
|
+
yarn format:android # ktlint formatting
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### Kotlin
|
|
129
|
+
|
|
130
|
+
For Kotlin code [ktlint](https://pinterest.github.io/ktlint/) is used with [ktlint gradle plugin](https://github.com/jlleitschuh/ktlint-gradle).
|
|
131
|
+
|
|
132
|
+
Run the following to verify code format:
|
|
133
|
+
|
|
134
|
+
```sh
|
|
135
|
+
yarn lint:android
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
To fix formatting errors, run the following:
|
|
139
|
+
|
|
140
|
+
```sh
|
|
141
|
+
yarn format:android
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
Or manually inside `android` folder:
|
|
145
|
+
|
|
146
|
+
```sh
|
|
147
|
+
./gradlew ktlintFormat
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
### Swift
|
|
151
|
+
|
|
152
|
+
For Swift code [SwiftLint](https://github.com/realm/SwiftLint) is used.
|
|
153
|
+
To install SwiftLint, run `brew bundle install` in the root directory.
|
|
154
|
+
|
|
155
|
+
To verify Swift code, run the following:
|
|
156
|
+
|
|
157
|
+
```sh
|
|
158
|
+
yarn lint:ios
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
To fix auto-fixable SwiftLint violations, run the following:
|
|
162
|
+
|
|
163
|
+
```sh
|
|
164
|
+
yarn format:ios
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
Or manually:
|
|
168
|
+
|
|
169
|
+
```sh
|
|
170
|
+
swiftlint ios --autocorrect
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
## Testing
|
|
174
|
+
|
|
175
|
+
Remember to add tests for your change if possible. Run the player tests by:
|
|
176
|
+
|
|
177
|
+
```sh
|
|
178
|
+
yarn integration-test test:android
|
|
179
|
+
yarn integration-test test:ios
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
To set the license key to be used for the tests, you can set the key `"licenseKey"` in `integration_test/app.json`.
|
|
183
|
+
|
|
184
|
+
See available API for testing [here](/integration_test/playertesting/PlayerTesting.ts).
|
|
185
|
+
|
|
186
|
+
### Adding new tests
|
|
187
|
+
|
|
188
|
+
To add new tests:
|
|
189
|
+
|
|
190
|
+
1. create a new file in the `specs/` folder.
|
|
191
|
+
1. import the new file to the `specs/index.ts` file and add it to the default exported array.
|
|
192
|
+
|
|
193
|
+
A Player Test has the following structure always:
|
|
194
|
+
|
|
195
|
+
```ts
|
|
196
|
+
export default (spec: TestScope) => {
|
|
197
|
+
spec.describe('SCENARIO TO TEST', () => {
|
|
198
|
+
spec.it('EXPECTATION', async () => {
|
|
199
|
+
await startPlayerTest({}, async () => {
|
|
200
|
+
// TEST CODE
|
|
201
|
+
});
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
};
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
For example:
|
|
208
|
+
|
|
209
|
+
```ts
|
|
210
|
+
export default (spec: TestScope) => {
|
|
211
|
+
spec.describe('playing a source', () => {
|
|
212
|
+
spec.it('emits TimeChanged events', async () => {
|
|
213
|
+
await startPlayerTest({}, async () => {
|
|
214
|
+
await loadSourceConfig({
|
|
215
|
+
url: 'https://cdn.bitmovin.com/content/internal/assets/MI201109210084/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8',
|
|
216
|
+
type: SourceType.HLS,
|
|
217
|
+
});
|
|
218
|
+
await callPlayerAndExpectEvents(
|
|
219
|
+
(player) => {
|
|
220
|
+
player.play();
|
|
221
|
+
},
|
|
222
|
+
EventSequence(EventType.Play, EventType.Playing)
|
|
223
|
+
);
|
|
224
|
+
await expectEvents(RepeatedEvent(EventType.TimeChanged, 5));
|
|
225
|
+
});
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
};
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Scripts
|
|
232
|
+
|
|
233
|
+
The `package.json` file contains various scripts for common tasks:
|
|
234
|
+
|
|
235
|
+
- `yarn bootstrap`: setup the whole project by installing all dependencies and pods.
|
|
236
|
+
- `yarn bootstrap:example`: setup example project by installing all dependencies and pods.
|
|
237
|
+
- `yarn bootstrap:integration-test`: setup integration tests project by installing all dependencies and pods.
|
|
238
|
+
- `yarn build`: compile TypeScript files into `lib/` with ESBuild.
|
|
239
|
+
- `yarn typecheck`: type-check files with TypeScript.
|
|
240
|
+
- `yarn typecheck:all`: type-check files with TypeScript in all packages.
|
|
241
|
+
- `yarn lint`: lint files with ESLint.
|
|
242
|
+
- `yarn format`: format files with Prettier.
|
|
243
|
+
- `yarn format:ios`: auto-fix SwiftLint violations.
|
|
244
|
+
- `yarn format:android`: format Kotlin files with ktlint.
|
|
245
|
+
- `yarn format:all`: format all files (Prettier, SwiftLint, ktlint).
|
|
246
|
+
- `yarn docs`: generate documentation with TypeDoc.
|
|
247
|
+
- `yarn brew`: install all dependencies for iOS development with Homebrew.
|
|
248
|
+
- `yarn example start`: start the Metro server for the example app.
|
|
249
|
+
- `yarn example android`: run the example app on Android.
|
|
250
|
+
- `yarn example pods`: install pods only.
|
|
251
|
+
- `yarn integration-test start`: start the Metro server for the integration tests.
|
|
252
|
+
- `yarn integration-test test:android`: run the player tests on Android emulator.
|
|
253
|
+
- `yarn integration-test test:ios`: run the player tests on iOS simulator.
|
|
254
|
+
- `yarn integration-test pods`: install pods only.
|
|
255
|
+
- `yarn example ios`: run the example app on iOS.
|
package/TODO.md
ADDED
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
[*.{kt,kts}]
|
|
2
|
+
ktlint_code_style=android_studio
|
|
3
|
+
max_line_length=120
|
|
4
|
+
# Allow wildcard imports for react native bridge, since IntelliJ does this automatically when performing
|
|
5
|
+
# imports optimization.
|
|
6
|
+
ij_kotlin_packages_to_use_import_on_demand = com.facebook.react.bridge.*
|
|
7
|
+
ij_kotlin_allow_trailing_comma=true
|
|
8
|
+
ij_kotlin_allow_trailing_comma_on_call_site=true
|
package/android/build.gradle
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import groovy.json.JsonSlurper
|
|
2
|
+
|
|
3
|
+
// Read version from package.json
|
|
4
|
+
def packageJsonFile = new File("$rootDir/../package.json")
|
|
5
|
+
def packageJson = new JsonSlurper().parseText(packageJsonFile.text)
|
|
6
|
+
def packageVersion = packageJson.version
|
|
7
|
+
|
|
1
8
|
buildscript {
|
|
2
9
|
// Buildscript is evaluated before everything else so we can't use getExtOrDefault
|
|
3
10
|
def kotlin_version = rootProject.ext.has("kotlinVersion") ? rootProject.ext.get("kotlinVersion") : project.properties["BitmovinPlayerReactNative_kotlinVersion"]
|
|
4
11
|
def ktlint_version = rootProject.ext.has("ktlintVersion") ? rootProject.ext.get("ktlintVersion") : project.properties["BitmovinPlayerReactNative_ktlintVersion"]
|
|
5
|
-
def
|
|
12
|
+
def android_plugin_version = rootProject.ext.has("androidPluginVersion") ? rootProject.ext.get("androidPluginVersion") : project.properties["BitmovinPlayerReactNative_androidPluginVersion"]
|
|
6
13
|
|
|
7
14
|
repositories {
|
|
8
15
|
google()
|
|
@@ -12,99 +19,95 @@ buildscript {
|
|
|
12
19
|
}
|
|
13
20
|
}
|
|
14
21
|
dependencies {
|
|
15
|
-
classpath "com.android.tools.build:gradle:$
|
|
16
|
-
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
22
|
+
classpath "com.android.tools.build:gradle:$android_plugin_version"
|
|
17
23
|
classpath "org.jlleitschuh.gradle:ktlint-gradle:$ktlint_version"
|
|
18
24
|
}
|
|
19
25
|
}
|
|
20
26
|
|
|
21
|
-
def isNewArchitectureEnabled() {
|
|
22
|
-
return rootProject.hasProperty("newArchEnabled") && rootProject.getProperty("newArchEnabled") == "true"
|
|
23
|
-
}
|
|
24
|
-
|
|
25
27
|
apply plugin: 'com.android.library'
|
|
26
|
-
apply plugin: 'kotlin-android'
|
|
27
28
|
apply plugin: 'org.jlleitschuh.gradle.ktlint'
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
def
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
//
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
android {
|
|
51
|
-
if (supportsNamespace()) {
|
|
52
|
-
namespace "com.bitmovin.player.reactnative"
|
|
53
|
-
|
|
54
|
-
sourceSets {
|
|
55
|
-
main {
|
|
56
|
-
manifest.srcFile "src/main/AndroidManifestNew.xml"
|
|
57
|
-
}
|
|
58
|
-
}
|
|
30
|
+
group = 'com.bitmovin.player.reactnative'
|
|
31
|
+
version = packageVersion
|
|
32
|
+
|
|
33
|
+
def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
|
|
34
|
+
apply from: expoModulesCorePlugin
|
|
35
|
+
applyKotlinExpoModulesCorePlugin()
|
|
36
|
+
useCoreDependencies()
|
|
37
|
+
useExpoPublishing()
|
|
38
|
+
|
|
39
|
+
// If you want to use the managed Android SDK versions from expo-modules-core, set this to true.
|
|
40
|
+
// The Android SDK versions will be bumped from time to time in SDK releases and may introduce breaking changes in your module code.
|
|
41
|
+
// Most of the time, you may like to manage the Android SDK versions yourself.
|
|
42
|
+
def useManagedAndroidSdkVersions = false
|
|
43
|
+
if (useManagedAndroidSdkVersions) {
|
|
44
|
+
useDefaultAndroidSdkVersions()
|
|
45
|
+
} else {
|
|
46
|
+
buildscript {
|
|
47
|
+
// Simple helper that allows the root project to override versions declared by this library.
|
|
48
|
+
ext.safeExtGet = { prop, fallback ->
|
|
49
|
+
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
|
|
59
50
|
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
51
|
+
}
|
|
52
|
+
project.android {
|
|
53
|
+
compileSdkVersion safeExtGet("compileSdkVersion", 34)
|
|
63
54
|
defaultConfig {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
55
|
+
minSdkVersion safeExtGet("minSdkVersion", 24)
|
|
56
|
+
targetSdkVersion safeExtGet("targetSdkVersion", 35)
|
|
67
57
|
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
68
60
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
61
|
+
android {
|
|
62
|
+
namespace "com.bitmovin.player.reactnative"
|
|
63
|
+
|
|
64
|
+
defaultConfig {
|
|
65
|
+
versionCode 1
|
|
66
|
+
versionName packageVersion
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
buildTypes {
|
|
70
|
+
release {
|
|
71
|
+
minifyEnabled false
|
|
73
72
|
}
|
|
73
|
+
}
|
|
74
74
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
75
|
+
lintOptions {
|
|
76
|
+
disable "GradleCompatible"
|
|
77
|
+
abortOnError false
|
|
78
|
+
}
|
|
78
79
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
compileOptions {
|
|
81
|
+
sourceCompatibility JavaVersion.VERSION_1_8
|
|
82
|
+
targetCompatibility JavaVersion.VERSION_1_8
|
|
83
|
+
}
|
|
83
84
|
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
buildFeatures {
|
|
86
|
+
buildConfig true
|
|
87
|
+
}
|
|
87
88
|
}
|
|
88
89
|
|
|
89
90
|
repositories {
|
|
90
|
-
|
|
91
|
-
|
|
91
|
+
google()
|
|
92
|
+
mavenCentral()
|
|
93
|
+
maven {
|
|
94
|
+
url "https://artifacts.bitmovin.com/artifactory/public-releases"
|
|
95
|
+
}
|
|
92
96
|
}
|
|
93
97
|
|
|
94
|
-
def kotlin_version = getExtOrDefault("kotlinVersion")
|
|
95
|
-
|
|
96
98
|
dependencies {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
99
|
+
// React Native (needed for hybrid bridge modules)
|
|
100
|
+
//noinspection GradleDynamicVersion
|
|
101
|
+
implementation 'com.facebook.react:react-native:+' // From node_modules
|
|
102
|
+
|
|
103
|
+
implementation "androidx.concurrent:concurrent-futures:1.1.0"
|
|
104
|
+
implementation "androidx.concurrent:concurrent-futures-ktx:1.1.0"
|
|
105
|
+
|
|
106
|
+
// Google IMA
|
|
107
|
+
implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.35.1'
|
|
108
|
+
|
|
109
|
+
// Bitmovin
|
|
110
|
+
implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
|
|
111
|
+
implementation 'com.bitmovin.player:player:3.119.0+jason'
|
|
112
|
+
implementation 'com.bitmovin.player:player-media-session:3.119.0+jason'
|
|
110
113
|
}
|
|
Binary file
|
|
@@ -7,4 +7,5 @@ BitmovinPlayerReactNative_compileSdkVersion=35
|
|
|
7
7
|
BitmovinPlayerReactNative_buildToolsVersion=34.0.0
|
|
8
8
|
BitmovinPlayerReactNative_ndkversion=25.1.8937393
|
|
9
9
|
BitmovinPlayerReactNative_androidToolsVersion=8.1.0
|
|
10
|
+
BitmovinPlayerReactNative_androidPluginVersion=8.1.0
|
|
10
11
|
BitmovinPlayerReactNative_ktlintVersion=11.6.0
|