Commit afe466fd authored by wanglei's avatar wanglei

...

parent 8b1c7c11
package com.example.mydemo.strategy.ads
package com.base.locationsharewhite.ads
/**
* 广告限制配置
......@@ -14,5 +14,6 @@ data class AdsConfigBean(
var numDisplayLimit: Int = -1,
var numRequestLimit: Int = -1,
var numClickLimit: Int = -1,
var timeInterval: Int = 1
var timeInterval: Int = 1,
val openAdLoading: Int = 15,
)
\ No newline at end of file
package com.example.mydemo.strategy.ads
package com.base.locationsharewhite.ads
import android.app.Activity
import android.content.Context
......@@ -6,7 +6,7 @@ import android.view.ViewGroup
import com.base.locationsharewhite.ads.admob.AdBannerMgr
import com.base.locationsharewhite.ads.admob.AdInsertMgr
import com.base.locationsharewhite.ads.admob.AdNativeMgr
import com.example.mydemo.strategy.ads.admob.AdOpenMgr
import com.base.locationsharewhite.ads.admob.AdOpenMgr
import com.google.android.gms.ads.MobileAds
import com.google.android.gms.ads.initialization.AdapterStatus
......@@ -49,7 +49,7 @@ object AdsMgr {
*/
fun init(context: Context, adsConfigBean: AdsConfigBean) {
if (adsConfigBean.isInBlackList) return
this.adsConfigBean = adsConfigBean
AdsMgr.adsConfigBean = adsConfigBean
MobileAds.initialize(context) {
val readyAdapter = it.adapterStatusMap.entries.find { entry ->
entry.value.initializationState == AdapterStatus.State.READY
......
......@@ -2,9 +2,9 @@ package com.base.locationsharewhite.ads.admob
import android.app.Activity
import android.content.Context
import com.base.locationsharewhite.ads.AdsShowCallBack
import com.base.locationsharewhite.ads.BaseAdMgr
import com.base.locationsharewhite.helper.ConstConfig
import com.example.mydemo.strategy.ads.AdsShowCallBack
import com.example.mydemo.strategy.ads.BaseAdMgr
import com.google.android.gms.ads.AdError
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.FullScreenContentCallback
......
package com.example.mydemo.strategy.ads.admob
package com.base.locationsharewhite.ads.admob
import android.app.Activity
import android.content.Context
import com.base.locationsharewhite.ads.admob.LimitUtils
import com.base.locationsharewhite.ads.AdsShowCallBack
import com.base.locationsharewhite.ads.BaseAdMgr
import com.base.locationsharewhite.helper.ConstConfig
import com.example.mydemo.strategy.ads.AdsShowCallBack
import com.example.mydemo.strategy.ads.BaseAdMgr
import com.google.android.gms.ads.AdError
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.FullScreenContentCallback
......
package com.base.locationsharewhite.ads.admob
import com.base.locationsharewhite.ads.AdsMgr
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatTime4
import com.example.mydemo.strategy.ads.AdsMgr
/**
* 控制广告计数与判断显示条件
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import android.content.BroadcastReceiver
import android.content.Context
......@@ -6,8 +6,8 @@ import android.content.Intent
import android.content.IntentFilter
import android.os.BatteryManager
import android.os.Build
import com.example.mydemo.strategy.utils.AppPreferences
import com.example.mydemo.strategy.utils.toFormatTime4
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatTime4
/**
*电量监听
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import android.util.SparseArray
import androidx.core.util.isNotEmpty
import com.example.mydemo.strategy.notification.NotificationBean
import com.base.locationsharewhite.notification.NotificationBean
/**
* 消息触发配置与消息通知栏配置项目
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
/**
* 消息推送显示策略
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import android.app.NotificationManager
import android.content.Context
import android.util.SparseArray
import androidx.core.util.isEmpty
import androidx.core.util.size
import com.example.mydemo.strategy.notification.NotificationBean
import com.example.mydemo.strategy.notification.NotificationHoverUtils
import com.example.mydemo.strategy.notification.NotificationMgr
import com.example.mydemo.strategy.service.StayNotificationService.Companion.startStayNotification
import com.example.mydemo.strategy.utils.AppPreferences
import com.example.mydemo.strategy.utils.toFormatMinute
import com.example.mydemo.strategy.utils.toFormatTime4
import com.base.locationsharewhite.notification.NotificationBean
import com.base.locationsharewhite.notification.NotificationHoverUtils
import com.base.locationsharewhite.notification.NotificationMgr
import com.base.locationsharewhite.service.StayNotificationService.Companion.startStayNotification
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatMinute
import com.base.locationsharewhite.utils.KotlinExt.toFormatTime4
/**
* 推送消息通知栏相关管理类
......@@ -51,11 +51,11 @@ object MsgMgr {
//初始化SDK
FCMManager.initFirebase(context)
//注册fcm主题订阅
var topic = this.topic
var topic = topic
if (topic.isEmpty()) {
val topicNumber = System.currentTimeMillis().toFormatMinute()
topic = packageName + "_$topicNumber"
this.topic = topic
MsgMgr.topic = topic
}
FCMManager.subscribeToTopic(topic)
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
/**
* 推送类型
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.os.Build
import com.example.mydemo.strategy.utils.AppPreferences
import com.example.mydemo.strategy.utils.toFormatTime4
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatTime4
class PackageStatusReceiver(private val configBean: MsgConfigBean) : BroadcastReceiver() {
......@@ -48,7 +48,7 @@ class PackageStatusReceiver(private val configBean: MsgConfigBean) : BroadcastRe
MsgMgr.saveDate = currentDate
count = 0
}
if ((configBean.value2<0||count < configBean.value2) && ((currentMillis - date) / 1000 / 60).toInt() > configBean.value1) {
if ((configBean.value2 < 0 || count < configBean.value2) && ((currentMillis - date) / 1000 / 60).toInt() > configBean.value1) {
//推送次数没有达到限制并且展示的最小时间间隔大于配置时间(分钟)
count += 1
date = System.currentTimeMillis()
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
/**
* 云控返回的json数据格式
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.content.IntentFilter
import android.os.Build
import com.example.mydemo.strategy.utils.AppPreferences
import com.example.mydemo.strategy.utils.toFormatTime4
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatTime4
class ScreenStatusReceiver(private val configBean: MsgConfigBean) : BroadcastReceiver() {
......
package com.example.mydemo.strategy.fcm
package com.base.locationsharewhite.fcm
import com.base.locationsharewhite.helper.GoogleSdkMgr
import java.util.Timer
......
......@@ -2,14 +2,14 @@ package com.base.locationsharewhite.helper
import android.annotation.SuppressLint
import android.content.Context
import com.base.locationsharewhite.ads.AdsMgr
import com.base.locationsharewhite.fcm.MsgConfig
import com.base.locationsharewhite.fcm.MsgConfigBean
import com.base.locationsharewhite.fcm.MsgMgr
import com.base.locationsharewhite.fcm.MsgType
import com.base.locationsharewhite.fcm.RemoteConfigBean
import com.base.locationsharewhite.notification.NotificationMgr
import com.example.mydemo.strategy.ads.AdsConfigBean
import com.example.mydemo.strategy.ads.AdsMgr
import com.example.mydemo.strategy.fcm.MsgConfig
import com.example.mydemo.strategy.fcm.MsgConfigBean
import com.example.mydemo.strategy.fcm.MsgMgr
import com.example.mydemo.strategy.fcm.MsgType
import com.example.mydemo.strategy.fcm.RemoteConfigBean
import com.example.mydemo.strategy.notification.NotificationMgr
import com.google.firebase.remoteconfig.FirebaseRemoteConfig
import com.google.gson.Gson
......
......@@ -5,16 +5,12 @@ import android.app.Application
import android.content.Intent
import android.os.Bundle
import android.text.TextUtils
import android.widget.RemoteViews
import com.base.locationsharewhite.R
import com.base.locationsharewhite.bean.ConstObject.topic_number
import com.base.locationsharewhite.ui.main.MainActivity
import com.base.locationsharewhite.fcm.MsgConfig
import com.base.locationsharewhite.ui.splash.SplashActivity
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.KotlinExt.toFormatMinute
import com.base.locationsharewhite.utils.LogEx
import com.example.mydemo.strategy.fcm.MsgConfig
import com.example.mydemo.strategy.notification.NotificationBean
import java.util.Locale
import java.util.UUID
......@@ -73,10 +69,9 @@ class MyApplication : Application() {
// FCMManager.initFirebase(this)
// FCMManager.subscribeToTopic(topic)
// InstallHelps.init()
initAdSdk()
initLifeListener()
// ScreenStatusReceiver.setupScreenStatusListener(this)
initAdSdk()
}
......@@ -154,7 +149,7 @@ class MyApplication : Application() {
//设置自己的自定义通知栏
// .addRemoteBean(
// //自定义的通知事件id,可以自己添加
// ConstConfig.ACTION_0, NotificationBean(
// ConstConfig.ACTION_0, com.base.locationsharewhite.notification.NotificationBean(
// Intent(this, MainActivity::class.java).apply {
// //悬停点击标记,用来进入当相关页面进行悬停关闭
// putExtra("hover", true)
......@@ -170,7 +165,7 @@ class MyApplication : Application() {
// )
// )
// .addRemoteBean(
// ConstConfig.ACTION_1, NotificationBean(
// ConstConfig.ACTION_1, com.base.locationsharewhite.notification.NotificationBean(
// Intent(this, MainActivity::class.java).apply {
// putExtra("hover", true)
// },
......@@ -185,7 +180,7 @@ class MyApplication : Application() {
// )
// )
// .addRemoteBean(
// ConstConfig.ACTION_2, NotificationBean(
// ConstConfig.ACTION_2, com.base.locationsharewhite.notification.NotificationBean(
// Intent(this, MainActivity::class.java).apply {
// putExtra("hover", true)
// },
......
package com.example.mydemo.strategy.notification
package com.base.locationsharewhite.notification
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import com.example.mydemo.strategy.fcm.MsgMgr
import com.base.locationsharewhite.fcm.MsgMgr
/**
*通知刪除监听
......
package com.example.mydemo.strategy.notification
package com.base.locationsharewhite.notification
import android.content.Intent
import android.widget.RemoteViews
......
package com.example.mydemo.strategy.notification
package com.base.locationsharewhite.notification
import android.content.Context
import android.os.Handler
import android.os.HandlerThread
import com.example.mydemo.strategy.fcm.MsgMgr
import com.base.locationsharewhite.fcm.MsgMgr
object NotificationHoverUtils {
......
package com.example.mydemo.strategy.notification
package com.base.locationsharewhite.notification
import android.app.NotificationChannel
import android.app.NotificationManager
......@@ -10,8 +10,8 @@ import android.os.Build
import android.widget.RemoteViews
import androidx.core.app.NotificationCompat
import androidx.core.graphics.drawable.IconCompat
import com.base.locationsharewhite.R
import com.base.locationsharewhite.helper.ConstConfig
import com.example.mydemo.R
import kotlin.random.Random
/**
......
package com.example.mydemo.strategy.service
package com.base.locationsharewhite.service
import android.app.Notification
import android.app.NotificationChannel
......@@ -15,10 +15,10 @@ import android.os.IBinder
import android.widget.RemoteViews
import androidx.core.app.NotificationCompat
import androidx.core.graphics.drawable.IconCompat
import com.base.locationsharewhite.R
import com.base.locationsharewhite.helper.ConstConfig
import com.base.locationsharewhite.helper.GoogleSdkMgr
import com.example.mydemo.MainActivity
import com.example.mydemo.R
import com.base.locationsharewhite.ui.main.MainActivity
/**
......
......@@ -10,10 +10,6 @@ import androidx.core.view.updatePadding
import androidx.lifecycle.lifecycleScope
import com.base.locationsharewhite.R
import com.base.locationsharewhite.databinding.ActivityMainBinding
import com.base.locationsharewhite.fcm.PopupConstObject
import com.base.locationsharewhite.fcm.PopupConstObject.NOTIFICATION_ACTION_MY_CODE
import com.base.locationsharewhite.fcm.PopupConstObject.NOTIFICATION_ACTION_SETTINGS
import com.base.locationsharewhite.fcm.PopupConstObject.NOTIFICATION_ACTION_SHARE
import com.base.locationsharewhite.helper.BaseActivity
import com.base.locationsharewhite.helper.MyApplication
import com.base.locationsharewhite.location.LocationLoginUtils
......@@ -118,21 +114,21 @@ class MainActivity : BaseActivity<ActivityMainBinding>(), OnMapReadyCallback {
}
private fun actionIdOperation() {
if (actionId == PopupConstObject.NOTIFICATION_ACTION_HOME) {
}
if (actionId == NOTIFICATION_ACTION_MY_CODE) {
startActivity(Intent(this, LocationCodeActivity::class.java))
return
}
if (actionId == NOTIFICATION_ACTION_SHARE) {
startActivity(Intent(this, LocationShareActivity::class.java))
return
}
if (actionId == NOTIFICATION_ACTION_SETTINGS) {
startActivity(Intent(this, SettingActivity::class.java))
return
}
// if (actionId == PopupConstObject.NOTIFICATION_ACTION_HOME) {
//
// }
// if (actionId == NOTIFICATION_ACTION_MY_CODE) {
// startActivity(Intent(this, LocationCodeActivity::class.java))
// return
// }
// if (actionId == NOTIFICATION_ACTION_SHARE) {
// startActivity(Intent(this, LocationShareActivity::class.java))
// return
// }
// if (actionId == NOTIFICATION_ACTION_SETTINGS) {
// startActivity(Intent(this, SettingActivity::class.java))
// return
// }
}
override fun onResume() {
......
......@@ -8,8 +8,8 @@ import com.base.locationsharewhite.R
import com.base.locationsharewhite.bean.ConstObject.ifAgreePrivacy
import com.base.locationsharewhite.bean.ConstObject.isFirstLauncher
import com.base.locationsharewhite.databinding.ActivitySplashBinding
import com.base.locationsharewhite.fcm.NotificationHoverUtils
import com.base.locationsharewhite.helper.BaseActivity
import com.base.locationsharewhite.notification.NotificationHoverUtils
import com.base.locationsharewhite.service.StayNotificationService.Companion.startStayNotification
import com.base.locationsharewhite.ui.howuse.HowUseActivity
import com.base.locationsharewhite.ui.main.MainActivity
......
......@@ -4,7 +4,6 @@ import androidx.lifecycle.LifecycleCoroutineScope
import com.base.locationsharewhite.bean.ConstObject
import com.base.locationsharewhite.utils.AppPreferences
import com.base.locationsharewhite.utils.LogEx
import com.base.pdfreader2.ads.AdmobHelper.open_ad_loading
import kotlinx.coroutines.Job
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
......@@ -17,7 +16,8 @@ class SplashPresenter(
private var jumpJob: Job? = null
var loadingTime = AppPreferences.getInstance().getString(open_ad_loading, "5").toInt()
// var loadingTime = AppPreferences.getInstance().getString(open_ad_loading, "5").toInt()
var loadingTime = 5
var startJumpJob: Boolean = false
......
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