问题描述
我尝试了许多来自 stackOverflow 的答案。我不知道我的代码哪里出错了,它没有显示单挑通知。
请帮助我使提醒通知正常工作。任何帮助表示赞赏。
class OreoNotification(base:Context):Contextwrapper(base) {
private var notificationmanager:notificationmanager?=null
@TargetApi(Build.VERSION_CODES.O)
companion object{
private const val CHANNEL_ID="com.ayush.flow"
private const val CHANNEL_NAME="Flow"
}
init {
if(Build.VERSION.SDK_INT>=Build.VERSION_CODES.O){
createChannel()
}
}
@TargetApi(Build.VERSION_CODES.O)
private fun createChannel(){
val channel=NotificationChannel(CHANNEL_ID,CHANNEL_NAME,notificationmanager.IMPORTANCE_HIGH)
channel.enableLights(false)
channel.enableVibration(true)
channel.setShowBadge(true)
channel.lockscreenVisibility=Notification.VISIBILITY_PUBLIC
getManager!!.createNotificationChannel(channel)
}
val getManager:notificationmanager? get(){
if(notificationmanager==null){
notificationmanager=getSystemService(Context.NOTIFICATION_SERVICE) as notificationmanager
}
return notificationmanager
}
@RequiresApi(Build.VERSION_CODES.O)
fun getoreoNotification(title:String?,body:String?,pendingIntent:PendingIntent?,soundUri:Uri?,icon:String?,img_url:Bitmap):Notification.Builder{
return Notification.Builder(applicationContext,CHANNEL_ID)
.setLargeIcon(img_url)
.setContentIntent(pendingIntent)
.setContentTitle(title)
.setContentText(body)
.setSmallIcon(icon!!.toInt())
.setSound(soundUri)
.setAutoCancel(true)
.setStyle(Notification.BigTextStyle().bigText(body))
.setPriority(Notification.PRIORITY_HIGH)
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)