diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 320025fc..536b555a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -136,6 +136,7 @@ android:name="androidx.core.content.FileProvider" android:authorities="${applicationId}.fileprovider" android:exported="false" + android:enabled="true" android:grantUriPermissions="true"> @@ -158,6 +160,7 @@ @@ -165,6 +168,27 @@ - + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt b/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt index bde394af..f3764d7e 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/LauncherActivity.kt @@ -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(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(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(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() -} \ No newline at end of file +} + +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) +} + + diff --git a/app/src/main/kotlin/rasel/lunar/launcher/apps/ContactAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/apps/ContactAdapter.kt index eba17d9e..5711259b 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/apps/ContactAdapter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/apps/ContactAdapter.kt @@ -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 } diff --git a/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt b/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt index 5ceb8b7f..7f538c5c 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/feeds/Feeds.kt @@ -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("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("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().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("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}") diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt index 6067cef2..6badf9a4 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/LauncherHome.kt @@ -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 -> 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(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) { diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RecentCallsAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RecentCallsAdapter.kt index 1546b031..2fc8b5df 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RecentCallsAdapter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RecentCallsAdapter.kt @@ -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) { 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) } diff --git a/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RssItemAdapter.kt b/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RssItemAdapter.kt index 19116c6b..bc85b785 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RssItemAdapter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/home/adapters/RssItemAdapter.kt @@ -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() { @@ -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) { 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) diff --git a/app/src/main/kotlin/rasel/lunar/launcher/receiver/PackageEventReceiver.kt b/app/src/main/kotlin/rasel/lunar/launcher/receiver/PackageEventReceiver.kt new file mode 100644 index 00000000..e40ad7f2 --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/receiver/PackageEventReceiver.kt @@ -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) { + + } + } +} diff --git a/app/src/main/kotlin/rasel/lunar/launcher/utils/JsoupUtils.kt b/app/src/main/kotlin/rasel/lunar/launcher/utils/JsoupUtils.kt new file mode 100644 index 00000000..7c8d7e9e --- /dev/null +++ b/app/src/main/kotlin/rasel/lunar/launcher/utils/JsoupUtils.kt @@ -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() diff --git a/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt b/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt index 5b56ad0d..d35d9dfd 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/utils/SimpleGesture.kt @@ -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) { diff --git a/app/src/main/kotlin/rasel/lunar/launcher/workers/BaseGetter.kt b/app/src/main/kotlin/rasel/lunar/launcher/workers/BaseGetter.kt index 376112de..373b42c2 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/workers/BaseGetter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/workers/BaseGetter.kt @@ -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 } \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentCallGetter.kt b/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentCallGetter.kt index 183a4c42..ded43ffd 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentCallGetter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentCallGetter.kt @@ -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().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 + } } } \ No newline at end of file diff --git a/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentSmsGetter.kt b/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentSmsGetter.kt index 4a364af0..39a83a15 100644 --- a/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentSmsGetter.kt +++ b/app/src/main/kotlin/rasel/lunar/launcher/workers/RecentSmsGetter.kt @@ -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