package com.casic.br.view import com.casic.br.R import com.casic.br.utils.LocaleConstant import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.utils.ImmerseStatusBarUtil import kotlinx.android.synthetic.main.activity_permssion.* import pub.devrel.easypermissions.EasyPermissions import pub.devrel.easypermissions.EasyPermissions.PermissionCallbacks class PermissionActivity : KotlinBaseActivity(), PermissionCallbacks { override fun initLayoutView(): Int = R.layout.activity_permssion override fun setupTopBarLayout() { ImmersionBar.with(this).statusBarDarkFont(true).init() ImmerseStatusBarUtil.setColor(this, R.color.white.convertColor(this)) } override fun initData() { //判断是否有权限,如果版本大于5.1才需要判断(即6.0以上),其他则不需要判断。 if (EasyPermissions.hasPermissions(this, *LocaleConstant.USER_PERMISSIONS)) { startSplashScreenActivity() } else { enterMainButton.setOnClickListener { EasyPermissions.requestPermissions( this@PermissionActivity, resources.getString(R.string.app_name) + "需要获取存储相关权限", LocaleConstant.PERMISSIONS_CODE, *LocaleConstant.USER_PERMISSIONS ) } } } override fun initEvent() { } private fun startSplashScreenActivity() { navigatePageTo<SplashScreenActivity>() finish() } override fun onRequestPermissionsResult( requestCode: Int, permissions: Array<String>, grantResults: IntArray ) { super.onRequestPermissionsResult(requestCode, permissions, grantResults) EasyPermissions.onRequestPermissionsResult(requestCode, permissions, grantResults, this) } override fun onPermissionsGranted(requestCode: Int, perms: List<String>) { startSplashScreenActivity() } override fun onPermissionsDenied(requestCode: Int, perms: List<String>) { } }