Commit 2da1a960 authored by wanglei's avatar wanglei

Merge remote-tracking branch 'origin/master'

parents 041e1099 bde6295b
......@@ -171,6 +171,12 @@
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.main.ScanAc"
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.provider"
......
......@@ -2,12 +2,12 @@ package com.base.scanqrclear.ui.main
import android.annotation.SuppressLint
import android.content.Intent
import androidx.core.view.updatePadding
import androidx.recyclerview.widget.GridLayoutManager
import com.base.scanqrclear.R
import com.base.scanqrclear.ads.AdsMgr
import com.base.scanqrclear.ads.AdsShowCallBack
import com.base.scanqrclear.base.BaseFragment
import com.base.scanqrclear.base.goToAc
import com.base.scanqrclear.bean.FunctionUIBean
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_CONTACT
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_EMAIL
......@@ -18,7 +18,6 @@ import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_TEXT
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_WEBSITE
import com.base.scanqrclear.bean.FunctionUIBean.Companion.KEY_WIFI
import com.base.scanqrclear.bean.config.AdConfigBean.Companion.adsConfigBean
import com.base.scanqrclear.bean.config.ConfigBean
import com.base.scanqrclear.databinding.FragmentCreateBinding
import com.base.scanqrclear.ui.contact.ContractActivity
import com.base.scanqrclear.ui.email.EmailActivity
......@@ -27,12 +26,9 @@ import com.base.scanqrclear.ui.message.MessageActivity
import com.base.scanqrclear.ui.telephone.TelephoneActivity
import com.base.scanqrclear.ui.text.TextActivity
import com.base.scanqrclear.ui.website.WebsiteActivity
import com.base.scanqrclear.ui.widget.LogDialog.showLogDialog
import com.base.scanqrclear.ui.wifi.WifiActivity
import com.base.scanqrclear.utils.AppPreferences
import com.base.scanqrclear.utils.BarUtils
import com.base.scanqrclear.utils.ClickTimesUtils.isContinuousTimesClick
import com.google.gson.Gson
import com.gyf.immersionbar.ktx.immersionBar
class CreateFragment : BaseFragment<FragmentCreateBinding>(FragmentCreateBinding::inflate) {
......@@ -60,7 +56,7 @@ class CreateFragment : BaseFragment<FragmentCreateBinding>(FragmentCreateBinding
override fun initView() {
super.initView()
binding.space.layoutParams.height = BarUtils.getStatusBarHeight()
// binding.ivVip.updatePadding(top = BarUtils.getStatusBarHeight())
// binding.ivVip.updatePadding(top = BarUtils.getStatusBarHeight())
adapter = FunctionAdapter()
binding.rv.layoutManager = GridLayoutManager(requireContext(), 3)
binding.rv.adapter = adapter
......@@ -149,20 +145,24 @@ class CreateFragment : BaseFragment<FragmentCreateBinding>(FragmentCreateBinding
override fun initListener() {
super.initListener()
binding.tvLogo.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())
}
goToAc(ScanAc::class.java)
}
// binding.rv.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())
// }
// }
}
}
\ No newline at end of file
......@@ -34,15 +34,15 @@ import java.util.concurrent.atomic.AtomicBoolean
class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::inflate) {
var cameraUtils: CameraUtils? = null
private val homeTabs by lazy {
arrayOf(
HomeTabUIBean(R.drawable.bg_selector_create, getString(R.string.create)),
HomeTabUIBean(R.drawable.bg_selector_scan, getString(R.string.scan)),
HomeTabUIBean(R.drawable.bg_selector_history, getString(R.string.history)),
HomeTabUIBean(R.drawable.bg_selector_clean, getString(R.string.files)),
// HomeTabUIBean(R.drawable.bg_selector_scan, getString(R.string.scan)),
HomeTabUIBean(R.drawable.bg_selector_history, getString(R.string.history)),
HomeTabUIBean(R.drawable.bg_selector_settings, getString(R.string.settings)),
)
}
......@@ -51,10 +51,6 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
CreateFragment()
}
private val scanFragment by lazy(LazyThreadSafetyMode.NONE) {
ScanFragment()
}
private val historyFragment by lazy(LazyThreadSafetyMode.NONE) {
HistoryFragment()
}
......@@ -67,7 +63,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
HomeFragment()
}
private val fragments = arrayOf(createFragment, scanFragment, historyFragment, homeFragment,settingFragment)
private val fragments = arrayOf(createFragment, homeFragment, historyFragment ,settingFragment)
private var pageAdapter: FragmentStateAdapter? = null
......@@ -104,7 +100,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
override fun initView() {
super.initView()
cameraUtils = CameraUtils(this)
initViewPager2()
initTab()
}
......@@ -316,11 +312,6 @@ class MainActivity : BaseActivity<ActivityMainBinding>(ActivityMainBinding::infl
naviFragment(this.id)
}
override fun onDestroy() {
super.onDestroy()
cameraUtils?.unBind()
}
override fun configSystemBar() {
immersionBar {
statusBarColor("#FFFFFFFF")
......
package com.base.scanqrclear.ui.main
import com.base.scanqrclear.base.BaseActivity
import com.base.scanqrclear.databinding.ActivityScanBinding
import com.base.scanqrclear.qr.CameraUtils
/**
*Create by SleepDog on 2025-01-20
*/
class ScanAc : BaseActivity<ActivityScanBinding>(ActivityScanBinding::inflate) {
var cameraUtils: CameraUtils? = null
override fun initView() {
super.initView()
cameraUtils = CameraUtils(this)
}
override fun onDestroy() {
super.onDestroy()
cameraUtils?.unBind()
cameraUtils = null
}
}
\ No newline at end of file
package com.base.scanqrclear.ui.main
import android.Manifest
import android.app.Activity
import android.content.Intent
import android.content.pm.PackageManager
import android.hardware.camera2.CameraMetadata.FLASH_MODE_OFF
......@@ -70,7 +71,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
if (requireContext().checkCameraPermission()) {
initCamera()
} else {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity ?: return
activity.launcher.launch(arrayOf(Manifest.permission.CAMERA)) {
initCamera()
......@@ -87,7 +88,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
if (!hasFlash) {
binding.flFlash.visibility = View.GONE
}
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity ?: return
qrImageAnalyzer.parseAction = { qrCodeValue, valueType ->
......@@ -132,7 +133,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
LogEx.logDebug(TAG, "qrCodeValue=$qrCodeValue valueType=$valueType isResumed=$isResumed")
if (!isResumed) return
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity ?: return
if (valueType == Barcode.TYPE_PRODUCT) {
......@@ -306,7 +307,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
}
}
private fun jumpMessageCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpMessageCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, MessageCodeActivity::class.java).apply {
val bean = createMessageBean(qrCodeValue)
bean.needCreate = true
......@@ -315,7 +316,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpContractCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpContractCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, ContractCodeActivity::class.java).apply {
val bean = createContractBean(qrCodeValue)
bean.needCreate = true
......@@ -324,7 +325,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpTelephoneCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpTelephoneCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, TelephoneCodeActivity::class.java).apply {
val bean = createTelephoneBean(qrCodeValue)
bean.needCreate = true
......@@ -333,7 +334,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpEventCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpEventCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, EventCodeActivity::class.java).apply {
val bean = createEventBean(qrCodeValue)
bean.needCreate = true
......@@ -342,7 +343,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpTextCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpTextCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, TextCodeActivity::class.java).apply {
val bean = TextUIBean()
bean.content = qrCodeValue
......@@ -352,7 +353,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpWebsiteCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpWebsiteCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, WebsiteCodeActivity::class.java).apply {
val bean = createWebsiteBean(qrCodeValue)
bean.needCreate = true
......@@ -361,7 +362,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpEmailCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpEmailCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, EmailCodeActivity::class.java).apply {
val bean = createEmailBean(qrCodeValue)
bean.needCreate = true
......@@ -370,7 +371,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpWifiCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpWifiCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, WifiCodeActivity::class.java).apply {
val bean = createWifiBean(qrCodeValue)
bean.needCreate = true
......@@ -379,7 +380,7 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
})
}
private fun jumpProductCodeActivity(activity: MainActivity, qrCodeValue: String) {
private fun jumpProductCodeActivity(activity: Activity, qrCodeValue: String) {
activity.startActivity(Intent(activity, ProductCodeActivity::class.java).apply {
val bean = ProductUIBean()
bean.content = qrCodeValue
......@@ -392,14 +393,14 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
override fun onDestroy() {
super.onDestroy()
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.unBind()
}
override fun initListener() {
super.initListener()
binding.flImage.setOnClickListener {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
val intent = intentSafPickImage()
activity?.launcher?.launch(intent) { result ->
val uri: Uri? = result.data?.data
......@@ -415,14 +416,14 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
}
}
binding.flFlash.setOnClickListener {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.turnOnFlash()
}
binding.seekbar.setOnSeekBarChangeListener(object : SeekBar.OnSeekBarChangeListener {
override fun onProgressChanged(seekBar: SeekBar, progress: Int, fromUser: Boolean) {
if (fromUser) {
val zoom = (zoomPair.first + seekBar.progress / 10f)
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.setZoomRate(zoom)
}
}
......@@ -435,12 +436,12 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
}
})
binding.flReduce.setOnClickListener {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.setZoomRate(zoomPair.first)
binding.seekbar.progress = 0
}
binding.flAdd.setOnClickListener {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.setZoomRate(zoomPair.second)
binding.seekbar.progress = binding.seekbar.max
}
......@@ -452,13 +453,13 @@ class ScanFragment : BaseFragment<FragmentScanBinding>(FragmentScanBinding::infl
private fun bindAnalyzer() {
if (analyzerbind.get()) return
analyzerbind.set(true)
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity ?: return
activity.cameraUtils?.startBind(binding.previewView, qrImageAnalyzer)
}
private fun unBindAnalyzer() {
val activity = requireActivity() as MainActivity?
val activity = requireActivity() as ScanAc?
activity?.cameraUtils?.unBind()
analyzerbind.set(false)
}
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.fragment.app.FragmentContainerView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:id="@+id/container"
android:name="com.base.scanqrclear.ui.main.ScanFragment"
android:layout_height="match_parent"/>
\ No newline at end of file
......@@ -11,21 +11,22 @@
android:label="fragment_create"
tools:layout="@layout/fragment_create" />
<fragment
android:id="@+id/scanFragment"
android:name="com.base.scanqrclear.ui.main.ScanFragment"
android:label="fragment_scan"
tools:layout="@layout/fragment_scan" />
android:id="@+id/homeFragment"
android:name="com.base.scanqrclear.luma.HomeFragment"
android:label="fragment_home"
tools:layout="@layout/fragment_home" />
<!-- <fragment-->
<!-- android:id="@+id/scanFragment"-->
<!-- android:name="com.base.scanqrclear.ui.main.ScanFragment"-->
<!-- android:label="fragment_scan"-->
<!-- tools:layout="@layout/fragment_scan" />-->
<fragment
android:id="@+id/historyFragment"
android:name="com.base.scanqrclear.ui.main.HistoryFragment"
android:label="fragment_history"
tools:layout="@layout/fragment_history" />
<fragment
android:id="@+id/homeFragment"
android:name="com.base.scanqrclear.luma.HomeFragment"
android:label="fragment_home"
tools:layout="@layout/fragment_home" />
<fragment
android:id="@+id/settingsFragment"
android:name="com.base.scanqrclear.ui.main.SettingsFragment"
......
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