Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.12.0 #265

Merged
merged 128 commits into from
Sep 25, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
128 commits
Select commit Hold shift + click to select a range
48fb788
feat: partially migrate analytics API from v2 to the bundled variant …
matamegger Aug 23, 2023
9994cab
chore: use pod-install NPM package to install CocoaPods tools and per…
rolandkakonyi Sep 8, 2023
e42ecca
chore: improve pods-update command to not fail on non-mac machines
rolandkakonyi Sep 8, 2023
6e7d3b5
chore: remove ruby bundler references
rolandkakonyi Sep 11, 2023
7205ab1
chore: fix creating GitHub release in finish release workflow
rolandkakonyi Sep 11, 2023
0c7e29d
chore(ios): update ios player version to 3.44.2
Sep 11, 2023
8d3245b
Merge branch 'development' into analytics_bundling
matamegger Sep 11, 2023
692bc2b
Merge pull request #234 from bitmovin/main
rolandkakonyi Sep 12, 2023
c7b1f01
Merge branch 'development' into update_ios_player_to_3.44.2
rolandkakonyi Sep 12, 2023
f1501e8
Merge pull request #235 from bitmovin/update_ios_player_to_3.44.2
rolandkakonyi Sep 12, 2023
ff48f0e
chore(android): add writeable map extension
matamegger Sep 12, 2023
30f6e6f
feat: upgrade analytics api v3 and the bundle analytics-player
matamegger Sep 12, 2023
42a7c9f
Merge remote-tracking branch 'origin/development' into analytics_bund…
matamegger Sep 12, 2023
30c8ba7
chore: fix changelog
matamegger Sep 12, 2023
7f666cc
feat(android): use jason build of the android player
matamegger Sep 13, 2023
94bef14
Merge branch 'development' into use_android_player_jason_build
matamegger Sep 13, 2023
84c6b0d
chore: rename AnalyticsModule to PlayerAnalyticsModule
matamegger Sep 13, 2023
f8b039b
Merge pull request #237 from bitmovin/use_android_player_jason_build
matamegger Sep 13, 2023
ef50959
Merge branch 'development' into analytics_bundling
matamegger Sep 13, 2023
53c4cce
Merge pull request #236 from bitmovin/analytics_bundling
matamegger Sep 14, 2023
4eebe86
Merge branch 'development' into use-pod-install-to-example-app
rolandkakonyi Sep 18, 2023
5a36b83
chore: remove cd call for pods-install yarn command
rolandkakonyi Sep 18, 2023
2e88d6e
chore: remove Darwin check for pod install
rolandkakonyi Sep 18, 2023
1cc2d29
Merge pull request #230 from bitmovin/use-pod-install-to-example-app
rolandkakonyi Sep 18, 2023
db122bf
chore(android): update android player version to 3.44.0+jason
Sep 18, 2023
7e801f5
feat(casting): define public API for player API, events and remoteCon…
rolandkakonyi Sep 18, 2023
a4971c1
feat(casting): add RemoteControlConfig deserializer
strangesource Sep 19, 2023
3c6f38d
refactor: use when in event serialization
strangesource Sep 19, 2023
8924c06
docs: improve documentation
strangesource Sep 19, 2023
089a40d
feat(casting): add changelog entry
rolandkakonyi Sep 19, 2023
5b8405b
feat(casting): add platform mentions to player API
rolandkakonyi Sep 19, 2023
4b56c08
feat(casting): add documentation about regular Android platback event…
rolandkakonyi Sep 19, 2023
82b056b
feat(casting): fix optionality in CastPayload
rolandkakonyi Sep 19, 2023
8770002
Merge pull request #240 from bitmovin/android/improve-event-serializa…
strangesource Sep 19, 2023
56ee8d3
feat(casting): fix casting event names
rolandkakonyi Sep 19, 2023
47a8071
feat(casting): fix API documentation
rolandkakonyi Sep 19, 2023
1d77a80
feat(casting): improve API documentation
rolandkakonyi Sep 19, 2023
d75187d
Merge pull request #239 from bitmovin/casting-api
rolandkakonyi Sep 19, 2023
5562685
feat(casting): add player module android casting API
strangesource Sep 19, 2023
c347115
feat(casting): define BitmovinCastManager public API
rolandkakonyi Sep 19, 2023
a313fd9
feat(casting): add android cast event serialization
strangesource Sep 19, 2023
4d76812
Merge branch 'casting' into casting-android/add-remote-control-config…
strangesource Sep 19, 2023
116ea19
Merge pull request #243 from bitmovin/casting-android/add-android-cas…
strangesource Sep 19, 2023
141ff1a
Merge pull request #244 from bitmovin/casting-android/add-remote-cont…
strangesource Sep 19, 2023
3ee1aef
feat(casting): fix API documentation
rolandkakonyi Sep 19, 2023
305d371
Merge pull request #241 from bitmovin/casting-android/add-android-api…
strangesource Sep 19, 2023
bcbaf4d
feat(casting): remove sendMetadata from BitmovinCastManager
rolandkakonyi Sep 19, 2023
f78b614
Merge pull request #242 from bitmovin/casting-bitmovincastmanager-api
rolandkakonyi Sep 19, 2023
21ac37a
feat(casting): implement casting APIs on Player for iOS
rolandkakonyi Sep 19, 2023
861c5c1
feat(casting): add API for listening to casting events on the RN side
rolandkakonyi Sep 19, 2023
7db16c6
Merge pull request #246 from bitmovin/casting-player-events-api
rolandkakonyi Sep 19, 2023
c9ef4ad
Merge pull request #245 from bitmovin/casting-ios/extend-player-api
rolandkakonyi Sep 19, 2023
34b5648
feat(casting): implement RemoteControlConfig parsing
rolandkakonyi Sep 19, 2023
8306d41
Merge pull request #247 from bitmovin/casting-ios/implement-config-se…
rolandkakonyi Sep 19, 2023
379252d
feat(casting): change customReceiverConfig to String to String map in…
rolandkakonyi Sep 19, 2023
85fafcf
feat(casting): introduce BitmovinCastManagerModule for iOS
rolandkakonyi Sep 19, 2023
b35894d
Merge branch 'casting' into casting-ios/implement-bitmovincastmanager
rolandkakonyi Sep 19, 2023
cda908a
feat(casting): add missing API docs
rolandkakonyi Sep 19, 2023
4a0dd5e
Update config.yml
bitbalint Sep 19, 2023
51d96d7
Update config.yml
bitbalint Sep 19, 2023
546400b
fix: fix non-DRM playback on iOS
rolandkakonyi Sep 19, 2023
b729dc6
Merge branch 'fix-non-drm-playback-on-iOS' into casting
rolandkakonyi Sep 19, 2023
001f9f4
Merge branch 'casting' into casting-ios/implement-bitmovincastmanager
rolandkakonyi Sep 19, 2023
4315ea9
feat(casting): add note about calling initialize only when Cast SDK i…
rolandkakonyi Sep 19, 2023
4dae06e
Merge pull request #250 from bitmovin/fix-non-drm-playback-on-iOS
rolandkakonyi Sep 19, 2023
733af0e
chore(casting): add missing native id
strangesource Sep 20, 2023
57381f0
feat(casting): remove unnecessary filter
rolandkakonyi Sep 20, 2023
c955a0b
Merge pull request #249 from bitmovin/casting-ios/implement-bitmovinc…
rolandkakonyi Sep 20, 2023
c5fe1d7
feat(casting): implement player events for casting
rolandkakonyi Sep 20, 2023
e522841
feat(casting): fix documentation
rolandkakonyi Sep 20, 2023
efdb661
Merge pull request #251 from bitmovin/add-missing-nativeId
strangesource Sep 20, 2023
e9f81bc
Merge pull request #248 from bitmovin/casting-update-remotecontrolcon…
rolandkakonyi Sep 20, 2023
865a993
feat(casting): rename initializeCasting to initializeCastManager for …
rolandkakonyi Sep 20, 2023
f684068
Merge pull request #253 from bitmovin/casting-rename-initializeCasting
rolandkakonyi Sep 20, 2023
e0b142e
feat(casting): implement Android BitmovinCastManagerModule and add ad…
strangesource Sep 20, 2023
4f0e67a
feat(casting): disable casting on other screens
rolandkakonyi Sep 20, 2023
64998be
feat(casting): use promise
strangesource Sep 20, 2023
7b41d9b
Merge pull request #254 from bitmovin/casting-android/add-cast-manager
strangesource Sep 20, 2023
bf7b5a8
Merge pull request #252 from bitmovin/casting-ios/implement-events
rolandkakonyi Sep 20, 2023
5ab3abc
feat(casting): add sample screen for casting
rolandkakonyi Sep 20, 2023
00a4603
feat(casting): add Google Cast SDK to example app for iOS
rolandkakonyi Sep 20, 2023
7d7648b
feat(casting): add play-services-cast-framework dependency and option…
strangesource Sep 20, 2023
93412c7
feat(casting): add mediarouter dependency to sample app
strangesource Sep 20, 2023
0141bfd
Merge pull request #255 from bitmovin/casting-add-sample-screen
rolandkakonyi Sep 20, 2023
94feff2
feat(casting): attach cast events to Android player
strangesource Sep 21, 2023
432b8fe
feat(casting): move dependencies to a more sensible location
strangesource Sep 21, 2023
ec4d23b
feat(casting): add expanded controller activity to manifest
strangesource Sep 21, 2023
d328d42
feat(casting): eagerly initialize cast context
strangesource Sep 21, 2023
23f8834
feat(casting): call `updateContext` on Android
strangesource Sep 21, 2023
98d40e5
feat(casting): add explaining comment to manifest and fix formatting
strangesource Sep 21, 2023
9153e04
Merge pull request #256 from bitmovin/casting-android/attach-cast-events
strangesource Sep 21, 2023
07519d9
Merge pull request #257 from bitmovin/casting-android/initialize-cast…
strangesource Sep 21, 2023
b348c58
docs(casting): add casting sample to example readme
strangesource Sep 21, 2023
1b35dd7
feat(casting): enable casting different source on iOS
rolandkakonyi Sep 21, 2023
2c57d12
feat(casting): cast DASH source from iOS
rolandkakonyi Sep 21, 2023
69da4fa
feat(casting): fix android parameter names
rolandkakonyi Sep 21, 2023
6a5e33e
Merge pull request #258 from bitmovin/update-readme-with-casting
strangesource Sep 21, 2023
6ec6c59
Merge branch 'casting' into casting-ios/cast-specific-source
rolandkakonyi Sep 21, 2023
45c33ac
feat(casting): improve swift code style
rolandkakonyi Sep 21, 2023
7cda7eb
feat(casting): add missing documentation
rolandkakonyi Sep 21, 2023
0669011
feat(casting): improve swift code style
rolandkakonyi Sep 21, 2023
ca1d83c
feat(casting): refactor prepareSource wrapper
rolandkakonyi Sep 21, 2023
b3e5461
feat(casting): enable DRM playback for casting
rolandkakonyi Sep 21, 2023
d4ecac6
feat(casting): update documentation
rolandkakonyi Sep 21, 2023
8fe2a9a
feat(casting): improve code style
rolandkakonyi Sep 21, 2023
f2c2c1b
feat(casting): add missing documentation
rolandkakonyi Sep 21, 2023
a015608
Merge branch 'casting-ios/cast-specific-source' into casting-ios/wide…
rolandkakonyi Sep 21, 2023
dfda37f
feat(casting): improve API docs
rolandkakonyi Sep 22, 2023
852d26f
feat(casting): rename SourceRemotePlaybackConfig to SourceRemoteContr…
rolandkakonyi Sep 22, 2023
ddff297
feat(casting): fix property name on source for remote control config
rolandkakonyi Sep 22, 2023
85c58e7
feat(casting): fix indentation
rolandkakonyi Sep 22, 2023
ee6f953
feat(casting): fix optionality
rolandkakonyi Sep 22, 2023
4993c8f
Merge branch 'casting-ios/cast-specific-source' into casting-ios/wide…
rolandkakonyi Sep 22, 2023
454fbba
feat(casting): improve DRM handling
rolandkakonyi Sep 22, 2023
2fe285f
feat(casting): mention that sourceRemoteControlConfig is not supporte…
rolandkakonyi Sep 22, 2023
da16514
feat(casting): fix documentation
rolandkakonyi Sep 22, 2023
49370d0
Merge pull request #259 from bitmovin/casting-ios/cast-specific-source
rolandkakonyi Sep 22, 2023
4fa39ac
Merge pull request #261 from bitmovin/casting-ios/widevine-drm
rolandkakonyi Sep 22, 2023
65cee12
feat(casting): fix casting sample screen
rolandkakonyi Sep 22, 2023
07943df
feat(casting): fix tvOS build
rolandkakonyi Sep 22, 2023
850a55e
Merge pull request #262 from bitmovin/casting
rolandkakonyi Sep 22, 2023
faa89f9
fix: enable CI for all branches
rolandkakonyi Sep 22, 2023
23e76fd
fix: CustomHtmlUI hyperlink
rolandkakonyi Sep 22, 2023
e1bcaf6
fix: only run CI workflow on push for development branch
rolandkakonyi Sep 22, 2023
9c99dd1
Merge pull request #264 from bitmovin/enable-CI-workflow-on-all-branches
rolandkakonyi Sep 22, 2023
1e6aa33
docs: add changelog entry for Bitmovin Android Player version update
strangesource Sep 25, 2023
84d53a7
Merge pull request #238 from bitmovin/update_android_player_to_3.44.0…
strangesource Sep 25, 2023
f76f875
chore: prepare release 0.12.0
Sep 25, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@ contact_links:
- name: Feature Requests
url: https://community.bitmovin.com/t/how-to-submit-a-feature-request-to-us/1463
about: Learn how to suggest new features for our Player SDKs.
- name: Report a security vulnerability
url: https://bitmovin.atlassian.net/wiki/external/1502085332/YTYwODMwZjQyNjkwNGQ0ODg5MTgwM2NhMDliNjRmODE
about: Report a security vulnerability.
21 changes: 6 additions & 15 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ name: CI

on:
pull_request:
branches: [development]
paths-ignore:
- '*.md'

Expand Down Expand Up @@ -108,15 +107,11 @@ jobs:
key: pods-${{ hashFiles('example/ios/Podfile.lock') }}
restore-keys: pods-

- name: Install Bundle dependencies
run: bundle install
working-directory: example/ios

- name: Install pods
run: |
bundle exec pod repo remove trunk
bundle exec pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || bundle exec pod repo update bitmovin
bundle exec pod install --repo-update
pod repo remove trunk
pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || pod repo update bitmovin
pod install --repo-update
working-directory: example/ios
env:
CP_HOME_DIR: ${{ github.workspace }}/.cocoapods-cache
Expand Down Expand Up @@ -171,15 +166,11 @@ jobs:
key: pods-${{ hashFiles('example/ios/Podfile.lock') }}
restore-keys: pods-

- name: Install Bundle dependencies
run: bundle install
working-directory: example/ios

- name: Install pods
run: |
bundle exec pod repo remove trunk
bundle exec pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || bundle exec pod repo update bitmovin
bundle exec pod install --repo-update
pod repo remove trunk
pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git || pod repo update bitmovin
pod install --repo-update
working-directory: example/ios
env:
CP_HOME_DIR: ${{ github.workspace }}/.cocoapods-cache
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/create-sdk-update-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,8 @@ jobs:
sed -i '' 's/s.dependency "BitmovinPlayer", ".*/s.dependency "BitmovinPlayer", "${{ inputs.version_number }}"/g' RNBitmovinPlayer.podspec
yarn install --frozen-lockfile --cwd example
cd example/ios
bundle install
pod repo add bitmovin https://github.com/bitmovin/cocoapod-specs.git
bundle exec pod update BitmovinPlayer
pod update BitmovinPlayer

- name: Bump Android player SDK version
if: ${{ inputs.sdk_name == 'android' }}
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/finish-release-train.yml
Original file line number Diff line number Diff line change
Expand Up @@ -85,5 +85,6 @@ jobs:
- name: Create GitHub release
uses: ncipollo/release-action@v1
with:
tag: v${{ needs.create_pr.outputs.version_number }}
token: ${{ secrets.GITHUB_TOKEN }}
body: ${{ steps.changelog.outputs.release_notes }}
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ android.iml
# Cocoapods
#
example/ios/Pods/
example/vendor/bundle/

# node.js
#
Expand Down
20 changes: 20 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,25 @@
# Changelog

## [0.12.0] (2023-09-25)

### Added

- `DefaultMetadata` for configuration of the bundled analytics collector
- `Player.analytics` to access the `AnalyticsApi` and interact with the bundled analytics collector
- `SourceConfig.analyticsSourceMetadata` for extended configuration of the bundled analytics collector
- Google Cast SDK support for Android and iOS

### Changed

- `AnalyticsConfig` properties to match the bitmovin analytics v3 API
- Use `jason` build of Bitmovin's native Android SDK
- Update Bitmovin's native Android SDK version to `3.44.0`

### Removed

- `AnalyticsCollector` in favor of the bundled analytics functionality
- `CdnProvider`, as the property on the `AnalyticsConfig` is now a `string`

## [0.11.0] (2023-09-11)

### Added
Expand Down
2 changes: 1 addition & 1 deletion RNBitmovinPlayer.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ Pod::Spec.new do |s|
s.source_files = "ios/**/*.{h,m,mm,swift}"

s.dependency "React-Core"
s.dependency "BitmovinPlayer", "3.44.1"
s.dependency "BitmovinPlayer", "3.44.2"
s.ios.dependency "GoogleAds-IMA-iOS-SDK", "3.18.4"
s.tvos.dependency "GoogleAds-IMA-tvOS-SDK", "4.8.2"
end
2 changes: 1 addition & 1 deletion android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlinVersion"
implementation 'com.google.ads.interactivemedia.v3:interactivemedia:3.29.0'
implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
implementation 'com.bitmovin.player:player:3.43.0'
implementation 'com.bitmovin.player:player:3.44.0+jason'
//noinspection GradleDynamicVersion
implementation 'com.facebook.react:react-native:+' // From node_modules
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
package com.bitmovin.player.reactnative

import com.bitmovin.player.casting.BitmovinCastManager
import com.bitmovin.player.reactnative.converter.JsonConverter
import com.facebook.react.bridge.Promise
import com.facebook.react.bridge.ReactApplicationContext
import com.facebook.react.bridge.ReactContextBaseJavaModule
import com.facebook.react.bridge.ReactMethod
import com.facebook.react.bridge.ReadableMap
import com.facebook.react.module.annotations.ReactModule
import com.facebook.react.uimanager.UIManagerModule

private const val MODULE_NAME = "BitmovinCastManagerModule"

@ReactModule(name = MODULE_NAME)
class BitmovinCastManagerModule(
private val context: ReactApplicationContext,
) : ReactContextBaseJavaModule(context) {
override fun getName() = MODULE_NAME

/**
* Returns whether the [BitmovinCastManager] is initialized.
*/
@ReactMethod
fun isInitialized(promise: Promise) = uiManager?.addUIBlock {
promise.resolve(BitmovinCastManager.isInitialized())
}

/**
* Initializes the [BitmovinCastManager] with the given options.
*/
@ReactMethod
fun initializeCastManager(options: ReadableMap?, promise: Promise) {
val castOptions = JsonConverter.toCastOptions(options)
uiManager?.addUIBlock {
BitmovinCastManager.initialize(
castOptions?.applicationId,
castOptions?.messageNamespace
)
promise.resolve(null)
}
}

/**
* Sends a message to the receiver.
*/
@ReactMethod
fun sendMessage(message: String, messageNamespace: String?, promise: Promise) {
uiManager?.addUIBlock {
BitmovinCastManager.getInstance().sendMessage(message, messageNamespace)
promise.resolve(null)
}
}

/**
* Updates the context of the [BitmovinCastManager] to the current activity.
*/
@ReactMethod
fun updateContext(promise: Promise) {
uiManager?.addUIBlock {
BitmovinCastManager.getInstance().updateContext(currentActivity)
promise.resolve(null)
}
}

private val uiManager: UIManagerModule?
get() = context.getNativeModule(UIManagerModule::class.java)
}

/**
* Represents configuration options for the [BitmovinCastManager].
*/
data class BitmovinCastManagerOptions(
val applicationId: String? = null,
val messageNamespace: String? = null,
)
Loading