1:修改所有接口返回提示,只是添加了返回错误的提示,不涉及功能
2:给所有网络请求添加网络判断,添加拦截器 3:启动页添加启动视频,添加跳过功能 4:去掉抱麦弹框,直接跳转到用户列表 5:修改拍卖房,当抱人上麦后,没有选择关系,然后退出房间再次进来后,显示立即竞拍的按钮 6:修改我的歌单,添加和修改的时候,选择了不能使用的礼物,让dialog不关闭 7:修改点唱房,点一个人同一首歌,右侧下一首歌的作者不显示的问题 8:修改互娱房,选择关系的时候,会出现两次选择关系的问题 9:修改在送背包礼物的时候,最后一个送出,页面没有刷新 10:修改房间设置里面,点击了抽盘,设置页面不关闭的问题 11:修改个性装扮中,购买的装扮展示的时候,出现图片裁剪
This commit is contained in:
@@ -71,9 +71,9 @@ android {
|
||||
beta {
|
||||
dimension "environment"
|
||||
// // 测试版包名:基础包名 + .beta(com.example.myapp.beta)
|
||||
applicationIdSuffix ".beta"
|
||||
// applicationIdSuffix ".beta"
|
||||
// // 测试版版本名:1.0-beta
|
||||
versionNameSuffix "-beta"
|
||||
// versionNameSuffix "-beta"
|
||||
//
|
||||
// // 【测试版应用名称】动态生成带标识的名称
|
||||
resValue "string", "app_name", "羽声-测试版"
|
||||
|
||||
@@ -181,86 +181,132 @@ public class LaunchPageActivity extends BaseMvpActivity<IPresenter,ActivityLaunc
|
||||
|
||||
@Override
|
||||
protected void initView() {
|
||||
// 创建VideoView并添加到布局中
|
||||
videoView = new VideoView(this);
|
||||
// 创建LayoutParams并设置MATCH_PARENT
|
||||
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
|
||||
ViewGroup.LayoutParams.MATCH_PARENT,
|
||||
ViewGroup.LayoutParams.MATCH_PARENT
|
||||
);
|
||||
// 设置gravity来填充整个布局
|
||||
params.gravity = Gravity.FILL;
|
||||
mBinding.container.addView(videoView, params);
|
||||
|
||||
setEnter();
|
||||
// 设置视频缩放模式为拉伸填充
|
||||
videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
|
||||
@Override
|
||||
public void onPrepared(MediaPlayer mp) {
|
||||
// 获取视频的宽高
|
||||
int videoWidth = mp.getVideoWidth();
|
||||
int videoHeight = mp.getVideoHeight();
|
||||
// 获取屏幕的宽高
|
||||
int screenWidth = getResources().getDisplayMetrics().widthPixels;
|
||||
int screenHeight = getResources().getDisplayMetrics().heightPixels;
|
||||
|
||||
// if (AppContext.isKilled()) {
|
||||
// videoView = new VideoView(this);
|
||||
// // 创建LayoutParams并设置MATCH_PARENT
|
||||
// FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(
|
||||
// ViewGroup.LayoutParams.MATCH_PARENT,
|
||||
// ViewGroup.LayoutParams.MATCH_PARENT
|
||||
// );
|
||||
//// 设置gravity来填充整个布局
|
||||
// params.gravity = Gravity.FILL;
|
||||
// mBinding.root.addView(videoView, params);
|
||||
//
|
||||
//// 设置视频缩放模式为拉伸填充
|
||||
// videoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
|
||||
// @Override
|
||||
// public void onPrepared(MediaPlayer mp) {
|
||||
// // 获取视频的宽高
|
||||
// int videoWidth = mp.getVideoWidth();
|
||||
// int videoHeight = mp.getVideoHeight();
|
||||
// // 获取屏幕的宽高
|
||||
// int screenWidth = getResources().getDisplayMetrics().widthPixels;
|
||||
// int screenHeight = getResources().getDisplayMetrics().heightPixels;
|
||||
//
|
||||
// // 计算缩放比例
|
||||
// float scaleX = (float) screenWidth / videoWidth;
|
||||
// float scaleY = (float) screenHeight / videoHeight;
|
||||
//
|
||||
// // 选择较大的缩放比例,确保视频填满屏幕
|
||||
// float scale = Math.max(scaleX, scaleY);
|
||||
//
|
||||
// // 计算实际显示的宽高
|
||||
// int scaledWidth = (int) (videoWidth * scale);
|
||||
// int scaledHeight = (int) (videoHeight * scale);
|
||||
//
|
||||
// // 设置VideoView的布局参数
|
||||
// FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(scaledWidth, scaledHeight);
|
||||
// layoutParams.gravity = Gravity.CENTER;
|
||||
// videoView.setLayoutParams(layoutParams);
|
||||
// }
|
||||
// });
|
||||
// // 设置视频路径,从raw资源中
|
||||
// String videoPath = "android.resource://" + getPackageName() + "/" + R.raw.app_start;
|
||||
//
|
||||
// // 设置播放完成监听器
|
||||
// videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
|
||||
// @Override
|
||||
// public void onCompletion(MediaPlayer mp) {
|
||||
// // 播放完成后执行后续操作
|
||||
// setEnter();
|
||||
// }
|
||||
// });
|
||||
//
|
||||
// // 设置错误监听器
|
||||
// videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
|
||||
// @Override
|
||||
// public boolean onError(MediaPlayer mp, int what, int extra) {
|
||||
// // 发生错误时也执行后续操作
|
||||
// setEnter();
|
||||
// return true; // 返回true表示已处理错误
|
||||
// }
|
||||
// });
|
||||
//
|
||||
// // 设置视频路径并开始播放
|
||||
// try {
|
||||
// videoView.setVideoURI(Uri.parse(videoPath));
|
||||
// videoView.requestFocus(); // 请求焦点以确保视频能够播放
|
||||
// videoView.start();
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// // 如果设置视频路径时出错,直接执行后续操作
|
||||
// setEnter();
|
||||
// }
|
||||
// AppContext.setKilled(false);
|
||||
// } else {
|
||||
// setEnter();
|
||||
// }
|
||||
// 计算缩放比例
|
||||
float scaleX = (float) screenWidth / videoWidth;
|
||||
float scaleY = (float) screenHeight / videoHeight;
|
||||
|
||||
// 选择较大的缩放比例,确保视频填满屏幕
|
||||
float scale = Math.max(scaleX, scaleY);
|
||||
|
||||
// 计算实际显示的宽高
|
||||
int scaledWidth = (int) (videoWidth * scale);
|
||||
int scaledHeight = (int) (videoHeight * scale);
|
||||
|
||||
// 设置VideoView的布局参数
|
||||
FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(scaledWidth, scaledHeight);
|
||||
layoutParams.gravity = Gravity.CENTER;
|
||||
videoView.setLayoutParams(layoutParams);
|
||||
|
||||
// 获取视频总时长并设置进度条最大值
|
||||
int duration = mp.getDuration();
|
||||
mBinding.progress.setMaxProgress(duration);
|
||||
|
||||
// 显示跳过按钮
|
||||
mBinding.btnSkipImg.setVisibility(android.view.View.VISIBLE);
|
||||
|
||||
// 启动进度更新
|
||||
startProgressUpdate(mp, duration);
|
||||
}
|
||||
});
|
||||
|
||||
// 设置视频路径,从raw资源中
|
||||
String videoPath = "android.resource://" + getPackageName() + "/" + R.raw.app_start;
|
||||
|
||||
// 设置播放完成监听器
|
||||
videoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
|
||||
@Override
|
||||
public void onCompletion(MediaPlayer mp) {
|
||||
// 播放完成后执行后续操作
|
||||
setEnter();
|
||||
}
|
||||
});
|
||||
|
||||
// 设置错误监听器
|
||||
videoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
|
||||
@Override
|
||||
public boolean onError(MediaPlayer mp, int what, int extra) {
|
||||
// 发生错误时也执行后续操作
|
||||
setEnter();
|
||||
return true; // 返回true表示已处理错误
|
||||
}
|
||||
});
|
||||
|
||||
// 设置视频路径并开始播放
|
||||
try {
|
||||
videoView.setVideoURI(Uri.parse(videoPath));
|
||||
videoView.requestFocus(); // 请求焦点以确保视频能够播放
|
||||
videoView.start();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
// 如果设置视频路径时出错,直接执行后续操作
|
||||
setEnter();
|
||||
}
|
||||
|
||||
// 设置跳过按钮点击事件
|
||||
mBinding.btnSkipImg.setOnClickListener(v -> {
|
||||
// 点击跳过按钮时,停止视频并跳转到登录页
|
||||
if (videoView != null) {
|
||||
videoView.stopPlayback();
|
||||
}
|
||||
setEnter();
|
||||
});
|
||||
|
||||
// 设置文本跳过按钮点击事件
|
||||
mBinding.btnSkipVideo.setOnClickListener(v -> {
|
||||
// 点击跳过按钮时,停止视频并跳转到登录页
|
||||
if (videoView != null) {
|
||||
videoView.stopPlayback();
|
||||
}
|
||||
setEnter();
|
||||
});
|
||||
}
|
||||
|
||||
// 用于更新进度条的方法
|
||||
private void startProgressUpdate(MediaPlayer mediaPlayer, int duration) {
|
||||
// 使用MediaPlayer实例的引用,避免在回调中直接使用可能导致异常的MediaPlayer对象
|
||||
final MediaPlayer mp = mediaPlayer;
|
||||
handler = new Handler();
|
||||
handler.postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
try {
|
||||
// 检查videoView是否还在播放状态,而不是直接检查mediaPlayer
|
||||
if (videoView != null && videoView.isPlaying()) {
|
||||
// 使用videoView获取当前播放位置,而不是mediaPlayer
|
||||
int currentPosition = videoView.getCurrentPosition();
|
||||
mBinding.progress.setCurProgress(currentPosition);
|
||||
|
||||
// 继续更新进度
|
||||
handler.postDelayed(this, 100); // 每100毫秒更新一次
|
||||
}
|
||||
} catch (Exception e) {
|
||||
// 捕获任何可能的异常,防止应用崩溃
|
||||
LogUtils.e("LaunchPageActivity", "更新进度时出错: " + e.getMessage());
|
||||
}
|
||||
}
|
||||
}, 100); // 延迟100毫秒开始更新
|
||||
}
|
||||
|
||||
private void initLogin() {
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
android:layout_marginTop="37dp"
|
||||
android:layout_marginRight="15dp"
|
||||
android:background="@drawable/bg_launcher_skip"
|
||||
android:visibility="invisible">
|
||||
android:visibility="visible">
|
||||
|
||||
<com.xscm.moduleutil.custon.CircleProgress
|
||||
android:id="@+id/progress"
|
||||
@@ -89,14 +89,14 @@
|
||||
</LinearLayout>
|
||||
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/cover"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:clickable="true"
|
||||
android:src="@mipmap/screen"
|
||||
android:scaleType="centerCrop"
|
||||
android:visibility="visible" />
|
||||
<!-- <ImageView-->
|
||||
<!-- android:id="@+id/cover"-->
|
||||
<!-- android:layout_width="match_parent"-->
|
||||
<!-- android:layout_height="match_parent"-->
|
||||
<!-- android:clickable="true"-->
|
||||
<!-- android:src="@mipmap/screen"-->
|
||||
<!-- android:scaleType="centerCrop"-->
|
||||
<!-- android:visibility="visible" />-->
|
||||
|
||||
</FrameLayout>
|
||||
</layout>
|
||||
Binary file not shown.
Reference in New Issue
Block a user