Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
pdf all reader
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wanglei
pdf all reader
Commits
8de786f3
Commit
8de786f3
authored
Nov 11, 2024
by
wanglei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
...
parent
18031b3c
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
136 additions
and
9 deletions
+136
-9
build.gradle.kts
app/build.gradle.kts
+4
-0
FCMManager.kt
...ain/java/com/base/pdfreaderallpdfreader/fcm/FCMManager.kt
+1
-1
MessagingService.java
.../com/base/pdfreaderallpdfreader/fcm/MessagingService.java
+1
-2
NotificationUiUtil.kt
.../com/base/pdfreaderallpdfreader/fcm/NotificationUiUtil.kt
+4
-1
PopupConstObject.kt
...va/com/base/pdfreaderallpdfreader/fcm/PopupConstObject.kt
+3
-1
ScreenStatusReceiver.java
.../base/pdfreaderallpdfreader/fcm/ScreenStatusReceiver.java
+1
-2
TimerManager.java
...java/com/base/pdfreaderallpdfreader/fcm/TimerManager.java
+1
-2
AlarmJobReceiver.kt
.../base/pdfreaderallpdfreader/fcm/alarm/AlarmJobReceiver.kt
+35
-0
AlarmUtils.kt
...va/com/base/pdfreaderallpdfreader/fcm/alarm/AlarmUtils.kt
+36
-0
RepeatingWorker.kt
...om/base/pdfreaderallpdfreader/fcm/work/RepeatingWorker.kt
+48
-0
MyApplication.kt
...va/com/base/pdfreaderallpdfreader/helper/MyApplication.kt
+2
-0
No files found.
app/build.gradle.kts
View file @
8de786f3
...
@@ -136,4 +136,8 @@ dependencies {
...
@@ -136,4 +136,8 @@ dependencies {
implementation
(
"com.reyun.solar.engine.oversea:solar-engine-core:1.2.8.3"
)
implementation
(
"com.reyun.solar.engine.oversea:solar-engine-core:1.2.8.3"
)
implementation
(
"androidx.core:core-splashscreen:1.0.0-beta02"
)
implementation
(
"androidx.core:core-splashscreen:1.0.0-beta02"
)
//work
implementation
(
"androidx.work:work-runtime-ktx:2.7.1"
)
// 请使用最新版本
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/FCMManager.kt
View file @
8de786f3
...
@@ -42,7 +42,7 @@ object FCMManager {
...
@@ -42,7 +42,7 @@ object FCMManager {
}
}
}
}
fun
getToken
()
{
private
fun
getToken
()
{
FirebaseMessaging
.
getInstance
().
token
FirebaseMessaging
.
getInstance
().
token
.
addOnCompleteListener
(
object
:
OnCompleteListener
<
String
>
{
.
addOnCompleteListener
(
object
:
OnCompleteListener
<
String
>
{
override
fun
onComplete
(
task
:
Task
<
String
>)
{
override
fun
onComplete
(
task
:
Task
<
String
>)
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/MessagingService.java
View file @
8de786f3
...
@@ -21,8 +21,7 @@ public class MessagingService extends FirebaseMessagingService {
...
@@ -21,8 +21,7 @@ public class MessagingService extends FirebaseMessagingService {
LogEx
.
INSTANCE
.
logDebug
(
TAG
,
"onMessageReceived"
,
false
);
LogEx
.
INSTANCE
.
logDebug
(
TAG
,
"onMessageReceived"
,
false
);
EventUtils
.
INSTANCE
.
event
(
"FCM_Received"
,
null
,
null
,
false
);
EventUtils
.
INSTANCE
.
event
(
"FCM_Received"
,
null
,
null
,
false
);
String
action
=
NotificationUiUtil
.
INSTANCE
.
getNextActionId
();
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
this
,
PopupConstObject
.
POPUP_WHERE_FCM
);
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
this
,
action
,
PopupConstObject
.
POPUP_WHERE_FCM
);
}
}
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/NotificationUiUtil.kt
View file @
8de786f3
...
@@ -128,7 +128,10 @@ object NotificationUiUtil {
...
@@ -128,7 +128,10 @@ object NotificationUiUtil {
var
hoverActionId
=
""
var
hoverActionId
=
""
@SuppressLint
(
"RemoteViewLayout"
)
@SuppressLint
(
"RemoteViewLayout"
)
fun
sendNotificationIfCan
(
context
:
Context
,
actionId
:
String
,
where
:
String
=
""
)
{
fun
sendNotificationIfCan
(
context
:
Context
,
where
:
String
=
""
)
{
val
actionId
=
getNextActionId
()
if
(!
canSendNotification
(
where
,
actionId
))
return
if
(!
canSendNotification
(
where
,
actionId
))
return
//发送通知
//发送通知
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/PopupConstObject.kt
View file @
8de786f3
...
@@ -7,6 +7,8 @@ object PopupConstObject {
...
@@ -7,6 +7,8 @@ object PopupConstObject {
const
val
POPUP_WHERE_TIMBER
=
"Timer"
const
val
POPUP_WHERE_TIMBER
=
"Timer"
const
val
POPUP_WHERE_LOCK
=
"Lock"
const
val
POPUP_WHERE_LOCK
=
"Lock"
const
val
POPUP_WHERE_FCM
=
"fcm"
const
val
POPUP_WHERE_FCM
=
"fcm"
const
val
POPUP_WHERE_ALARM
=
"Alarm"
const
val
POPUP_WHERE_WORK_MANAGER
=
"workmanager"
const
val
POPUP_WHERE_WORK_MANAGER
=
"workmanager"
const
val
POPUP_WHERE_MEDIA_CHANGE
=
"media_change"
const
val
POPUP_WHERE_MEDIA_CHANGE
=
"media_change"
const
val
POPUP_WHERE_HOVER_HANDLE
=
"hover_handle"
//悬停调用
const
val
POPUP_WHERE_HOVER_HANDLE
=
"hover_handle"
//悬停调用
...
@@ -31,7 +33,7 @@ object PopupConstObject {
...
@@ -31,7 +33,7 @@ object PopupConstObject {
const
val
lockS
=
"lockS"
const
val
lockS
=
"lockS"
const
val
timerS
=
"timerS"
const
val
timerS
=
"timerS"
const
val
timerDelay
=
"timerDelay"
const
val
timerDelay
=
"timerDelay"
const
val
timerInterval
=
"timerInterval"
const
val
timerInterval
=
"timerInterval"
var
topic_number
=
""
var
topic_number
=
""
get
()
{
get
()
{
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/ScreenStatusReceiver.java
View file @
8de786f3
...
@@ -52,8 +52,7 @@ public class ScreenStatusReceiver extends BroadcastReceiver {
...
@@ -52,8 +52,7 @@ public class ScreenStatusReceiver extends BroadcastReceiver {
if
(
isDeviceInteractive
()
&&
!
isSecureLockActive
())
{
if
(
isDeviceInteractive
()
&&
!
isSecureLockActive
())
{
int
secureSetting
=
Integer
.
parseInt
(
AppPreferences
.
getInstance
().
getString
(
lockS
,
"1"
));
int
secureSetting
=
Integer
.
parseInt
(
AppPreferences
.
getInstance
().
getString
(
lockS
,
"1"
));
if
(
secureSetting
==
1
)
{
if
(
secureSetting
==
1
)
{
String
actionId
=
NotificationUiUtil
.
INSTANCE
.
getNextActionId
();
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
context
,
PopupConstObject
.
POPUP_WHERE_LOCK
);
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
context
,
actionId
,
PopupConstObject
.
POPUP_WHERE_LOCK
);
}
}
}
}
break
;
break
;
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/TimerManager.java
View file @
8de786f3
...
@@ -38,8 +38,7 @@ public class TimerManager {
...
@@ -38,8 +38,7 @@ public class TimerManager {
!
ScreenStatusReceiver
.
isSecureLockActive
()
&&
!
ScreenStatusReceiver
.
isSecureLockActive
()
&&
MyApplication
.
PAUSED_VALUE
!=
1
)
{
MyApplication
.
PAUSED_VALUE
!=
1
)
{
Log
.
d
(
"glc"
,
"Scheduled task conditions are met"
);
Log
.
d
(
"glc"
,
"Scheduled task conditions are met"
);
String
actionId
=
NotificationUiUtil
.
INSTANCE
.
getNextActionId
();
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
MyApplication
.
context
,
PopupConstObject
.
POPUP_WHERE_TIMBER
);
NotificationUiUtil
.
INSTANCE
.
sendNotificationIfCan
(
MyApplication
.
context
,
actionId
,
PopupConstObject
.
POPUP_WHERE_TIMBER
);
}
}
}
}
};
};
...
...
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/alarm/AlarmJobReceiver.kt
0 → 100644
View file @
8de786f3
package
com.base.pdfreaderallpdfreader.fcm.alarm
import
android.annotation.SuppressLint
import
android.content.BroadcastReceiver
import
android.content.Context
import
android.content.Intent
import
com.base.pdfreaderallpdfreader.BuildConfig
import
com.base.pdfreaderallpdfreader.fcm.NotificationUiUtil.sendNotificationIfCan
import
com.base.pdfreaderallpdfreader.fcm.PopupConstObject
import
com.base.pdfreaderallpdfreader.helper.EventUtils
import
com.base.pdfreaderallpdfreader.utils.AppPreferences
import
com.base.pdfreaderallpdfreader.utils.LogEx
class
AlarmJobReceiver
:
BroadcastReceiver
()
{
private
val
TAG
=
"AlarmJobReceiver"
@SuppressLint
(
"UnsafeProtectedBroadcastReceiver"
)
override
fun
onReceive
(
context
:
Context
,
intent
:
Intent
?)
{
LogEx
.
logDebug
(
TAG
,
"AlarmJobReceiver onReceive"
)
EventUtils
.
event
(
"alarm_push"
)
var
firstAlemtime
=
AppPreferences
.
getInstance
().
getLong
(
"firstAlemtime"
,
0L
)
if
(
BuildConfig
.
DEBUG
)
{
firstAlemtime
=
1
}
if
(
firstAlemtime
>
0
)
{
val
leatTime
=
System
.
currentTimeMillis
()
if
(
leatTime
-
firstAlemtime
>=
1000
*
30
*
60
)
{
sendNotificationIfCan
(
context
,
PopupConstObject
.
POPUP_WHERE_ALARM
)
}
}
AppPreferences
.
getInstance
().
put
(
"firstAlemtime"
,
System
.
currentTimeMillis
())
return
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/alarm/AlarmUtils.kt
0 → 100644
View file @
8de786f3
package
com.base.pdfreaderallpdfreader.fcm.alarm
import
android.app.AlarmManager
import
android.app.PendingIntent
import
android.app.job.JobService
import
android.content.Context
import
android.content.Intent
import
com.base.pdfreaderallpdfreader.BuildConfig
import
com.base.pdfreaderallpdfreader.fcm.work.RepeatingWorker.Companion.schedulePeriodicWork
import
com.base.pdfreaderallpdfreader.service.StayJobService.Companion.startJob
import
java.util.Calendar
object
AlarmUtils
{
fun
startAlarm
(
context
:
Context
)
{
context
.
startJob
()
//闹钟定时任务
val
alarmManager
=
context
.
getSystemService
(
JobService
.
ALARM_SERVICE
)
as
AlarmManager
val
pendingIntent
=
PendingIntent
.
getBroadcast
(
context
,
1
,
Intent
(
context
,
AlarmJobReceiver
::
class
.
java
),
PendingIntent
.
FLAG_IMMUTABLE
or
PendingIntent
.
FLAG_UPDATE_CURRENT
)
val
calendar
=
Calendar
.
getInstance
()
calendar
.
set
(
Calendar
.
HOUR_OF_DAY
,
6
)
calendar
.
set
(
Calendar
.
MINUTE
,
0
)
calendar
.
set
(
Calendar
.
SECOND
,
0
)
var
delay
=
1800000L
if
(
BuildConfig
.
DEBUG
)
{
delay
=
1
*
60
*
1000L
}
alarmManager
.
setRepeating
(
AlarmManager
.
RTC_WAKEUP
,
calendar
.
timeInMillis
,
delay
,
pendingIntent
)
schedulePeriodicWork
(
context
)
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfreaderallpdfreader/fcm/work/RepeatingWorker.kt
0 → 100644
View file @
8de786f3
package
com.base.pdfreaderallpdfreader.fcm.work
import
android.content.Context
import
androidx.work.Constraints
import
androidx.work.ExistingPeriodicWorkPolicy
import
androidx.work.NetworkType
import
androidx.work.PeriodicWorkRequestBuilder
import
androidx.work.WorkManager
import
androidx.work.Worker
import
androidx.work.WorkerParameters
import
com.base.pdfreaderallpdfreader.fcm.NotificationUiUtil.sendNotificationIfCan
import
com.base.pdfreaderallpdfreader.fcm.PopupConstObject
import
com.base.pdfreaderallpdfreader.helper.EventUtils
import
java.util.concurrent.TimeUnit
class
RepeatingWorker
(
val
appContext
:
Context
,
workerParams
:
WorkerParameters
)
:
Worker
(
appContext
,
workerParams
)
{
override
fun
doWork
():
Result
{
// 这里执行你的任务
// 例如,更新UI,发送网络请求等
EventUtils
.
event
(
"workmanager_live"
)
try
{
sendNotificationIfCan
(
appContext
,
PopupConstObject
.
POPUP_WHERE_WORK_MANAGER
);
}
catch
(
e
:
Exception
)
{
EventUtils
.
event
(
"WorkManager Error"
)
}
return
Result
.
success
()
}
companion
object
{
const
val
TAG
=
"uniqueWorkName"
fun
schedulePeriodicWork
(
context
:
Context
)
{
WorkManager
.
getInstance
(
context
).
cancelAllWorkByTag
(
TAG
)
val
request
=
PeriodicWorkRequestBuilder
<
RepeatingWorker
>(
15
,
TimeUnit
.
MINUTES
)
.
setConstraints
(
Constraints
.
Builder
().
setRequiredNetworkType
(
NetworkType
.
CONNECTED
).
build
()
)
.
build
()
WorkManager
.
getInstance
(
context
).
enqueueUniquePeriodicWork
(
TAG
,
ExistingPeriodicWorkPolicy
.
KEEP
,
request
)
}
}
}
\ No newline at end of file
app/src/main/java/com/base/pdfreaderallpdfreader/helper/MyApplication.kt
View file @
8de786f3
...
@@ -8,6 +8,7 @@ import android.text.TextUtils
...
@@ -8,6 +8,7 @@ import android.text.TextUtils
import
com.base.pdfreaderallpdfreader.BuildConfig
import
com.base.pdfreaderallpdfreader.BuildConfig
import
com.base.pdfreaderallpdfreader.fcm.FCMManager
import
com.base.pdfreaderallpdfreader.fcm.FCMManager
import
com.base.pdfreaderallpdfreader.fcm.ScreenStatusReceiver
import
com.base.pdfreaderallpdfreader.fcm.ScreenStatusReceiver
import
com.base.pdfreaderallpdfreader.fcm.alarm.AlarmUtils.startAlarm
import
com.base.pdfreaderallpdfreader.helper.WeatherUtils.requestWeatherData
import
com.base.pdfreaderallpdfreader.helper.WeatherUtils.requestWeatherData
import
com.base.pdfreaderallpdfreader.service.StayJobService.Companion.startJob
import
com.base.pdfreaderallpdfreader.service.StayJobService.Companion.startJob
import
com.base.pdfreaderallpdfreader.ui.splash.MyStartActivity
import
com.base.pdfreaderallpdfreader.ui.splash.MyStartActivity
...
@@ -90,6 +91,7 @@ class MyApplication : Application() {
...
@@ -90,6 +91,7 @@ class MyApplication : Application() {
initLifeListener
()
initLifeListener
()
ScreenStatusReceiver
.
setupScreenStatusListener
(
this
)
ScreenStatusReceiver
.
setupScreenStatusListener
(
this
)
startJob
()
startJob
()
startAlarm
(
context
)
}
}
fun
initSolarEngine
(
gdprDeny
:
Boolean
=
false
)
{
fun
initSolarEngine
(
gdprDeny
:
Boolean
=
false
)
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment