Skip to content

Commit

Permalink
Merge branch 'master' into backwards-compatible-update
Browse files Browse the repository at this point in the history
* master:
  Added flag for background mode (TheWidlarzGroup#563)
  issue 310 - Added a new property, ignoreSilentSwitch.  (TheWidlarzGroup#403)
  Add progressUpdateInterval to android-exoplayer (TheWidlarzGroup#540)
  Initial WPF Support (TheWidlarzGroup#385)
  added progressUpdateInterval to Android (TheWidlarzGroup#512)
  load new source if it is different (TheWidlarzGroup#502)
  Pausing progress if it was playing and the stating again (TheWidlarzGroup#526)
  bump android dependencies (TheWidlarzGroup#524)
  Update ExoPlayer to r2.2.0 (TheWidlarzGroup#505)
  Update readme (TheWidlarzGroup#497)
  [Android] App crash when unmounting video (TheWidlarzGroup#533)
  Fix/494 (TheWidlarzGroup#537)
  fix(RCTVideo.m): Fixed status bar disappearing issue
  • Loading branch information
Matt Votsikas committed May 12, 2017
2 parents 900ee25 + ad89a1b commit fab2a46
Show file tree
Hide file tree
Showing 30 changed files with 5,642 additions and 96 deletions.
44 changes: 20 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ If you would like to allow other apps to play music over your video component, a
...
}
```
Note: you can also use the `ignoreSilentSwitch` prop, shown below.

#### Android

Expand All @@ -36,48 +37,38 @@ Or if you have trouble, make the following additions to the given files manually

**android/settings.gradle**

```
```gradle
include ':react-native-video'
project(':react-native-video').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-video/android')
```

**android/app/build.gradle**

```
```gradle
dependencies {
...
compile project(':react-native-video')
}
```

**MainActivity.java**

On top, where imports are:

```java
import com.brentvatne.react.ReactVideoPackage;
```

Under `.addPackage(new MainReactPackage())`:

```java
.addPackage(new ReactVideoPackage())
```

### Note: In react-native >= 0.29.0 you have to edit `MainApplication.java`

**MainApplication.java** (react-native >= 0.29.0)
**MainApplication.java**

On top, where imports are:

```java
import com.brentvatne.react.ReactVideoPackage;
```

Under `.addPackage(new MainReactPackage())`:
Add the `ReactVideoPackage` class to your list of exported packages.

```java
.addPackage(new ReactVideoPackage())
@Override
protected List<ReactPackage> getPackages() {
return Arrays.asList(
new MainReactPackage(),
new ReactVideoPackage()
);
}
```

#### Windows
Expand All @@ -90,14 +81,18 @@ Add the `ReactNativeVideo` project to your solution.

1. Open the solution in Visual Studio 2015
2. Right-click Solution icon in Solution Explorer > Add > Existing Project...
3. Select `node_modules\react-native-video\windows\ReactNativeVideo\ReactNativeVideo.csproj`
3.
UWP: Select `node_modules\react-native-video\windows\ReactNativeVideo\ReactNativeVideo.csproj`
WPF: Select `node_modules\react-native-video\windows\ReactNativeVideo.Net46\ReactNativeVideo.Net46.csproj`

**windows/myapp/myapp.csproj**

Add a reference to `ReactNativeVideo` to your main application project. From Visual Studio 2015:

1. Right-click main application project > Add > Reference...
2. Check `ReactNativeVideo` from Solution Projects.
2.
UWP: Check `ReactNativeVideo` from Solution Projects.
WPF: Check `ReactNativeVideo.Net46` from Solution Projects.

**MainPage.cs**

Expand Down Expand Up @@ -140,10 +135,11 @@ using System.Collections.Generic;
volume={1.0} // 0 is muted, 1 is normal.
muted={false} // Mutes the audio entirely.
paused={false} // Pauses playback entirely.
resizeMode="cover" // Fill the whole screen at aspect ratio.*
resizeMode="cover" // Fill the whole screen at aspect ratio.*
repeat={true} // Repeat forever.
playInBackground={false} // Audio continues to play when app entering background.
playWhenInactive={false} // [iOS] Video continues to play when control or notification center are shown.
ignoreSilentSwitch={"ignore"} // [iOS] ignore | obey - When 'ignore', audio will still play with the iOS hard silent switch set to silent. When 'obey', audio will toggle with the switch. When not specified, will inherit audio settings as usual.
progressUpdateInterval={250.0} // [iOS] Interval to fire onProgress (default to ~250ms)
onLoadStart={this.loadStart} // Callback when video starts to load
onLoad={this.setDuration} // Callback when video loads
Expand Down
1 change: 1 addition & 0 deletions Video.js
Original file line number Diff line number Diff line change
Expand Up @@ -278,6 +278,7 @@ Video.propTypes = {
rate: PropTypes.number,
playInBackground: PropTypes.bool,
playWhenInactive: PropTypes.bool,
ignoreSilentSwitch: PropTypes.oneOf(['ignore', 'obey']),
disableFocus: PropTypes.bool,
controls: PropTypes.bool,
currentTime: PropTypes.number,
Expand Down
2 changes: 1 addition & 1 deletion android-exoplayer/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ https://github.com/google/ExoPlayer
this.setState({ pause: true })
}

onAudioFocusChanged(event: { hasAudioFocus: boolean }) {
onAudioFocusChanged = (event: { hasAudioFocus: boolean }) => {
if (!this.state.paused && !event.hasAudioFocus) {
this.setState({ paused: true })
}
Expand Down
6 changes: 3 additions & 3 deletions android-exoplayer/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apply plugin: 'com.android.library'

android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
buildToolsVersion "25.0.2"

defaultConfig {
minSdkVersion 16
Expand All @@ -12,8 +12,8 @@ android {

dependencies {
provided 'com.facebook.react:react-native:+'
compile 'com.google.android.exoplayer:exoplayer:r2.1.1'
compile('com.google.android.exoplayer:extension-okhttp:r2.1.1') {
compile 'com.google.android.exoplayer:exoplayer:r2.2.0'
compile('com.google.android.exoplayer:extension-okhttp:r2.2.0') {
exclude group: 'com.squareup.okhttp3', module: 'okhttp'
}
compile 'com.squareup.okhttp3:okhttp:3.4.2'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import com.google.android.exoplayer2.upstream.DataSource;
import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
import com.google.android.exoplayer2.upstream.DefaultHttpDataSource;
import com.google.android.exoplayer2.upstream.HttpDataSource;
import com.google.android.exoplayer2.util.Util;

Expand Down
Loading

0 comments on commit fab2a46

Please sign in to comment.