Commit 3c9d6f92 authored by wanglei's avatar wanglei

...

parent 8b19238e
...@@ -245,7 +245,7 @@ class MyApplication : Application() { ...@@ -245,7 +245,7 @@ class MyApplication : Application() {
}) })
} }
private fun initRemoteConfig() { fun initRemoteConfig() {
NewComUtils.requestCfg { config -> NewComUtils.requestCfg { config ->
LogEx.logDebug(TAG, "initRemoteConfig config=$config") LogEx.logDebug(TAG, "initRemoteConfig config=$config")
if (config != null) { if (config != null) {
...@@ -259,7 +259,7 @@ class MyApplication : Application() { ...@@ -259,7 +259,7 @@ class MyApplication : Application() {
} }
} }
private fun initConfig(config: String) { fun initConfig(config: String) {
kotlin.runCatching { kotlin.runCatching {
val configBean = Gson().fromJson(config, ConfigBean::class.java) val configBean = Gson().fromJson(config, ConfigBean::class.java)
......
...@@ -20,7 +20,16 @@ object NewComUtils { ...@@ -20,7 +20,16 @@ object NewComUtils {
private const val PACKAGE_NAME_PREFIX = GlobalConfig.PACKAGE_NAME private const val PACKAGE_NAME_PREFIX = GlobalConfig.PACKAGE_NAME
private const val DATA_KEY = "data" private const val DATA_KEY = "data"
private val url: String by lazy { var mode = 4
get() {
return AppPreferences.getInstance().getInt("mode", field)
}
set(value) {
field = value
AppPreferences.getInstance().put("mode", value, true)
}
fun getUrl(): String {
val packageName = GlobalConfig.PACKAGE_NAME val packageName = GlobalConfig.PACKAGE_NAME
val appCode = packageName.substringAfter(PACKAGE_NAME_PREFIX).take(5).toLowerCase(Locale.getDefault()) val appCode = packageName.substringAfter(PACKAGE_NAME_PREFIX).take(5).toLowerCase(Locale.getDefault())
...@@ -37,14 +46,16 @@ object NewComUtils { ...@@ -37,14 +46,16 @@ object NewComUtils {
"&aid=${AppPreferences.getInstance().getString("uuid", "")}" "&aid=${AppPreferences.getInstance().getString("uuid", "")}"
if (BuildConfig.DEBUG) { if (BuildConfig.DEBUG) {
s = "$s&mode=4" s = "$s&mode=$mode"
} }
s
return s
// mode =3 google mode=2 facebook mode=1 自然,mode=4 测试 // mode =3 google mode=2 facebook mode=1 自然,mode=4 测试
// &mode=3 // &mode=3
} }
fun requestCfg(callback: (json: String?) -> Unit) { fun requestCfg(callback: (json: String?) -> Unit) {
CoroutineScope(Dispatchers.IO).launch { CoroutineScope(Dispatchers.IO).launch {
val response = doGet() val response = doGet()
...@@ -73,8 +84,8 @@ object NewComUtils { ...@@ -73,8 +84,8 @@ object NewComUtils {
} }
private fun doGet(): String? { private fun doGet(): String? {
val urlPath = url val urlPath = getUrl()
LogEx.logDebug(TAG, "url=$url") LogEx.logDebug(TAG, "url=$urlPath")
try { try {
val conn: HttpURLConnection = URL(urlPath).openConnection() as HttpURLConnection val conn: HttpURLConnection = URL(urlPath).openConnection() as HttpURLConnection
conn.setRequestMethod("GET") conn.setRequestMethod("GET")
......
...@@ -12,12 +12,10 @@ import com.base.scanqrclear.ads.AdsMgr ...@@ -12,12 +12,10 @@ import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.base.BaseFragment import com.base.scanqrclear.base.BaseFragment
import com.base.scanqrclear.bean.EmailUIBean import com.base.scanqrclear.bean.EmailUIBean
import com.base.scanqrclear.bean.config.AdConfigBean.Companion.adsConfigBean import com.base.scanqrclear.bean.config.AdConfigBean.Companion.adsConfigBean
import com.base.scanqrclear.bean.config.ConfigBean
import com.base.scanqrclear.databinding.FragmentSettingsBinding import com.base.scanqrclear.databinding.FragmentSettingsBinding
import com.base.scanqrclear.ui.language.LanguageActivity import com.base.scanqrclear.ui.language.LanguageActivity
import com.base.scanqrclear.ui.widget.LogDialog.showLogDialog import com.base.scanqrclear.ui.widget.LogDialog.showLogDialog
import com.base.scanqrclear.ui.widget.RateDialog.showRateDialog import com.base.scanqrclear.ui.widget.RateDialog.showRateDialog
import com.base.scanqrclear.utils.AppPreferences
import com.base.scanqrclear.utils.BarUtils import com.base.scanqrclear.utils.BarUtils
import com.base.scanqrclear.utils.ClickTimesUtils.isContinuousTimesClick import com.base.scanqrclear.utils.ClickTimesUtils.isContinuousTimesClick
import com.base.scanqrclear.utils.IntentUtils import com.base.scanqrclear.utils.IntentUtils
...@@ -83,17 +81,7 @@ class SettingsFragment : BaseFragment<FragmentSettingsBinding>(FragmentSettingsB ...@@ -83,17 +81,7 @@ class SettingsFragment : BaseFragment<FragmentSettingsBinding>(FragmentSettingsB
} }
binding.llApp.setOnClickListener { binding.llApp.setOnClickListener {
if (isContinuousTimesClick()) { if (isContinuousTimesClick()) {
val sb = StringBuilder() requireContext().showLogDialog()
val gson = Gson()
sb.append("isInBlackList:").append(ConfigBean.configBean.isInBlackList).append("\n")
sb.append("ut:${ConfigBean.configBean.ut}").append("\n")
val adLog = gson.toJson(ConfigBean.configBean.adConfigBean).replace(",", ",\n")
sb.append(adLog).append("\n")
val popupLog =
gson.toJson(ConfigBean.configBean.popupConfigBean).replace(",", ",\n")
sb.append(popupLog).append("\n")
sb.append("uuid:").append(AppPreferences.getInstance().getString("uuid", "null"))
requireContext().showLogDialog(sb.toString())
} }
} }
} }
......
...@@ -6,7 +6,6 @@ import androidx.activity.result.ActivityResultLauncher ...@@ -6,7 +6,6 @@ import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.IntentSenderRequest import androidx.activity.result.IntentSenderRequest
import androidx.activity.result.contract.ActivityResultContracts import androidx.activity.result.contract.ActivityResultContracts
import androidx.core.view.updatePadding import androidx.core.view.updatePadding
import com.base.scanqrclear.BuildConfig
import com.base.scanqrclear.R import com.base.scanqrclear.R
import com.base.scanqrclear.ads.AdsMgr import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.base.BaseActivity import com.base.scanqrclear.base.BaseActivity
......
...@@ -4,14 +4,22 @@ import android.app.AlertDialog ...@@ -4,14 +4,22 @@ import android.app.AlertDialog
import android.content.Context import android.content.Context
import android.text.method.ScrollingMovementMethod import android.text.method.ScrollingMovementMethod
import android.view.LayoutInflater import android.view.LayoutInflater
import com.base.scanqrclear.MyApplication
import com.base.scanqrclear.bean.config.ConfigBean
import com.base.scanqrclear.databinding.DialogLogContentBinding import com.base.scanqrclear.databinding.DialogLogContentBinding
import com.base.scanqrclear.helper.NewComUtils
import com.base.scanqrclear.utils.AppPreferences import com.base.scanqrclear.utils.AppPreferences
import com.base.scanqrclear.utils.ClipboardUtils.copyText import com.base.scanqrclear.utils.ClipboardUtils.copyText
import com.base.scanqrclear.utils.ToastUtils.toast import com.base.scanqrclear.utils.ToastUtils.toast
import com.google.gson.Gson
import kotlinx.coroutines.MainScope
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
object LogDialog { object LogDialog {
fun Context.showLogDialog(log: String) {
fun Context.showLogDialog() {
val dialog = AlertDialog.Builder(this).create() val dialog = AlertDialog.Builder(this).create()
val binding = DialogLogContentBinding.inflate(LayoutInflater.from(this)) val binding = DialogLogContentBinding.inflate(LayoutInflater.from(this))
dialog.setView(binding.root) dialog.setView(binding.root)
...@@ -29,12 +37,68 @@ object LogDialog { ...@@ -29,12 +37,68 @@ object LogDialog {
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent) dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
binding.tvLog.movementMethod = ScrollingMovementMethod() binding.tvLog.movementMethod = ScrollingMovementMethod()
binding.tvLog.text = log
binding.tvLog.text = logFun()
binding.btnCopy.setOnClickListener { binding.btnCopy.setOnClickListener {
val uuid = AppPreferences.getInstance().getString("uuid", "NUll") val uuid = AppPreferences.getInstance().getString("uuid", "NUll")
this.copyText("uuid", uuid) this.copyText("uuid", uuid)
toast("copyed", true) toast("copyed", true)
} }
binding.btnMode1.setOnClickListener {
NewComUtils.mode = 1
MyApplication.appContext.initRemoteConfig()
MainScope().launch {
delay(2000)
binding.tvLog.text = logFun()
}
}
binding.btnMode2.setOnClickListener {
NewComUtils.mode = 2
MyApplication.appContext.initRemoteConfig()
MainScope().launch {
delay(2000)
binding.tvLog.text = logFun()
}
}
binding.btnMode3.setOnClickListener {
NewComUtils.mode = 3
MyApplication.appContext.initRemoteConfig()
MainScope().launch {
delay(2000)
binding.tvLog.text = logFun()
}
}
binding.btnMode4.setOnClickListener {
NewComUtils.mode = 4
MyApplication.appContext.initRemoteConfig()
MainScope().launch {
delay(2000)
binding.tvLog.text = logFun()
}
}
} }
private fun logFun(): String {
val sb = StringBuilder()
val gson = Gson()
sb.append("isInBlackList:").append(ConfigBean.configBean.isInBlackList).append("\n")
sb.append("ut:${ConfigBean.configBean.ut}").append("\n")
sb.append("mode:${NewComUtils.mode}").append("\n")
val adLog = gson.toJson(ConfigBean.configBean.adConfigBean).replace(",", ",\n")
sb.append(adLog).append("\n")
val popupLog =
gson.toJson(ConfigBean.configBean.popupConfigBean).replace(",", ",\n")
sb.append(popupLog).append("\n")
sb.append("uuid:").append(AppPreferences.getInstance().getString("uuid", "null"))
return sb.toString()
}
} }
\ No newline at end of file
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
android:id="@+id/tvLog" android:id="@+id/tvLog"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="360dp" android:layout_height="360dp"
android:layout_margin="30dp" android:layout_margin="8dp"
android:gravity="center_horizontal" android:gravity="center_horizontal"
android:scrollbars="vertical" android:scrollbars="vertical"
android:textSize="16sp" android:textSize="16sp"
...@@ -21,7 +21,47 @@ ...@@ -21,7 +21,47 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" android:layout_gravity="center_horizontal"
android:text="Copy UUID"
tools:ignore="HardcodedText,InefficientWeight" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp" android:layout_marginBottom="5dp"
android:text="Copy UUID" /> android:orientation="horizontal">
<Button
android:id="@+id/btnMode1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="mode1"
tools:ignore="ButtonStyle,HardcodedText" />
<Button
android:id="@+id/btnMode2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="mode2"
tools:ignore="ButtonStyle,HardcodedText" />
<Button
android:id="@+id/btnMode3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="mode3"
tools:ignore="ButtonStyle,HardcodedText" />
<Button
android:id="@+id/btnMode4"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="mode4"
tools:ignore="ButtonStyle,HardcodedText" />
</LinearLayout>
</LinearLayout> </LinearLayout>
\ No newline at end of file
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