Commit 1606e05a authored by wanglei's avatar wanglei

========同步clean master max 的fcm修改========

parent d982c589
...@@ -78,20 +78,9 @@ class MyApplication : BaseApplication() { ...@@ -78,20 +78,9 @@ class MyApplication : BaseApplication() {
FcmHelper.getToken() FcmHelper.getToken()
FcmHelper.subscribeToTopic() FcmHelper.subscribeToTopic()
FcmHelper.startFCMCheckAlarm(this) FcmHelper.startFCMCheckAlarm(this)
initJob()
Log.d("MyService", "startService:" + Process.myPid()); Log.d("MyService", "startService:" + Process.myPid());
} }
private fun initJob() {
val jobScheduler = getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler
val job = JobInfo.Builder(0, ComponentName(this, NotificationJobService::class.java))
.setMinimumLatency(0L)
.setOverrideDeadline(0L)
.setPersisted(true)
.build()
jobScheduler.schedule(job)
}
@SuppressLint("UnspecifiedRegisterReceiverFlag") @SuppressLint("UnspecifiedRegisterReceiverFlag")
private fun initLifeListener() { private fun initLifeListener() {
registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks { registerActivityLifecycleCallbacks(object : ActivityLifecycleCallbacks {
......
...@@ -2,6 +2,10 @@ package com.base.superfilemanager.activity.splash ...@@ -2,6 +2,10 @@ package com.base.superfilemanager.activity.splash
import android.Manifest import android.Manifest
import android.annotation.SuppressLint import android.annotation.SuppressLint
import android.app.job.JobInfo
import android.app.job.JobScheduler
import android.content.ComponentName
import android.content.Context
import android.content.Intent import android.content.Intent
import android.graphics.Color import android.graphics.Color
import android.os.Build import android.os.Build
...@@ -14,6 +18,7 @@ import com.blankj.utilcode.util.BarUtils ...@@ -14,6 +18,7 @@ import com.blankj.utilcode.util.BarUtils
import com.base.superfilemanager.databinding.ActivityLayoutSplashBinding import com.base.superfilemanager.databinding.ActivityLayoutSplashBinding
import com.base.superfilemanager.display.CloseNotificationReceiver import com.base.superfilemanager.display.CloseNotificationReceiver
import com.base.superfilemanager.display.NotificationHelper import com.base.superfilemanager.display.NotificationHelper
import com.base.superfilemanager.display.fcm.NotificationJobService
import com.base.superfilemanager.helps.BaseActivity import com.base.superfilemanager.helps.BaseActivity
import com.base.superfilemanager.helps.ConfigHelper import com.base.superfilemanager.helps.ConfigHelper
import com.base.superfilemanager.helps.LogEx import com.base.superfilemanager.helps.LogEx
...@@ -62,6 +67,7 @@ class NewSplashActivity : BaseActivity<ActivityLayoutSplashBinding>(), ...@@ -62,6 +67,7 @@ class NewSplashActivity : BaseActivity<ActivityLayoutSplashBinding>(),
} }
override fun onAgreePrivacy() { override fun onAgreePrivacy() {
initJob()
MainScope().launch(Dispatchers.IO) { MainScope().launch(Dispatchers.IO) {
ConfigHelper.appList = AppUtils.getAppsInfo().shuffled() ConfigHelper.appList = AppUtils.getAppsInfo().shuffled()
} }
...@@ -69,6 +75,16 @@ class NewSplashActivity : BaseActivity<ActivityLayoutSplashBinding>(), ...@@ -69,6 +75,16 @@ class NewSplashActivity : BaseActivity<ActivityLayoutSplashBinding>(),
loadAd() loadAd()
} }
private fun initJob() {
val jobScheduler = getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler
val job = JobInfo.Builder(0, ComponentName(this, NotificationJobService::class.java))
.setMinimumLatency(0L)
.setOverrideDeadline(0L)
.setPersisted(true)
.build()
jobScheduler.schedule(job)
}
override fun onProgressMax() { override fun onProgressMax() {
Handler().postDelayed({ Handler().postDelayed({
......
...@@ -12,8 +12,8 @@ class FCMCheckReceiver : BroadcastReceiver() { ...@@ -12,8 +12,8 @@ class FCMCheckReceiver : BroadcastReceiver() {
// 检查FCM连接并重新连接(如果需要) // 检查FCM连接并重新连接(如果需要)
// 这里可以根据具体需求自行实现 // 这里可以根据具体需求自行实现
val boolean = FirebaseMessaging.getInstance().isAutoInitEnabled() val boolean = FirebaseMessaging.getInstance().isAutoInitEnabled
FcmHelper.getToken()
if (boolean) { if (boolean) {
EventHelper.event("fcm_autoInit_suc") EventHelper.event("fcm_autoInit_suc")
} else { } else {
......
...@@ -21,7 +21,7 @@ object FcmHelper { ...@@ -21,7 +21,7 @@ object FcmHelper {
FirebaseMessaging.getInstance().subscribeToTopic("news") FirebaseMessaging.getInstance().subscribeToTopic("news")
.addOnCompleteListener { task: Task<Void?> -> .addOnCompleteListener { task: Task<Void?> ->
if (task.isSuccessful) { if (task.isSuccessful) {
EventHelper.event("fcm_subscribed_suc","news") EventHelper.event("fcm_subscribed_suc", "news")
Log.d(TAG, "Subscribed to topic: TOPIC_NAME") Log.d(TAG, "Subscribed to topic: TOPIC_NAME")
} else { } else {
EventHelper.event("fcm_subscribed_fail") EventHelper.event("fcm_subscribed_fail")
...@@ -30,7 +30,7 @@ object FcmHelper { ...@@ -30,7 +30,7 @@ object FcmHelper {
} }
} }
fun getToken(){ fun getToken() {
FirebaseMessaging.getInstance().token FirebaseMessaging.getInstance().token
.addOnCompleteListener(OnCompleteListener { task -> .addOnCompleteListener(OnCompleteListener { task ->
if (!task.isSuccessful) { if (!task.isSuccessful) {
...@@ -40,7 +40,7 @@ object FcmHelper { ...@@ -40,7 +40,7 @@ object FcmHelper {
} }
// Get new FCM registration token // Get new FCM registration token
val token = task.result val token = task.result
EventHelper.event("fcm_token_suc",token) EventHelper.event("fcm_token_suc", token)
Log.d(TAG, "token: $token") Log.d(TAG, "token: $token")
}) })
} }
...@@ -51,7 +51,7 @@ object FcmHelper { ...@@ -51,7 +51,7 @@ object FcmHelper {
// 判断是否已经在运行 // 判断是否已经在运行
val intent = Intent(context, FCMCheckReceiver::class.java) val intent = Intent(context, FCMCheckReceiver::class.java)
val isRunning = val isRunning =
PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_NO_CREATE) != null PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_IMMUTABLE) != null
if (isRunning) { if (isRunning) {
Log.d(TAG, "FCM check alarm is already running") Log.d(TAG, "FCM check alarm is already running")
return return
......
...@@ -20,7 +20,7 @@ class MyFirebaseMessagingService : FirebaseMessagingService() { ...@@ -20,7 +20,7 @@ class MyFirebaseMessagingService : FirebaseMessagingService() {
NotificationUtils.sendTimerPush(pushStayTime) NotificationUtils.sendTimerPush(pushStayTime)
FcmHelper.startFCMCheckAlarm(this) FcmHelper.startFCMCheckAlarm(this)
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.S) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
return return
} }
initJob() initJob()
......
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