Commit 3c9d6f92 authored by wanglei's avatar wanglei

...

parent 8b19238e
......@@ -245,7 +245,7 @@ class MyApplication : Application() {
})
}
private fun initRemoteConfig() {
fun initRemoteConfig() {
NewComUtils.requestCfg { config ->
LogEx.logDebug(TAG, "initRemoteConfig config=$config")
if (config != null) {
......@@ -259,7 +259,7 @@ class MyApplication : Application() {
}
}
private fun initConfig(config: String) {
fun initConfig(config: String) {
kotlin.runCatching {
val configBean = Gson().fromJson(config, ConfigBean::class.java)
......
......@@ -20,7 +20,16 @@ object NewComUtils {
private const val PACKAGE_NAME_PREFIX = GlobalConfig.PACKAGE_NAME
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 appCode = packageName.substringAfter(PACKAGE_NAME_PREFIX).take(5).toLowerCase(Locale.getDefault())
......@@ -37,14 +46,16 @@ object NewComUtils {
"&aid=${AppPreferences.getInstance().getString("uuid", "")}"
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
}
fun requestCfg(callback: (json: String?) -> Unit) {
CoroutineScope(Dispatchers.IO).launch {
val response = doGet()
......@@ -73,8 +84,8 @@ object NewComUtils {
}
private fun doGet(): String? {
val urlPath = url
LogEx.logDebug(TAG, "url=$url")
val urlPath = getUrl()
LogEx.logDebug(TAG, "url=$urlPath")
try {
val conn: HttpURLConnection = URL(urlPath).openConnection() as HttpURLConnection
conn.setRequestMethod("GET")
......
......@@ -12,12 +12,10 @@ import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.base.BaseFragment
import com.base.scanqrclear.bean.EmailUIBean
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.ui.language.LanguageActivity
import com.base.scanqrclear.ui.widget.LogDialog.showLogDialog
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.ClickTimesUtils.isContinuousTimesClick
import com.base.scanqrclear.utils.IntentUtils
......@@ -83,17 +81,7 @@ class SettingsFragment : BaseFragment<FragmentSettingsBinding>(FragmentSettingsB
}
binding.llApp.setOnClickListener {
if (isContinuousTimesClick()) {
val sb = StringBuilder()
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())
requireContext().showLogDialog()
}
}
}
......
......@@ -6,7 +6,6 @@ import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.IntentSenderRequest
import androidx.activity.result.contract.ActivityResultContracts
import androidx.core.view.updatePadding
import com.base.scanqrclear.BuildConfig
import com.base.scanqrclear.R
import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.base.BaseActivity
......
......@@ -4,14 +4,22 @@ import android.app.AlertDialog
import android.content.Context
import android.text.method.ScrollingMovementMethod
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.helper.NewComUtils
import com.base.scanqrclear.utils.AppPreferences
import com.base.scanqrclear.utils.ClipboardUtils.copyText
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 {
fun Context.showLogDialog(log: String) {
fun Context.showLogDialog() {
val dialog = AlertDialog.Builder(this).create()
val binding = DialogLogContentBinding.inflate(LayoutInflater.from(this))
dialog.setView(binding.root)
......@@ -29,12 +37,68 @@ object LogDialog {
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
binding.tvLog.movementMethod = ScrollingMovementMethod()
binding.tvLog.text = log
binding.tvLog.text = logFun()
binding.btnCopy.setOnClickListener {
val uuid = AppPreferences.getInstance().getString("uuid", "NUll")
this.copyText("uuid", uuid)
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 @@
android:id="@+id/tvLog"
android:layout_width="match_parent"
android:layout_height="360dp"
android:layout_margin="30dp"
android:layout_margin="8dp"
android:gravity="center_horizontal"
android:scrollbars="vertical"
android:textSize="16sp"
......@@ -21,7 +21,47 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
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: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>
\ 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