//package com.test.basd.quickclean.activity

//import android.animation.ValueAnimator
//import android.content.Intent
//import android.graphics.Color
//import android.view.animation.LinearInterpolator
//import androidx.activity.OnBackPressedCallback
//import androidx.core.view.isVisible
//import androidx.core.view.updatePadding
//import com.blankj.utilcode.util.BarUtils
//import com.blankj.utilcode.util.ToastUtils
//import com.test.basd.quickclean.databinding.ActivityLayoutVirusBinding
//import com.test.basd.quickclean.helps.BaseActivity
//import com.test.basd.quickclean.helps.ConfigHelper
//import com.test.basd.quickclean.helps.ads.AdmobUtils
//import com.test.basd.quickclean.view.AFunOb
//import com.trustlook.sdk.cloudscan.CloudScanClient
//import com.trustlook.sdk.cloudscan.CloudScanListener
//import com.trustlook.sdk.data.AppInfo
//import com.trustlook.sdk.data.Region
//import kotlinx.coroutines.Dispatchers
//import kotlinx.coroutines.MainScope
//import kotlinx.coroutines.delay
//import kotlinx.coroutines.launch

//class VirusActivity : BaseActivity<ActivityLayoutVirusBinding>() {
//    override val binding: ActivityLayoutVirusBinding by lazy {
//        ActivityLayoutVirusBinding.inflate(layoutInflater)
//    }
//
//    override fun initView() {
//        BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
//        binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
//        cloudScanClient = CloudScanClient.Builder(this)
//            .setRegion(Region.INTL)
//            .setConnectionTimeout(30000)
//            .setSocketTimeout(30000)
//            .build()
//        binding.idVirusReturn.setOnClickListener {
//            onBackPressedDispatcher.onBackPressed()
//        }
//        onBackPressedDispatcher.addCallback(object : OnBackPressedCallback(true) {
//            override fun handleOnBackPressed() {
//                AdmobUtils.showInterstitialAd(this@VirusActivity) {
//                    finishToMain()
//                }
//            }
//
//        })
//    }
//
//
//    private var cloudScanClient: CloudScanClient? = null
//    private var mScanList = ArrayList<AppInfo>()
//    private var mProcess = 0
//    var ifshowDialog = 0
//    override fun onStart() {
//        super.onStart()
//        if (!ConfigHelper.virusReminder) {
//            ifshowDialog += 1
//            if (ifshowDialog == 1) {
//                showDialog()
//            }
//        } else {
//            checkPermission()
//        }
//
//    }
//
//
//    var ifShowDialog = false
//    private fun showDialog() {
//        ConfigHelper.showWarmReminder(this) {
//            if (it) {
//                ConfigHelper.virusReminder = true
//                checkPermission()
//            } else {
//                finishToMain()
//            }
//        }
//    }
//
//    var isgetPermission = 0
//    override fun onPermissionsResult(isGranted: Boolean) {
//        if (isGranted) {
//            isgetPermission += 1
//            if (isgetPermission == 1) {
//                startScan()
//            }
//        } else {
//            ToastUtils.showShort("No permission.")
//            finishToMain()
//        }
//    }
//
//    private fun startScan() {
//        ValueAnimator.ofFloat(0f, 360f).run {
//            duration = 1000
//            interpolator = LinearInterpolator()
//            repeatCount = ValueAnimator.INFINITE
//            repeatMode = ValueAnimator.RESTART
//            addUpdateListener {
//                binding.idImgAni.rotation = it.animatedValue as Float
//            }
//            start()
//        }
//        cloudScanClient?.startQuickScan(object : CloudScanListener() {
//            override fun onScanStarted() {
//
//                binding.idTvText.text = "Security scan..."
//                addPro()
//            }
//
//            override fun onScanProgress(curr: Int, total: Int, result: AppInfo) {
//
//            }
//
//            override fun onScanError(errCode: Int, message: String) {
//
//                //   ToastUtils.showShort("${message}")
//
//            }
//
//            override fun onScanCanceled() {
//
//            }
//
//            override fun onScanInterrupt() {}
//            override fun onScanFinished(results: List<AppInfo>) {
//                mScanList.addAll(results)
//                //  fragment.update(results, results.size)
//                //                packagenameScan();
//            }
//        })
//    }
//
//    private fun addPro() {
//        MainScope().launch(Dispatchers.Main) {
//            var index = 0
//            launch {
//                while (mProcess < 100) {
//                    delay(100)
//                    mProcess += 1
//                    if (mScanList.isNotEmpty()) {
//                        binding.idTvAppPackage.text = mScanList[index].packageName
//                        //  index = (index + 1) % mScanList.size
//                        index += 1
//                        mProcess = mProcess.coerceAtLeast(index * 100 / mScanList.size)
//                    }
//                    binding.idTvBfb.isVisible = true
//                    binding.idCurrentPro.text = "$mProcess"
//                    binding.idProcess.progress = mProcess
//                }
//
//                val mVirsList = mScanList.filter {
//                    it.score > 5
//                }
//
//                AdmobUtils.showInterstitialAd(this@VirusActivity) {
//                    if (mVirsList.isNotEmpty()) {
//                        ConfigHelper.riskAppList = mVirsList
//                        startActivity(Intent(this@VirusActivity, VirusAppActivity::class.java))
//                        finish()
//                    } else {
//                        startActivity(
//                            Intent(
//                                this@VirusActivity,
//                                ResultActivity::class.java
//                            ).putExtra("from", AFunOb.VIRUS_SCAN)
//                        )
//                        finish()
//
//                    }
//                }
//
//
//            }
//
//        }
//
//    }
//
//    override fun onDestroy() {
//        super.onDestroy()
//        cloudScanClient?.cancelScan()
//    }
//}