Support Picture in Picture on Oreo+

This commit is contained in:
Darren VanBuren 2020-02-27 19:46:11 -08:00
parent 2e9b76ce3b
commit 26127f3b96
2 changed files with 18 additions and 1 deletions

View file

@ -12,6 +12,7 @@
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppTheme.NoActionBar" android:theme="@style/AppTheme.NoActionBar"
android:fullBackupContent="true"
tools:ignore="GoogleAppIndexingWarning"> tools:ignore="GoogleAppIndexingWarning">
<activity <activity
android:name=".MainActivity" android:name=".MainActivity"
@ -23,7 +24,9 @@
</intent-filter> </intent-filter>
</activity> </activity>
<activity android:name=".PlayerActivity" <activity android:name=".PlayerActivity"
android:configChanges="orientation|screenSize"/> android:supportsPictureInPicture="true"
android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
tools:targetApi="n" />
</application> </application>
</manifest> </manifest>

View file

@ -1,8 +1,12 @@
package net.theoks.customstreams.android package net.theoks.customstreams.android
import android.app.PictureInPictureParams
import android.net.Uri import android.net.Uri
import android.os.Build
import android.os.Bundle import android.os.Bundle
import android.util.Rational
import android.widget.Toast import android.widget.Toast
import androidx.annotation.RequiresApi
import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatActivity
import com.google.android.exoplayer2.SimpleExoPlayer import com.google.android.exoplayer2.SimpleExoPlayer
import com.google.android.exoplayer2.source.hls.HlsMediaSource import com.google.android.exoplayer2.source.hls.HlsMediaSource
@ -43,4 +47,14 @@ class PlayerActivity : AppCompatActivity() {
} }
super.onDestroy() super.onDestroy()
} }
@RequiresApi(Build.VERSION_CODES.O)
override fun onUserLeaveHint() {
if(player.isPlaying) {
val paramsBuilder = PictureInPictureParams.Builder()
paramsBuilder.setAspectRatio(Rational(16, 9))
enterPictureInPictureMode(paramsBuilder.build())
}
}
} }