- 21
- 0
第一次进来获取到动态权限,拿到权限后把播放控件放到父容器播放,但是现在的情况是,第一次拿到动态权限后不能播放,需要第二次或以后进来才能播放,确定是有拿到播放url的,请问这种问题该怎么解决?想要第一次进来获取到动态权限后也能正常播放,下面是类:
public class PreviewActivity extends BaseActivity {
@BindView(R.id.fl_play)
FrameLayout flPlay;
@BindView(R.id.et_video_title)
EditText mTitle;
private static final String TAG = "PreviewActivity";
private String url;
private KProgressHUD mKProgressHUD;
private static final int PERMISSION_CODE = 0;
public static void open(Context context, String url) {
Intent intent = new Intent(context, PreviewActivity.class);
intent.putExtra("url", url);
context.startActivity(intent);
}
@Override
protected View initView(Bundle savedInstanceState) {
View view = View.inflate(this, R.layout.activity_preview, null);
frameLayout.addView(view);
ButterKnife.bind(this, view);
mTvTitle.setText(getString(R.string.preview_video));
mTvMore.setText(getString(R.string.upload));
return view;
}
@Override
protected void initData() {
boolean hadPermissions = isGrantExternalRW(this);//请求动态权限
if (hadPermissions) {
playVideo();
}
}
/**
* 获取动态权限
*/
public static boolean isGrantExternalRW(Activity activity) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && activity.checkSelfPermission(
Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
activity.requestPermissions(new String[]{
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
}, PERMISSION_CODE);
return false;
}
return true;
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
if (requestCode == PERMISSION_CODE) {
Toast.makeText(this, "获取权限成功1457", Toast.LENGTH_SHORT).show();
playVideo();
} else if (grantResults[0] == PackageManager.PERMISSION_DENIED) {
ToastUtil.showMessage("获取权限失败,无法预览视频");
}
}
private void playVideo() {
//TODO:可根据type区分上传的视频类型(剪辑,美颜或拍摄的视频)
JZVideoPlayerStandardLoopVideo jzvdStd = new JZVideoPlayerStandardLoopVideo(this);
flPlay.addView(jzvdStd);
url = getIntent().getStringExtra("url");
Log.d(TAG, "initData: 1011=" + url);
jzvdStd.setUp(url, "", Jzvd.SCREEN_WINDOW_FULLSCREEN);
jzvdStd.tinyBackImageView.setVisibility(View.GONE);
jzvdStd.batteryTimeLayout.setVisibility(View.GONE); //隐藏电量和时间
jzvdStd.fullscreenButton.setVisibility(View.GONE); //全屏切换按钮
jzvdStd.startVideo();
}
}
0
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 11 元积分
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

