Commit cf3afae1 authored by wanglei's avatar wanglei

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

parent 700a4294
...@@ -62,4 +62,7 @@ ...@@ -62,4 +62,7 @@
# public static *** i(...); # public static *** i(...);
# public static *** w(...); # public static *** w(...);
# public static *** e(...); # 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 { ...@@ -88,6 +88,7 @@ class AdBannerMgr {
adClose?.invoke() adClose?.invoke()
} }
} }
admobEvent.adPulStart()
adView?.loadAd(adRequest) adView?.loadAd(adRequest)
} }
......
...@@ -117,6 +117,9 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl ...@@ -117,6 +117,9 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
binding.tvClean.setOnClickListener { binding.tvClean.setOnClickListener {
(requireActivity() as MainActivity).permissionStorageJump(JUNK_CLEAN) (requireActivity() as MainActivity).permissionStorageJump(JUNK_CLEAN)
} }
binding.flClean.setOnClickListener {
(requireActivity() as MainActivity).permissionStorageJump(JUNK_CLEAN)
}
adapter.itemClick = { adapter.itemClick = {
when (it.key) { when (it.key) {
...@@ -139,7 +142,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl ...@@ -139,7 +142,7 @@ class HomeFragment : BaseFragment<FragmentHomeBinding>(FragmentHomeBinding::infl
ANTIVIRUS -> { ANTIVIRUS -> {
val dialog = MalwareDialog(requireActivity()) val dialog = MalwareDialog(requireActivity())
dialog.action = { dialog.action = {
(requireActivity() as MainActivity).permissionStorageJump(it.key) (requireActivity() as MainActivity).permissionStorageJump(ANTIVIRUS)
} }
dialog.showDialog() dialog.showDialog()
......
...@@ -11,6 +11,7 @@ import com.base.appzxhy.base.BaseActivity ...@@ -11,6 +11,7 @@ import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.bean.config.AdConfigBean import com.base.appzxhy.bean.config.AdConfigBean
import com.base.appzxhy.business.ads.AdsMgr import com.base.appzxhy.business.ads.AdsMgr
import com.base.appzxhy.databinding.ActivityMainBinding 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.NotificationTurnOnDialog
import com.base.appzxhy.ui.dialog.RateDialog import com.base.appzxhy.ui.dialog.RateDialog
import com.base.appzxhy.ui.dialog.StoragePermissionDialog import com.base.appzxhy.ui.dialog.StoragePermissionDialog
...@@ -85,6 +86,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl ...@@ -85,6 +86,11 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
super.initListener() super.initListener()
} }
override fun handleBackCallBack() {
val dialog = AppExitDialog(this)
dialog.showDialog()
}
override fun onResumeOneShoot() { override fun onResumeOneShoot() {
super.onResumeOneShoot() super.onResumeOneShoot()
mainPageCount = mainPageCount + 1 mainPageCount = mainPageCount + 1
......
...@@ -4,6 +4,17 @@ import android.app.Activity ...@@ -4,6 +4,17 @@ import android.app.Activity
import android.view.LayoutInflater import android.view.LayoutInflater
import androidx.appcompat.app.AlertDialog import androidx.appcompat.app.AlertDialog
import com.base.appzxhy.databinding.DialogMalwareTipBinding 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( class MalwareDialog(
val activity: Activity val activity: Activity
...@@ -12,9 +23,15 @@ class MalwareDialog( ...@@ -12,9 +23,15 @@ class MalwareDialog(
val dialog = AlertDialog.Builder(activity).create() val dialog = AlertDialog.Builder(activity).create()
val binding = DialogMalwareTipBinding.inflate(LayoutInflater.from(activity)) val binding = DialogMalwareTipBinding.inflate(LayoutInflater.from(activity))
var action: (() -> Unit)? = null var action: ((flag: Boolean) -> Unit)? = null
fun showDialog() { fun showDialog() {
if (malwareTipAgree) {
action?.invoke(true)
return
}
dialog.setView(binding.root) dialog.setView(binding.root)
dialog.setCanceledOnTouchOutside(false) dialog.setCanceledOnTouchOutside(false)
dialog.show() dialog.show()
...@@ -27,12 +44,20 @@ class MalwareDialog( ...@@ -27,12 +44,20 @@ class MalwareDialog(
dialog.window?.attributes = params dialog.window?.attributes = params
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent) dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
var flag = false
binding.tvCancel.setOnClickListener { binding.tvCancel.setOnClickListener {
dialog.dismiss() dialog.dismiss()
} }
binding.tvSure.setOnClickListener { binding.tvSure.setOnClickListener {
dialog.dismiss() 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 ...@@ -25,6 +25,7 @@ import com.base.appzxhy.SpConstObject.ifAgreePrivacy
import com.base.appzxhy.SpConstObject.isGuided import com.base.appzxhy.SpConstObject.isGuided
import com.base.appzxhy.base.BaseActivity import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.base.jumpAction 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.FeatureBean.Companion.BATTERY_INFO
import com.base.appzxhy.bean.config.AdConfigBean import com.base.appzxhy.bean.config.AdConfigBean
import com.base.appzxhy.business.ads.AdsMgr import com.base.appzxhy.business.ads.AdsMgr
...@@ -37,6 +38,7 @@ import com.base.appzxhy.databinding.ActivitySplashBinding ...@@ -37,6 +38,7 @@ import com.base.appzxhy.databinding.ActivitySplashBinding
import com.base.appzxhy.ui.dialog.StoragePermissionDialog import com.base.appzxhy.ui.dialog.StoragePermissionDialog
import com.base.appzxhy.ui.language.LanguageActivity import com.base.appzxhy.ui.language.LanguageActivity
import com.base.appzxhy.ui.main.MainActivity 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.LogEx
import com.base.appzxhy.utils.PermissionUtils.checkStorePermission import com.base.appzxhy.utils.PermissionUtils.checkStorePermission
import com.base.appzxhy.utils.PermissionUtils.requestStoragePermission import com.base.appzxhy.utils.PermissionUtils.requestStoragePermission
...@@ -257,24 +259,44 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding ...@@ -257,24 +259,44 @@ class SplashActivity : BaseActivity<ActivitySplashBinding>(ActivitySplashBinding
} }
else -> { else -> {
if (checkStorePermission()) {
jumpAction(actionId) val actionStorage = {
finish() if (checkStorePermission()) {
} else { jumpAction(actionId)
val dialog = StoragePermissionDialog(this) finish()
dialog.action = { } else {
requestStoragePermission(launcher) { val dialog = StoragePermissionDialog(this)
if (it) { dialog.action = {
jumpAction(actionId) requestStoragePermission(launcher) {
finish() if (it) {
} else { jumpAction(actionId)
goToAc(MainActivity::class.java) finish()
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() dialog.showDialog()
} else {
actionStorage.invoke()
} }
} }
} }
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" android:lineSpacingExtra="4dp"
android:text="Collect installed application information:" android:text="@string/collect_installed_application_information"
android:textColor="@color/color_1a1a1a" android:textColor="@color/color_1a1a1a"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
android:layout_marginTop="4dp" android:layout_marginTop="4dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" 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:textColor="@color/color_666666"
android:textSize="13sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" android:lineSpacingExtra="4dp"
android:text="Using and transferring installed application information:" android:text="@string/using_and_transferring_installed"
android:textColor="@color/color_1a1a1a" android:textColor="@color/color_1a1a1a"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
...@@ -91,7 +91,7 @@ ...@@ -91,7 +91,7 @@
android:layout_marginTop="4dp" android:layout_marginTop="4dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" 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:textColor="@color/color_666666"
android:textSize="13sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" 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:textColor="@color/color_1a1a1a"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
...@@ -123,7 +123,7 @@ ...@@ -123,7 +123,7 @@
android:layout_marginTop="4dp" android:layout_marginTop="4dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" 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:textColor="@color/color_666666"
android:textSize="13sp" android:textSize="13sp"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
...@@ -138,7 +138,7 @@ ...@@ -138,7 +138,7 @@
android:layout_marginTop="16dp" android:layout_marginTop="16dp"
android:includeFontPadding="false" android:includeFontPadding="false"
android:lineSpacingExtra="4dp" android:lineSpacingExtra="4dp"
android:text="View information collection instructions:" android:text="@string/view_information_collection_instructions"
android:textColor="@color/color_1a1a1a" android:textColor="@color/color_1a1a1a"
android:textSize="15sp" android:textSize="15sp"
android:textStyle="bold" android:textStyle="bold"
...@@ -206,7 +206,7 @@ ...@@ -206,7 +206,7 @@
android:layout_marginEnd="4dp" android:layout_marginEnd="4dp"
android:background="@drawable/bg_edf7ff_50" android:background="@drawable/bg_edf7ff_50"
android:paddingVertical="10dp" android:paddingVertical="10dp"
android:text="Reject" android:text="@string/reject"
android:textAlignment="center" android:textAlignment="center"
android:textColor="@color/colorPrimary" android:textColor="@color/colorPrimary"
android:textSize="18sp" android:textSize="18sp"
...@@ -224,7 +224,7 @@ ...@@ -224,7 +224,7 @@
android:layout_marginEnd="16dp" android:layout_marginEnd="16dp"
android:background="@drawable/bg_btn_50" android:background="@drawable/bg_btn_50"
android:paddingVertical="10dp" android:paddingVertical="10dp"
android:text="Agree" android:text="@string/agree"
android:textAlignment="center" android:textAlignment="center"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="18sp" android:textSize="18sp"
......
...@@ -50,6 +50,7 @@ ...@@ -50,6 +50,7 @@
<FrameLayout <FrameLayout
android:id="@+id/flClean"
android:layout_width="@dimen/dp_180" android:layout_width="@dimen/dp_180"
android:layout_height="@dimen/dp_180" android:layout_height="@dimen/dp_180"
android:layout_marginTop="@dimen/dp_50" android:layout_marginTop="@dimen/dp_50"
......
...@@ -212,6 +212,14 @@ Please rest assured that we will handle your information in strict accordance wi ...@@ -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="permission_request">Permission request</string>
<string name="deny">Deny</string> <string name="deny">Deny</string>
<string name="allow">Allow</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> </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