diff --git a/data/src/main/java/com/moez/QKSMS/manager/AlarmManagerImpl.kt b/data/src/main/java/com/moez/QKSMS/manager/AlarmManagerImpl.kt
index 1767085f..526d5d0a 100644
--- a/data/src/main/java/com/moez/QKSMS/manager/AlarmManagerImpl.kt
+++ b/data/src/main/java/com/moez/QKSMS/manager/AlarmManagerImpl.kt
@@ -22,14 +22,14 @@ import android.app.PendingIntent
import android.content.Context
import android.content.Intent
import android.os.Build
-import com.moez.QKSMS.service.SendScheduledMessageService
+import com.moez.QKSMS.receiver.SendScheduledMessageReceiver
import javax.inject.Inject
class AlarmManagerImpl @Inject constructor(private val context: Context) : AlarmManager {
override fun getScheduledMessageIntent(id: Long): PendingIntent {
- val intent = Intent(context, SendScheduledMessageService::class.java).putExtra("id", id)
- return PendingIntent.getService(context, id.toInt(), intent, PendingIntent.FLAG_UPDATE_CURRENT)
+ val intent = Intent(context, SendScheduledMessageReceiver::class.java).putExtra("id", id)
+ return PendingIntent.getBroadcast(context, id.toInt(), intent, PendingIntent.FLAG_UPDATE_CURRENT)
}
override fun setAlarm(date: Long, intent: PendingIntent) {
diff --git a/data/src/main/java/com/moez/QKSMS/service/SendScheduledMessageService.kt b/data/src/main/java/com/moez/QKSMS/receiver/SendScheduledMessageReceiver.kt
similarity index 81%
rename from data/src/main/java/com/moez/QKSMS/service/SendScheduledMessageService.kt
rename to data/src/main/java/com/moez/QKSMS/receiver/SendScheduledMessageReceiver.kt
index e1151e04..eac9d68e 100644
--- a/data/src/main/java/com/moez/QKSMS/service/SendScheduledMessageService.kt
+++ b/data/src/main/java/com/moez/QKSMS/receiver/SendScheduledMessageReceiver.kt
@@ -16,22 +16,23 @@
* You should have received a copy of the GNU General Public License
* along with QKSMS. If not, see .
*/
-package com.moez.QKSMS.service
+package com.moez.QKSMS.receiver
-import android.app.IntentService
+import android.content.BroadcastReceiver
+import android.content.Context
import android.content.Intent
import com.moez.QKSMS.interactor.SendScheduledMessage
import com.moez.QKSMS.repository.MessageRepository
import dagger.android.AndroidInjection
import javax.inject.Inject
-class SendScheduledMessageService : IntentService(null) {
+class SendScheduledMessageReceiver : BroadcastReceiver() {
@Inject lateinit var messageRepo: MessageRepository
@Inject lateinit var sendScheduledMessage: SendScheduledMessage
- override fun onHandleIntent(intent: Intent) {
- AndroidInjection.inject(this)
+ override fun onReceive(context: Context, intent: Intent) {
+ AndroidInjection.inject(this, context)
intent.getLongExtra("id", -1L).takeIf { it >= 0 }?.let { id ->
sendScheduledMessage.buildObservable(id).blockingSubscribe()
diff --git a/presentation/src/main/AndroidManifest.xml b/presentation/src/main/AndroidManifest.xml
index e5d8f607..5e5eaa13 100644
--- a/presentation/src/main/AndroidManifest.xml
+++ b/presentation/src/main/AndroidManifest.xml
@@ -147,6 +147,7 @@
+
@@ -187,7 +188,6 @@
-