Commit fd6e6cb5 authored by wanglei's avatar wanglei

...

parent 349afaec
......@@ -4,4 +4,5 @@ open class ScanBean(
val scanType: String = ""
) {
var createTime = 0L
var isCreateOrScan: Boolean = true//create:true ; scan:false
}
\ No newline at end of file
......@@ -6,7 +6,7 @@ import androidx.core.view.updatePadding
import com.base.scanqr.R
import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.EmailUIBean
import com.base.scanqr.bean.ScanBean
import com.base.scanqr.bean.FunctionUIBean.Companion.KEY_EMAIL
import com.base.scanqr.databinding.ActivityEmailCodeBinding
import com.base.scanqr.ui.widget.InputNameDialog.showInputNameDialog
import com.base.scanqr.utils.BarUtils
......@@ -16,7 +16,6 @@ import com.base.scanqr.utils.IntentUtils.intentShareImage
import com.base.scanqr.utils.LogEx
import com.base.scanqr.utils.QRCodeGenerator.generateQRCode
import com.base.scanqr.utils.SpJsonUtils
import com.base.scanqr.utils.SpJsonUtils.SCAN_HISTORY_KEY
import com.base.scanqr.utils.ToastUtils.toast
import com.google.gson.Gson
import java.io.File
......@@ -42,22 +41,23 @@ class EmailCodeActivity : BaseActivity<ActivityEmailCodeBinding>(ActivityEmailCo
qrContent.append("SUB:").append(email.subject).append(";")
qrContent.append("BODY:").append(email.message).append(";")
content = qrContent.toString()
Thread {
SpJsonUtils.addJsonBean<ScanBean>(SCAN_HISTORY_KEY, email)
val bitmap = generateQRCode(content, 735, 735, 5)
runOnUiThread {
binding.ivQr.setImageBitmap(bitmap)
val file = File(cacheDir, System.currentTimeMillis().toString() + ".jpg")
bitmap?.let {
if (email.createTime == 0L) {
email.createTime = System.currentTimeMillis()
}
val flag = saveBitmapToFile(it, file.absolutePath)
LogEx.logDebug(TAG, "flag=$flag tempImage=${file.absolutePath}")
if (flag) {
tempImage = file.absolutePath
}
}
if (email.createTime == 0L) {
email.createTime = System.currentTimeMillis()
}
SpJsonUtils.addJsonBean<EmailUIBean>(KEY_EMAIL, email)
}
}.start()
......
......@@ -5,12 +5,14 @@ import androidx.core.content.ContextCompat
import androidx.core.view.updatePadding
import com.base.scanqr.R
import com.base.scanqr.base.BaseFragment
import com.base.scanqr.bean.EmailUIBean
import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.TextUIBean
import com.base.scanqr.bean.WifiUIBean
import com.base.scanqr.databinding.FragmentHistoryBinding
import com.base.scanqr.utils.BarUtils
import com.base.scanqr.utils.LogEx
import com.base.scanqr.utils.SpJsonUtils
import com.base.scanqr.utils.SpJsonUtils.SCAN_HISTORY_KEY
class HistoryFragment : BaseFragment<FragmentHistoryBinding>(FragmentHistoryBinding::inflate) {
......@@ -30,9 +32,17 @@ class HistoryFragment : BaseFragment<FragmentHistoryBinding>(FragmentHistoryBind
createUI()
}
val wifiList = SpJsonUtils.getSpJsonList<WifiUIBean>(SCAN_HISTORY_KEY)
val wifiList = SpJsonUtils.getSpJsonList<WifiUIBean>(FunctionUIBean.KEY_WIFI)
wifiList.forEach {
LogEx.logDebug(TAG, "${it.scanType} ${it.ssid} ${it.password}")
LogEx.logDebug(TAG, "${it.scanType} ${it.ssid} ${it.password} ${it.createTime}")
}
val textList = SpJsonUtils.getSpJsonList<TextUIBean>(FunctionUIBean.KEY_TEXT)
textList.forEach {
LogEx.logDebug(TAG, "${it.scanType} ${it.content} ${it.createTime}")
}
val emailList = SpJsonUtils.getSpJsonList<EmailUIBean>(FunctionUIBean.KEY_EMAIL)
emailList.forEach {
LogEx.logDebug(TAG, "${it.scanType} ${it.address} ${it.createTime}")
}
}
......
......@@ -6,9 +6,9 @@ import androidx.core.view.updatePadding
import com.base.scanqr.R
import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.EmailUIBean
import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.ScanBean
import com.base.scanqr.bean.TextUIBean
import com.base.scanqr.bean.WifiUIBean
import com.base.scanqr.databinding.ActivityTextCodeBinding
import com.base.scanqr.ui.widget.InputNameDialog.showInputNameDialog
import com.base.scanqr.utils.BarUtils
......@@ -18,7 +18,6 @@ import com.base.scanqr.utils.IntentUtils.intentShareText
import com.base.scanqr.utils.LogEx
import com.base.scanqr.utils.QRCodeGenerator.generateQRCode
import com.base.scanqr.utils.SpJsonUtils
import com.base.scanqr.utils.SpJsonUtils.SCAN_HISTORY_KEY
import com.base.scanqr.utils.ToastUtils.toast
import java.io.File
import java.io.ObjectInput
......@@ -38,21 +37,21 @@ class TextCodeActivity : BaseActivity<ActivityTextCodeBinding>(ActivityTextCodeB
Thread {
val bitmap = generateQRCode(textUIBean.content, 735, 735, 5)
SpJsonUtils.addJsonBean<ScanBean>(SCAN_HISTORY_KEY, textUIBean)
runOnUiThread {
binding.ivQr.setImageBitmap(bitmap)
val file = File(cacheDir, System.currentTimeMillis().toString() + ".jpg")
bitmap?.let {
textUIBean.content = data
if (textUIBean.createTime == 0L) {
textUIBean.createTime = System.currentTimeMillis()
}
val flag = saveBitmapToFile(it, file.absolutePath)
LogEx.logDebug(TAG, "flag=$flag tempImage=${file.absolutePath}")
if (flag) {
tempImage = file.absolutePath
}
}
if (textUIBean.createTime == 0L) {
textUIBean.createTime = System.currentTimeMillis()
}
SpJsonUtils.addJsonBean<ScanBean>(FunctionUIBean.KEY_TEXT, textUIBean)
}
}.start()
}
......
......@@ -5,7 +5,7 @@ import androidx.activity.addCallback
import androidx.core.view.updatePadding
import com.base.scanqr.R
import com.base.scanqr.base.BaseActivity
import com.base.scanqr.bean.ScanBean
import com.base.scanqr.bean.FunctionUIBean
import com.base.scanqr.bean.WifiUIBean
import com.base.scanqr.databinding.ActivityWifiCodeBinding
import com.base.scanqr.ui.widget.InputNameDialog.showInputNameDialog
......@@ -16,7 +16,6 @@ import com.base.scanqr.utils.IntentUtils.intentShareImage
import com.base.scanqr.utils.LogEx
import com.base.scanqr.utils.QRCodeGenerator.generateQRCode
import com.base.scanqr.utils.SpJsonUtils
import com.base.scanqr.utils.SpJsonUtils.SCAN_HISTORY_KEY
import com.base.scanqr.utils.ToastUtils.toast
import com.google.gson.Gson
import com.gyf.immersionbar.ktx.immersionBar
......@@ -67,17 +66,21 @@ class WifiCodeActivity : BaseActivity<ActivityWifiCodeBinding>(ActivityWifiCodeB
}
Thread {
val bitmap = generateQRCode(wifiContent, 735, 735, 5)
SpJsonUtils.addJsonBean<WifiUIBean>(SCAN_HISTORY_KEY, wifiBean)
runOnUiThread {
binding.ivQr.setImageBitmap(bitmap)
val file = File(cacheDir, System.currentTimeMillis().toString() + ".jpg")
bitmap?.let {
val flag = saveBitmapToFile(it, file.absolutePath)
LogEx.logDebug(TAG, "flag=$flag tempImage=${file.absolutePath}")
if (flag) {
tempImage = file.absolutePath
}
}
if (wifiBean.createTime == 0L) {
wifiBean.createTime = System.currentTimeMillis()
}
SpJsonUtils.addJsonBean<WifiUIBean>(FunctionUIBean.KEY_WIFI, wifiBean)
}
}.start()
......
......@@ -2,13 +2,11 @@ package com.base.scanqr.utils
import com.google.gson.Gson
import com.google.gson.reflect.TypeToken
import org.json.JSONObject
object SpJsonUtils {
val TAG = "SpJsonUtils"
const val SCAN_HISTORY_KEY = "scan_history_key"
inline fun <reified T> getSpJsonList(key: String): List<T> {
val sp = AppPreferences.getInstance().getString(key, "")
......
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