106 lines
2.8 KiB
Java
106 lines
2.8 KiB
Java
|
|
package com.xscm.midi;
|
||
|
|
|
||
|
|
|
||
|
|
import android.content.Intent;
|
||
|
|
import android.os.Bundle;
|
||
|
|
import android.os.Handler;
|
||
|
|
|
||
|
|
import androidx.annotation.Nullable;
|
||
|
|
|
||
|
|
import com.xscm.modulelogin.activity.ImproveInfoActivity;
|
||
|
|
import com.xscm.moduleutil.activity.BaseAppCompatActivity;
|
||
|
|
import com.xscm.moduleutil.base.CommonAppContext;
|
||
|
|
import com.xscm.moduleutil.dialog.PolicyDialog;
|
||
|
|
import com.xscm.moduleutil.utils.SpUtil;
|
||
|
|
import com.xscm.midi.databinding.ActivityLaunchPageBinding;
|
||
|
|
|
||
|
|
public class LaunchPageActivity extends BaseAppCompatActivity<ActivityLaunchPageBinding> {
|
||
|
|
private Handler handler;
|
||
|
|
private PolicyDialog policyDialog;
|
||
|
|
|
||
|
|
@Override
|
||
|
|
protected void initData() {
|
||
|
|
handler = new Handler();
|
||
|
|
// 定义一个Runnable
|
||
|
|
Runnable runnable = new Runnable() {
|
||
|
|
@Override
|
||
|
|
public void run() {
|
||
|
|
initLogin();
|
||
|
|
}
|
||
|
|
};
|
||
|
|
if (SpUtil.isAgreePolicy()) {
|
||
|
|
initLogin();
|
||
|
|
// //延迟1.5秒执行
|
||
|
|
// handler.postDelayed(runnable, 2500);
|
||
|
|
} else {
|
||
|
|
policyDialog = new PolicyDialog(this);
|
||
|
|
policyDialog.setCancelable(false);
|
||
|
|
policyDialog.setCanceledOnTouchOutside(false);
|
||
|
|
policyDialog.setPolicyClickListener(new PolicyDialog.PolicyClickListener() {
|
||
|
|
@Override
|
||
|
|
public void policyAgree() {
|
||
|
|
SpUtil.completeAgreePolicy();
|
||
|
|
// CommonAppContext.getInstance().initialization();
|
||
|
|
initLogin();
|
||
|
|
}
|
||
|
|
|
||
|
|
@Override
|
||
|
|
public void policyExit() {
|
||
|
|
finish();
|
||
|
|
}
|
||
|
|
});
|
||
|
|
policyDialog.show();
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected void onDestroy() {
|
||
|
|
// 如果 PolicyDialog 仍在显示,则 dismiss 它
|
||
|
|
if (policyDialog != null && policyDialog.isShowing()) {
|
||
|
|
policyDialog.dismiss();
|
||
|
|
policyDialog = null;
|
||
|
|
}
|
||
|
|
|
||
|
|
// 移除所有待处理的回调以防止内存泄漏
|
||
|
|
if (handler != null) {
|
||
|
|
handler.removeCallbacksAndMessages(null);
|
||
|
|
}
|
||
|
|
|
||
|
|
super.onDestroy();
|
||
|
|
}
|
||
|
|
@Override
|
||
|
|
protected void initView() {
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
private void initLogin() {
|
||
|
|
// 在启动新 Activity 前先关闭对话框
|
||
|
|
if (policyDialog != null && policyDialog.isShowing()) {
|
||
|
|
policyDialog.dismiss();
|
||
|
|
policyDialog = null;
|
||
|
|
}
|
||
|
|
startActivity(new Intent(this, PasswordLoginActivity.class));
|
||
|
|
finish();
|
||
|
|
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
@Override
|
||
|
|
protected int getLayoutId() {
|
||
|
|
return R.layout.activity_launch_page;
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
@Override
|
||
|
|
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||
|
|
super.onCreate(savedInstanceState);
|
||
|
|
if (!isTaskRoot()) {
|
||
|
|
finish();
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|