This commit is contained in:
lunaticbum 2024-09-19 13:39:49 +09:00
parent 3e8c29346d
commit ea3858ba1f
13 changed files with 238 additions and 107 deletions

View File

@ -136,6 +136,7 @@
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:enabled="true"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
@ -151,6 +152,7 @@
</intent-filter>
</service>
<receiver android:name=".LauncherActivity$EndCallReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
@ -158,6 +160,7 @@
</receiver>
<receiver android:name=".LauncherActivity$SMSReceiver"
android:exported="true"
android:enabled="true"
android:permission="android.permission.BROADCAST_SMS">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
@ -165,6 +168,27 @@
</intent-filter>
</receiver>
<receiver
android:exported="true"
android:enabled="true"
android:name=".receiver.PackageEventReceiver"
>
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<action android:name="android.intent.action.PACKAGE_INSTALL"/>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<action android:name="android.intent.action.PACKAGE_CHANGED"/>
<action android:name="android.intent.action.PACKAGE_DATA_CLEARED"/>
<action android:name="android.intent.action.PACKAGE_FIRST_LAUNCH"/>
<action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
<action android:name="android.intent.action.PACKAGE_INSTALL"/>
<action android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION"/>
<action android:name="android.intent.action.PACKAGE_REMOVED"/>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<action android:name="android.intent.action.PACKAGE_RESTARTED"/>
<action android:name="android.intent.action.PACKAGE_VERIFIED"/>
<data android:scheme="package" />
</intent-filter>
</receiver>
</application>
</manifest>

View File

@ -76,6 +76,7 @@ import com.google.android.material.color.DynamicColors
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import org.jsoup.Jsoup
import org.jsoup.nodes.Document
import rasel.lunar.launcher.LauncherActivity.Companion.lActivity
import rasel.lunar.launcher.apps.AppDrawer
import rasel.lunar.launcher.apps.DismissCalback
import rasel.lunar.launcher.apps.SearchMenu
@ -164,7 +165,17 @@ internal class LauncherActivity : AppCompatActivity() {
PeriodicWorkRequestBuilder<RecentSmsGetter>(longTimePeriod, TimeUnit.MINUTES)
.addTag(SMS_WORK_TAG)
.build())
}, 1, TimeUnit.SECONDS)
}, 500, TimeUnit.MILLISECONDS)
Executors.newSingleThreadScheduledExecutor().schedule({
mWorkManager?.cancelAllWorkByTag(RecentCallGetter.TAG)
mWorkManager?.enqueueUniquePeriodicWork(
RecentCallGetter.TAG,
ExistingPeriodicWorkPolicy.CANCEL_AND_REENQUEUE,
PeriodicWorkRequestBuilder<RecentCallGetter>(longTimePeriod, TimeUnit.MINUTES)
.addTag(RecentCallGetter.TAG)
.build())
}, 500, TimeUnit.MILLISECONDS)
var delay = 3L
Executors.newSingleThreadScheduledExecutor().schedule({
mWorkManager?.cancelAllWorkByTag(ContactInfoGetter.TAG)
@ -184,15 +195,7 @@ internal class LauncherActivity : AppCompatActivity() {
.build())
}, delay, TimeUnit.SECONDS)
delay = delay + 3L
Executors.newSingleThreadScheduledExecutor().schedule({
mWorkManager?.cancelAllWorkByTag(RecentCallGetter.TAG)
mWorkManager?.enqueueUniquePeriodicWork(
RecentCallGetter.TAG,
ExistingPeriodicWorkPolicy.CANCEL_AND_REENQUEUE,
PeriodicWorkRequestBuilder<RecentCallGetter>(longTimePeriod, TimeUnit.MINUTES)
.addTag(RecentCallGetter.TAG)
.build())
}, delay, TimeUnit.SECONDS)
}
fun refreshFeeds() {
@ -1050,4 +1053,48 @@ fun beforeDay(date: Date): Long {
interface CommadCallabck {
fun onConsoleLog(log : String)
fun collectComplete()
}
}
fun openNews(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.android.chrome")
lActivity?.startActivity(mapIntent)
}
fun openYouTube(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.youtube")
lActivity?.startActivity(mapIntent)
}
fun openReddit(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.reddit.frontpage")
lActivity?.startActivity(mapIntent)
}
fun openDotax(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW)
mapIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
mapIntent.addCategory(Intent.CATEGORY_BROWSABLE)
mapIntent.setPackage("net.daum.android.cafe")
mapIntent.setData(gmmIntentUri)
lActivity?.startActivity(mapIntent)
}
fun openOpera(schemeString : String) {
BLog.LOGE("openOpera ${schemeString}")
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS)
mapIntent.setPackage("com.opera.browser")
lActivity?.startActivity(mapIntent)
}

View File

@ -51,9 +51,9 @@ internal class ContactAdapter (
override fun onBindViewHolder(holder: ContactViewHolder, i: Int) {
val item = oldList[i]
BLog.LOGE("name >>> ${item.name} :: ${item.touchCount} :: ${RecentCallGetter.dateFormat.format(
Date(item.lastedTouchDateTime)
)}")
// BLog.LOGE("name >>> ${item.name} :: ${item.touchCount} :: ${RecentCallGetter.dateFormat.format(
// Date(item.lastedTouchDateTime)
// )}")
holder.view.apply {
name.text = item.name
@ -67,7 +67,7 @@ internal class ContactAdapter (
/* on long click - open app menu */
setOnLongClickListener {
BLog.LOGE("item.id.toString() >> ${item.id.toString()}")
// BLog.LOGE("item.id.toString() >> ${item.id.toString()}")
ContactMenu().show(fragmentManager, item.id.toString())
true
}

View File

@ -82,7 +82,13 @@ import rasel.lunar.launcher.model.jGuruTag
import rasel.lunar.launcher.model.dateFormat
import rasel.lunar.launcher.model.getRssData
import rasel.lunar.launcher.utils.BLog
import rasel.lunar.launcher.utils.JamoUtils
import rasel.lunar.launcher.utils.RssList.jGuruMain
import rasel.lunar.launcher.utils.USAGT
import rasel.lunar.launcher.utils.getJ
import rasel.lunar.launcher.workers.BaseGetter
import rasel.lunar.launcher.workers.RecentCallGetter
import rasel.lunar.launcher.workers.RecentSmsGetter
import rasel.lunar.launcher.workers.WorkersDb
import java.net.URLEncoder
import java.nio.charset.Charset
@ -199,7 +205,7 @@ internal class Feeds : Fragment() , CommadCallabck {
}
val USAGT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15"
/* start rss service if network is active and rss url is not empty */
private fun startService() {
try {
@ -218,6 +224,7 @@ internal class Feeds : Fragment() , CommadCallabck {
builder.setPositiveButton(android.R.string.ok,
DialogInterface.OnClickListener { dialog, which ->
dialog.dismiss()
BLog.LOGE("input.text.toString() >>>> ${input.text.toString()}")
if (input.text.toString().trim().contains(" ")) {
val cmd = input.text.toString().trim().split(" ")
when(cmd[0]) {
@ -275,7 +282,44 @@ internal class Feeds : Fragment() , CommadCallabck {
binding.expandRss.isChecked = false
} else {
when (input.text.toString()) {
"so" -> GlobalScope.launch {
"https://kr69.sogirl.so".getJ().let { doc ->
BLog.LOGE("ogirl >>> ${doc.title()}")
doc.getElementsByTag("article").forEach { article ->
BLog.LOGE("ogirl article >>> ${article.text()}")
val title = article.getElementsByTag("a").get(0).attr("title")
val href = article.getElementsByTag("a").get(0).attr("href")
val img = article.getElementsByTag("img").get(0).attr("data-src")
WorkersDb.getRealm().writeBlocking {
if (query<RssData>("originPage == $0", href).find().size == 0) {
RssData().apply {
this.originPage = href
this.title = title
this.description = "Sogirl"
this.thumbnail = img
this.pubDate = Date().time
this.category = RssDataType.GURU.name
this.chosung =
JamoUtils.split(title).joinToString("")
copyToRealm(this)
}
}
}
}
}
consoleLog("current j req() ${WorkersDb.getRealm()
.query<RssData>("category == $0", RssDataType.GURU.name).find().size}")
val urls = arrayOf("https://javmost.to/latest-updates",
"https://javmost.to/latest-updates/page-2",
"https://javmost.to/latest-updates/page-3",
"https://javmost.to/latest-updates/page-4",
"https://javmost.to/latest-updates/page-5")
urls.forEach { mostUrl ->
GlobalScope.launch {
excuteGetterMostByUrl(mostUrl)
}.start()
}
}
"ojs" -> home?.queryInfos(arrayListOf<RssDataType>().apply {
addAll(RssDataType.values())
remove(RssDataType.GURU)
@ -292,26 +336,20 @@ internal class Feeds : Fragment() , CommadCallabck {
addAll(RssDataType.values())
remove(RssDataType.REDDIT)
})
"most" -> {
consoleLog("current j req() ${WorkersDb.getRealm()
.query<RssData>("category == $0", RssDataType.GURU.name).find().size}")
val urls = arrayOf("https://javmost.to/latest-updates",
"https://javmost.to/latest-updates/page-2",
"https://javmost.to/latest-updates/page-3",
"https://javmost.to/latest-updates/page-4",
"https://javmost.to/latest-updates/page-5")
GlobalScope.launch {
urls.forEach { mostUrl ->
excuteGetterMostByUrl(mostUrl)
}
}.start()
}
"req" -> {
refreshFeeds()
refreshDeviceData()
consoleLog("excute refreshFeeds()")
}
"reqmax" -> {
RecentCallGetter.dayRange = 30
RecentSmsGetter.dayRange = 30
refreshFeeds()
refreshDeviceData()
consoleLog("excute refreshFeeds()")
}
"taxi" -> {
consoleLog("before run State home?.binding?.alcholKatalkT?.isVisible >> ${home?.binding?.alcholKatalkT?.isVisible}")

View File

@ -353,18 +353,17 @@ internal class LauncherHome : Fragment() {
}
//limit(1000)
mRssDataResult = rQ.sort("pubDate ", Sort.DESCENDING).find()
BLog.LOGE("${this} ::::: queryInfos after query find >>>> ")
// BLog.LOGE("${this} ::::: queryInfos after query find >>>> ")
infosJob = CoroutineScope(Dispatchers.Default).launch {
mRssDataResult?.asFlow()?.collect { changes: ResultsChange<RssData> ->
commandHandler.removeCallbacks(infoUpdate)
when (changes) {
is InitialResults -> {
BLog.LOGE("${this} ::::: queryInfos after changes size >>>> ${changes.list.size}")
// BLog.LOGE("${this} ::::: queryInfos after changes size >>>> ${changes.list.size}")
WorkersDb.getRealm().apply {
lasted = copyFromRealm(changes.list)
}
commandHandler.postDelayed(infoUpdate, UPDATE_DELAY * 3)
}
is UpdatedResults -> {
@ -415,15 +414,17 @@ internal class LauncherHome : Fragment() {
}
}
var queryString = ""
category.forEachIndexed { idx , it ->
if (idx == 0) {
queryString = queryString.plus("category == '${it}'")
} else {
queryString = queryString.plus(" OR category == '${it}' ")
if (category.size > 0) {
category.forEachIndexed { idx, it ->
if (idx == 0) {
queryString = queryString.plus("category == '${it}'")
} else {
queryString = queryString.plus(" OR category == '${it}' ")
}
}
}
rQ = rQ.query(queryString)
rQ = rQ.query(queryString)
}
BLog.LOGE("queryInfos rQ.description() >>>>> ${rQ.description()}")
//limit(1000)
mRssDataResult = rQ.sort("pubDate ", Sort.DESCENDING).find()
@ -487,8 +488,6 @@ internal class LauncherHome : Fragment() {
}
var checkListner = object : View.OnClickListener {
override fun onClick(v: View?) {
var views = arrayListOf(binding.mainList, binding.smsList, binding.infoList, binding.notiList)
var chechboxs = arrayListOf(binding.missedCalls,
@ -568,6 +567,11 @@ internal class LauncherHome : Fragment() {
val categoryz = viewInflated.findViewById<TableRadioGroup>(R.id.categoryz) as TableRadioGroup
categoryz.setMaxColumns(5)
categoryz.setMaxRows(5)
categoryz.setOnCheckedChangeListener(object : TableRadioGroup.OnCheckedChangeListener {
override fun onCheckedChanged(group: TableRadioGroup?, checkedId: Int) {
}
})
var idx = 0
RssDataType.values().reversed().toList().chunked(5).forEach {
var tb = TableRow(requireContext())
@ -660,7 +664,7 @@ internal class LauncherHome : Fragment() {
.sort("rcvDate",Sort.DESCENDING).find()
if (result.size > 0) {
try {
BLog.LOGE("observeForever smsList.size >>> ${result.size}")
// BLog.LOGE("observeForever smsList.size >>> ${result.size}")
binding.recentSms.text = "최근 문자 [${result.size}]"
binding.smsList.visibility = View.VISIBLE
smsList.clear()
@ -842,7 +846,7 @@ internal class LauncherHome : Fragment() {
}
override fun onClick(targetView: View,fingers: Int): Boolean {
BLog.LOGE("onClick ${view} , fingers ${fingers}")
// BLog.LOGE("onClick ${view} , fingers ${fingers}")
when(fingers) {
1 -> {
if (view?.equals(binding.batteryProgress) ?: false && fingers == 1) {

View File

@ -27,6 +27,7 @@ import android.provider.ContactsContract
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.RecyclerView
import rasel.lunar.launcher.LauncherActivity.Companion.lActivity
import rasel.lunar.launcher.R
@ -128,10 +129,22 @@ internal class RecentCallsAdapter(
// }
// }
}
var layoutManager : GridLayoutManager? = null
var recyclerView: RecyclerView? = null
override fun onAttachedToRecyclerView(recyclerView: RecyclerView) {
layoutManager = recyclerView.layoutManager as? GridLayoutManager
this.recyclerView = recyclerView
}
fun updateData(newList: ArrayList<RecentCall>) {
val diffUtilResult = DiffUtil.calculateDiff(RecentCallDiffUtil(callList, newList))
diffUtilResult.dispatchUpdatesTo(this)
diffUtilResult.dispatchUpdatesTo(this).apply {
val visibleItemCount = (layoutManager?.findLastVisibleItemPosition() ?: 0) - (layoutManager?.findFirstVisibleItemPosition() ?: 0)
if (visibleItemCount > 0) {
this@RecentCallsAdapter.notifyItemRangeChanged(0, visibleItemCount)
recyclerView?.scrollToPosition(0)
}
}
// callList.clear()
// callList.addAll(newList)
}

View File

@ -28,6 +28,8 @@ import android.view.ViewGroup
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.core.net.toUri
import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.google.android.material.imageview.ShapeableImageView
import com.squareup.picasso.Picasso
@ -36,55 +38,15 @@ import rasel.lunar.launcher.R
import rasel.lunar.launcher.databinding.ListItemWithBinding
import rasel.lunar.launcher.model.RssDataInterface
import rasel.lunar.launcher.model.RssDataType
import rasel.lunar.launcher.openDotax
import rasel.lunar.launcher.openNews
import rasel.lunar.launcher.openOpera
import rasel.lunar.launcher.openReddit
import rasel.lunar.launcher.openYouTube
import rasel.lunar.launcher.utils.BLog
import java.text.SimpleDateFormat
import java.util.Date
fun openNews(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.android.chrome")
lActivity?.startActivity(mapIntent)
}
fun openYouTube(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.google.android.youtube")
lActivity?.startActivity(mapIntent)
}
fun openReddit(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.setPackage("com.reddit.frontpage")
lActivity?.startActivity(mapIntent)
}
fun openDotax(schemeString : String) {
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW)
mapIntent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP)
mapIntent.addCategory(Intent.CATEGORY_BROWSABLE)
mapIntent.setPackage("net.daum.android.cafe")
mapIntent.setData(gmmIntentUri)
lActivity?.startActivity(mapIntent)
}
fun openOpera(schemeString : String) {
BLog.LOGE("openOpera ${schemeString}")
val gmmIntentUri = Uri.parse(schemeString)
val mapIntent = Intent(Intent.ACTION_VIEW, gmmIntentUri)
mapIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS)
mapIntent.setPackage("com.opera.browser")
lActivity?.startActivity(mapIntent)
}
internal class RssItemAdapter (
private val context: Context) : RecyclerView.Adapter<RssTag>() {
@ -176,7 +138,12 @@ internal class RssItemAdapter (
holder.view.root.setOnLongClickListener(mLongClickListener)
}
var layoutManager : LinearLayoutManager? = null
var recyclerView: RecyclerView? = null
override fun onAttachedToRecyclerView(recyclerView: RecyclerView) {
layoutManager = recyclerView.layoutManager as? LinearLayoutManager
this.recyclerView = recyclerView
}
fun updateData(newList: List<RssDataInterface>) {
try {
@ -184,7 +151,11 @@ internal class RssItemAdapter (
DiffUtil.calculateDiff(RssItemDiffUtil(rssDataItemLis, newList)).apply {
}.dispatchUpdatesTo(this).apply {
// notifyItemRangeChanged(0,10)
val visibleItemCount = (layoutManager?.findLastVisibleItemPosition() ?: 0) - (layoutManager?.findFirstVisibleItemPosition() ?: 0)
if (visibleItemCount > 0) {
this@RssItemAdapter.notifyItemRangeChanged(0, visibleItemCount)
recyclerView?.scrollToPosition(0)
}
}
rssDataItemLis.clear()
rssDataItemLis.addAll(newList)

View File

@ -0,0 +1,19 @@
package rasel.lunar.launcher.receiver
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import rasel.lunar.launcher.utils.BLog
class PackageEventReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
val action = intent.action
BLog.LOGE("action >>>> ${action}")
if (action == Intent.ACTION_PACKAGE_ADDED) {
}
}
}

View File

@ -0,0 +1,6 @@
package rasel.lunar.launcher.utils
import org.jsoup.Jsoup
val USAGT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15"
fun String.getJ() = Jsoup.connect("https://kr69.sogirl.so/").userAgent(USAGT).get()

View File

@ -129,7 +129,7 @@ class GestureAnalyser @JvmOverloads constructor(
) {
return SWIPE_1_RIGHT
}
BLog.LOGE("initialT = ${initialT} , finalT = ${finalT} , result = ${finalT - initialT}")
// BLog.LOGE("initialT = ${initialT} , finalT = ${finalT} , result = ${finalT - initialT}")
if (finalT - initialT < 300) {
return CLICK_1
} else if(finalT - initialT > doubleTapMaxDelayMillis) {

View File

@ -12,7 +12,7 @@ import java.util.Date
open abstract class BaseGetter : Worker {
protected companion object {
var lastedUpdateTime = 0L
val defaultDay = 3
fun before10Min(): Long {
val cal: Calendar = Calendar.getInstance()
cal.setTime(Date())
@ -37,7 +37,9 @@ open abstract class BaseGetter : Worker {
}
}
return realWork()
return realWork().apply {
}
}
abstract fun realWork() : Result
}

View File

@ -52,6 +52,7 @@ class RecentCall : RealmObject {
class RecentCallGetter : BaseGetter {
companion object{
var dayRange = BaseGetter.defaultDay
val TAG = "RecentCallGetter"
val dateFormat = SimpleDateFormat("yyy/MM/dd-HH:mm:ss")
}
@ -61,7 +62,7 @@ class RecentCallGetter : BaseGetter {
@SuppressLint("RestrictedApi")
override fun realWork(): Result {
var dateParam = beforeDay(Date(),30).toString()
var dateParam = beforeDay(Date(),3).toString()
var managedCursor = lActivity?.contentResolver?.query(
CallLog.Calls.CONTENT_URI, arrayOf(
CallLog.Calls.NUMBER,
@ -110,7 +111,7 @@ class RecentCallGetter : BaseGetter {
callDuration.toLong()
)
call.uniqK?.let {
BLog.LOGE("${TAG} call.uniqK? >>> ${call.uniqK}")
// BLog.LOGE("${TAG} call.uniqK? >>> ${call.uniqK}")
WorkersDb.getRealm().writeBlocking {
if(query<RecentCall>().query("uniqK == $0", it).find().count() < 1) {
this.copyToRealm(call, UpdatePolicy.ALL)
@ -121,13 +122,13 @@ class RecentCallGetter : BaseGetter {
var contact = result.first()
contact.touchCount = contact.touchCount + 1
contact.lastedTouchDateTime = Math.max(contact.lastedTouchDateTime, callDayTime)
BLog.LOGE("${TAG} updatetouch info >>>> ${contact.touchCount}")
// BLog.LOGE("${TAG} updatetouch info >>>> ${contact.touchCount}")
}
}
}
BLog.LOGE("${TAG} updatetouch info >>>> BE ")
// BLog.LOGE("${TAG} updatetouch info >>>> BE ")
}
BLog.LOGE("${TAG} updatetouch info >>>> E")
// BLog.LOGE("${TAG} updatetouch info >>>> E")
}
}
} catch (e: Exception) {
@ -136,7 +137,9 @@ class RecentCallGetter : BaseGetter {
managedCursor.close()
}
}
return Result.success()
return Result.success().apply {
dayRange = BaseGetter.defaultDay
}
}
}

View File

@ -26,7 +26,9 @@ import java.io.InputStreamReader
import java.util.Date
class RecentSmsGetter : BaseGetter {
companion object {
var dayRange = BaseGetter.defaultDay
}
constructor(context: Context, workerParams: WorkerParameters) : super(context, workerParams) {
}
@ -36,7 +38,7 @@ class RecentSmsGetter : BaseGetter {
@SuppressLint("RestrictedApi")
override fun realWork(): Result {
var dateParam = beforeDay(Date(),30).toString()
var dateParam = beforeDay(Date(),dayRange).toString()
val managedCursor = lActivity?.contentResolver?.query(
Telephony.Sms.CONTENT_URI, arrayOf(
Telephony.Sms.THREAD_ID,
@ -107,7 +109,9 @@ class RecentSmsGetter : BaseGetter {
if (lActivity?.contentResolver != null) {
MmsQueryHelper(lActivity?.contentResolver!!).query()
}
return Result.success()
return Result.success().apply {
dayRange = BaseGetter.defaultDay
}
}
}
@ -143,7 +147,7 @@ internal class RecentSms : RealmObject {
) {
this.id = id
this.uniqKey = id.plus("_").plus(addr).plus("_").plus(Math.max(rcvDate,pstDate)).plus("_SMS")
BLog.LOGE("sender ${sender} ::::: Id >> ${id} , addr ${addr}")
// BLog.LOGE("sender ${sender} ::::: Id >> ${id} , addr ${addr}")
this.addr = addr
this.type = type
this.rcvDate = rcvDate