Я следую этому руководству по реализации приложения, использующего бесконтактный маяк:
https://github.com/Estimote/Xamarin-Bindings
Я скачал папку ExampleApp из github и установил Estimote.Android.Proximity.Это работает нормально.
Но это моя проблема:
//ExampleApps/Example.Android.Proximity/MainActivity.cs
class MyEnterHandler : Java.Lang.Object, Kotlin.Jvm.Functions.IFunction1
{
public Java.Lang.Object Invoke(Java.Lang.Object p0)
{
IProximityZoneContext context = (IProximityZoneContext)p0;
Log.Debug("app", $"MyEnterHandler, context = {context}");
return null;
}
}
Вместо Log.Debug я хочу создать свое Уведомление .. Как я могу это сделать?
Я попытался создать уведомление с помощью этого сценария:
if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
{
// Android 8.0 and up require a channel for the notifications
var channel = new NotificationChannel(channelId, "Bluetooth activity", NotificationImportance.Low);
var notificationManager = this.GetSystemService(Context.NotificationService) as NotificationManager;
notificationManager.CreateNotificationChannel(channel);
}
var notification = new NotificationCompat.Builder(this, channelId)
.SetSmallIcon(global::Android.Resource.Drawable.IcDialogInfo)
.SetContentTitle("Proximity")
.SetContentText("Proximity demo is scanning for beacons")
.Build();
Но у меня проблема с this.getSystemService (у меня нет контекста в "классе MyEnterHandler")