直播内播放

This commit is contained in:
18401019693
2022-10-21 15:52:53 +08:00
parent dedb30d297
commit 05d4b29991
14 changed files with 928 additions and 24 deletions

View File

@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.yunbao.live">
<!--com.kugou.fanxing.allinone.watch.liveroominone.media.FALiveRoomInOneActivity"-->
<application
android:allowBackup="true"
@@ -14,13 +15,21 @@
android:windowSoftInputMode="adjustPan|stateAlwaysHidden" />
<activity
android:name=".activity.LiveAudienceActivity"
android:screenOrientation="portrait"
android:theme="@style/AppTheme"
android:configChanges="screenLayout|orientation"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustPan|stateAlwaysHidden" />
android:theme="@style/AppTheme"
android:windowSoftInputMode="adjustPan|stateAlwaysHidden"
tools:targetApi="n" />
<activity
android:name=".activity.LiveChooseClassActivity"
android:screenOrientation="portrait" />
<activity
android:name=".activity.FALiveRoomInOneActivity"
android:resizeableActivity="true"
android:screenOrientation="portrait"
android:supportsPictureInPicture="true"
tools:targetApi="n" />
<activity
android:name=".activity.LiveReportActivity"
android:screenOrientation="portrait"

View File

@@ -0,0 +1,36 @@
package com.yunbao.live.activity;
import android.app.PictureInPictureParams;
import android.content.res.Configuration;
import android.os.Build;
import androidx.annotation.RequiresApi;
import com.yunbao.common.activity.AbsActivity;
import com.yunbao.live.R;
/**
* 画中画act
*/
public class FALiveRoomInOneActivity extends AbsActivity {
@Override
protected int getLayoutId() {
return R.layout.view_flaot_live;
}
@RequiresApi(api = Build.VERSION_CODES.O)
@Override
public void main() {
super.init();
PictureInPictureParams params = new PictureInPictureParams.Builder()
.build();
enterPictureInPictureMode(params);
}
@Override
public void onPictureInPictureModeChanged(boolean isInPictureInPictureMode, Configuration newConfig) {
super.onPictureInPictureModeChanged(isInPictureInPictureMode, newConfig);
}
}

View File

@@ -3,9 +3,12 @@ package com.yunbao.live.activity;
import static com.yunbao.live.views.LivePlayRyViewHolder.Micing;
import android.annotation.SuppressLint;
import android.app.PictureInPictureParams;
import android.content.Context;
import android.content.Intent;
import android.content.res.Configuration;
import android.media.AudioManager;
import android.os.Build;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.os.Handler;
@@ -17,6 +20,11 @@ import android.view.ViewGroup;
import android.widget.ImageView;
import androidx.annotation.IdRes;
import androidx.annotation.NonNull;
import androidx.annotation.RequiresApi;
import androidx.core.view.ViewCompat;
import androidx.core.view.WindowInsetsCompat;
import androidx.core.view.WindowInsetsControllerCompat;
import androidx.viewpager.widget.ViewPager;
import com.adjust.sdk.Adjust;
@@ -650,6 +658,22 @@ public class LiveAudienceActivity extends LiveActivity {
}
@Override
public void onConfigurationChanged(@NonNull Configuration newConfig) {
super.onConfigurationChanged(newConfig);
adjustFullScreen(newConfig);
}
private void adjustFullScreen(Configuration config) {
final WindowInsetsControllerCompat insetsController = ViewCompat.getWindowInsetsController(getWindow().getDecorView());
if (insetsController == null)
return;
if (config.orientation == Configuration.ORIENTATION_LANDSCAPE) {
insetsController.hide(WindowInsetsCompat.Type.systemBars());
} else {
insetsController.show(WindowInsetsCompat.Type.systemBars());
}
}
/**
* 跳转页面或者弹窗展示
@@ -1057,4 +1081,6 @@ public class LiveAudienceActivity extends LiveActivity {
});
}
}

View File

@@ -61,6 +61,7 @@ import com.yunbao.common.utils.WordUtil;
import com.yunbao.common.utils.formatBigNum;
import com.yunbao.common.views.weight.LiveFloatView;
import com.yunbao.live.R;
import com.yunbao.live.activity.FALiveRoomInOneActivity;
import com.yunbao.live.activity.LiveActivity;
import com.yunbao.live.activity.LiveAudienceActivity;
import com.yunbao.live.bean.LiveBuyGuardMsgBean;
@@ -373,7 +374,7 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
.setmLiveType(mLiveType)
.setmLiveTypeVal(mLiveTypeVal));
}
//
mContext.finish();
}
}