Commit cf3afae1 authored by wanglei's avatar wanglei

[拆包]病毒功能用户同意弹窗处理

parent 700a4294
......@@ -62,4 +62,7 @@
# public static *** i(...);
# public static *** w(...);
# public static *** e(...);
#}
\ No newline at end of file
#}
#病毒扫描
-keep class com.trustlook.** {*;}
\ No newline at end of file
......@@ -88,6 +88,7 @@ class AdBannerMgr {
adClose?.invoke()
}
}
admobEvent.adPulStart()
adView?.loadAd(adRequest)
}
......
......@@ -117,6 +117,9 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
binding.tvClean.setOnClickListener {
(requireActivity() as MainActivity).permissionStorageJump(JUNK_CLEAN)
}
binding.flClean.setOnClickListener {
(requireActivity() as MainActivity).permissionStorageJump(JUNK_CLEAN)
}
adapter.itemClick = {
when (it.key) {
......@@ -139,7 +142,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
ANTIVIRUS -> {
val dialog = MalwareDialog(requireActivity())
dialog.action = {
(requireActivity() as MainActivity).permissionStorageJump(it.key)
(requireActivity() as MainActivity).permissionStorageJump(ANTIVIRUS)
}
dialog.showDialog()
......
......@@ -11,6 +11,7 @@ import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.bean.config.AdConfigBean
import com.base.appzxhy.business.ads.AdsMgr
import com.base.appzxhy.databinding.ActivityMainBinding
import com.base.appzxhy.ui.dialog.AppExitDialog
import com.base.appzxhy.ui.dialog.NotificationTurnOnDialog
import com.base.appzxhy.ui.dialog.RateDialog
import com.base.appzxhy.ui.dialog.StoragePermissionDialog
......@@ -85,6 +86,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
super.initListener()
}
override fun handleBackCallBack() {
val dialog = AppExitDialog(this)
dialog.showDialog()
}
override fun onResumeOneShoot() {
super.onResumeOneShoot()
mainPageCount = mainPageCount + 1
......
......@@ -4,6 +4,17 @@ import android.app.Activity
import android.view.LayoutInflater
import androidx.appcompat.app.AlertDialog
import com.base.appzxhy.databinding.DialogMalwareTipBinding
import com.base.appzxhy.utils.AppPreferences
//是否已经同意
var malwareTipAgree = false
get() {
return AppPreferences.getInstance().getBoolean("malwareTipAgree", field)
}
set(value) {
field = value
AppPreferences.getInstance().put("malwareTipAgree", value, true)
}
class MalwareDialog(
val activity: Activity
......@@ -12,9 +23,15 @@ class MalwareDialog(
val dialog = AlertDialog.Builder(activity).create()
val binding = DialogMalwareTipBinding.inflate(LayoutInflater.from(activity))
var action: (() -> Unit)? = null
var action: ((flag: Boolean) -> Unit)? = null
fun showDialog() {
if (malwareTipAgree) {
action?.invoke(true)
return
}
dialog.setView(binding.root)
dialog.setCanceledOnTouchOutside(false)
dialog.show()
......@@ -27,12 +44,20 @@ class MalwareDialog(
dialog.window?.attributes = params
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
var flag = false
binding.tvCancel.setOnClickListener {
dialog.dismiss()
}
binding.tvSure.setOnClickListener {
dialog.dismiss()
action?.invoke()
flag = true
malwareTipAgree = true
action?.invoke(true)
}
dialog.setOnDismissListener {
action?.invoke(flag)
}
}
}
\ No newline at end of file
......@@ -25,6 +25,7 @@ import com.base.appzxhy.SpConstObject.ifAgreePrivacy
import com.base.appzxhy.SpConstObject.isGuided
import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.base.jumpAction
import com.base.appzxhy.bean.FeatureBean.Companion.ANTIVIRUS
import com.base.appzxhy.bean.FeatureBean.Companion.BATTERY_INFO
import com.base.appzxhy.bean.config.AdConfigBean
import com.base.appzxhy.business.ads.AdsMgr
......@@ -37,6 +38,7 @@ import com.base.appzxhy.databinding.ActivitySplashBinding
import com.base.appzxhy.ui.dialog.StoragePermissionDialog
import com.base.appzxhy.ui.language.LanguageActivity
import com.base.appzxhy.ui.main.MainActivity
import com.base.appzxhy.ui.malware.MalwareDialog
import com.base.appzxhy.utils.LogEx
import com.base.appzxhy.utils.PermissionUtils.checkStorePermission
import com.base.appzxhy.utils.PermissionUtils.requestStoragePermission
......@@ -257,24 +259,44 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding
}
else -> {
if (checkStorePermission()) {
jumpAction(actionId)
finish()
} else {
val dialog = StoragePermissionDialog(this)
dialog.action = {
requestStoragePermission(launcher) {
if (it) {
jumpAction(actionId)
finish()
} else {
goToAc(MainActivity::class.java)
finish()
val actionStorage = {
if (checkStorePermission()) {
jumpAction(actionId)
finish()
} else {
val dialog = StoragePermissionDialog(this)
dialog.action = {
requestStoragePermission(launcher) {
if (it) {
jumpAction(actionId)
finish()
} else {
goToAc(MainActivity::class.java)
finish()
}
}
}
dialog.showDialog()
}
}
if (actionId == ANTIVIRUS) {
val dialog = MalwareDialog(this)
dialog.action = {
if (it) {
actionStorage.invoke()
} else {
goToAc(MainActivity::class.java)
finish()
}
}
dialog.showDialog()
} else {
actionStorage.invoke()
}
}
}
......
......@@ -43,7 +43,7 @@
android:layout_marginTop="16dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="Collect installed application information:"
android:text="@string/collect_installed_application_information"
android:textColor="@color/color_1a1a1a"
android:textSize="15sp"
android:textStyle="bold"
......@@ -59,7 +59,7 @@
android:layout_marginTop="4dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="When you use the VlRUS scanning function, we will collect information about the applications you install, including: name of the installed application, application package name, application version code, application version name, MD5 hash and signature information, installation path and device File information on storage."
android:text="@string/when_you_use_the_vlrus"
android:textColor="@color/color_666666"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
......@@ -75,7 +75,7 @@
android:layout_marginTop="16dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="Using and transferring installed application information:"
android:text="@string/using_and_transferring_installed"
android:textColor="@color/color_1a1a1a"
android:textSize="15sp"
android:textStyle="bold"
......@@ -91,7 +91,7 @@
android:layout_marginTop="4dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="Virus scanning functionality uses Trustlook SDK. When you use the virus scanning function, we will upload the collected installed application information to the Trustlook third-party virus database for scanning, so as to promptly discover possible security risks and provide better protection. Trustlook SDK provides security services, which Application collections are analyzed, applying static and behavioral analysis to give application risk reports."
android:text="@string/virus_scanning_functionality_uses_trustlook_sdk"
android:textColor="@color/color_666666"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
......@@ -107,7 +107,7 @@
android:layout_marginTop="16dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="Installed application information access and sharing statement:"
android:text="@string/installed_application_information_access_and_sharing_statement"
android:textColor="@color/color_1a1a1a"
android:textSize="15sp"
android:textStyle="bold"
......@@ -123,7 +123,7 @@
android:layout_marginTop="4dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="We take the confidentiality of your information very seriously, and we and Trustlook SDK will not sell, license, transfer or disclose this information unless authorized by you."
android:text="@string/we_take_the_confidentiality_of_your"
android:textColor="@color/color_666666"
android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent"
......@@ -138,7 +138,7 @@
android:layout_marginTop="16dp"
android:includeFontPadding="false"
android:lineSpacingExtra="4dp"
android:text="View information collection instructions:"
android:text="@string/view_information_collection_instructions"
android:textColor="@color/color_1a1a1a"
android:textSize="15sp"
android:textStyle="bold"
......@@ -206,7 +206,7 @@
android:layout_marginEnd="4dp"
android:background="@drawable/bg_edf7ff_50"
android:paddingVertical="10dp"
android:text="Reject"
android:text="@string/reject"
android:textAlignment="center"
android:textColor="@color/colorPrimary"
android:textSize="18sp"
......@@ -224,7 +224,7 @@
android:layout_marginEnd="16dp"
android:background="@drawable/bg_btn_50"
android:paddingVertical="10dp"
android:text="Agree"
android:text="@string/agree"
android:textAlignment="center"
android:textColor="@color/white"
android:textSize="18sp"
......
......@@ -50,6 +50,7 @@
<FrameLayout
android:id="@+id/flClean"
android:layout_width="@dimen/dp_180"
android:layout_height="@dimen/dp_180"
android:layout_marginTop="@dimen/dp_50"
......
......@@ -212,6 +212,14 @@ Please rest assured that we will handle your information in strict accordance wi
<string name="permission_request">Permission request</string>
<string name="deny">Deny</string>
<string name="allow">Allow</string>
<string name="reject">Reject</string>
<string name="collect_installed_application_information">Collect installed application information:</string>
<string name="when_you_use_the_vlrus">When you use the VlRUS scanning function, we will collect information about the applications you install, including: name of the installed application, application package name, application version code, application version name, MD5 hash and signature information, installation path and device File information on storage.</string>
<string name="using_and_transferring_installed">Using and transferring installed application information:</string>
<string name="virus_scanning_functionality_uses_trustlook_sdk">Virus scanning functionality uses Trustlook SDK. When you use the virus scanning function, we will upload the collected installed application information to the Trustlook third-party virus database for scanning, so as to promptly discover possible security risks and provide better protection. Trustlook SDK provides security services, which Application collections are analyzed, applying static and behavioral analysis to give application risk reports.</string>
<string name="installed_application_information_access_and_sharing_statement">Installed application information access and sharing statement:</string>
<string name="we_take_the_confidentiality_of_your">We take the confidentiality of your information very seriously, and we and Trustlook SDK will not sell, license, transfer or disclose this information unless authorized by you.</string>
<string name="view_information_collection_instructions">View information collection instructions:</string>
</resources>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment