kopia lustrzana https://github.com/ge0rg/aprsdroid
Notification: implement channels
rodzic
0d1f94e296
commit
afc8684364
|
@ -17,6 +17,8 @@ class APRSdroid extends Activity {
|
|||
super.onCreate(savedInstanceState)
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(this)
|
||||
|
||||
ServiceNotifier.instance.setupChannels(this)
|
||||
|
||||
// if this is a USB device, auto-launch the service
|
||||
if (UsbTnc.checkDeviceHandle(prefs, getIntent.getParcelableExtra("device")) && prefs.getBoolean("service_running", false))
|
||||
startService(AprsService.intent(this, AprsService.SERVICE))
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
package org.aprsdroid.app
|
||||
|
||||
import _root_.android.app.{Notification, NotificationManager, PendingIntent, Service}
|
||||
import _root_.android.app.{Notification, NotificationChannel, NotificationManager, PendingIntent, Service}
|
||||
import _root_.android.content.{Context, Intent}
|
||||
import _root_.android.net.Uri
|
||||
import _root_.android.os.Build
|
||||
|
@ -17,11 +17,21 @@ abstract class ServiceNotifier {
|
|||
var CALL_NOTIFICATION = SERVICE_NOTIFICATION + 1
|
||||
val callIdMap = new scala.collection.mutable.HashMap[String, Int]()
|
||||
|
||||
def setupChannels(ctx : Context) {
|
||||
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.O) {
|
||||
val nm = ctx.getSystemService(classOf[NotificationManager]).asInstanceOf[NotificationManager]
|
||||
nm.createNotificationChannel(new NotificationChannel("status",
|
||||
ctx.getString(R.string.aprsservice), NotificationManager.IMPORTANCE_LOW))
|
||||
nm.createNotificationChannel(new NotificationChannel("msg",
|
||||
ctx.getString(R.string.p_msg), NotificationManager.IMPORTANCE_DEFAULT))
|
||||
}
|
||||
}
|
||||
|
||||
def newNotification(ctx : Service, status : String) : Notification = {
|
||||
val i = new Intent(ctx, classOf[APRSdroid])
|
||||
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
|
||||
val appname = ctx.getResources().getString(R.string.app_name)
|
||||
new Notification.Builder(ctx)
|
||||
new Notification.Builder(ctx, "status")
|
||||
.setContentTitle(appname)
|
||||
.setContentText(status)
|
||||
.setContentIntent(PendingIntent.getActivity(ctx, 0, i, 0))
|
||||
|
@ -46,7 +56,7 @@ abstract class ServiceNotifier {
|
|||
val i = new Intent(ctx, classOf[MessageActivity])
|
||||
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
|
||||
i.setData(Uri.parse(call))
|
||||
new Notification.Builder(ctx)
|
||||
new Notification.Builder(ctx, "msg")
|
||||
.setContentTitle(call)
|
||||
.setContentText(message)
|
||||
.setContentIntent(PendingIntent.getActivity(ctx, 0, i, PendingIntent.FLAG_UPDATE_CURRENT))
|
||||
|
|
Ładowanie…
Reference in New Issue