Adding headphones actions

This commit is contained in:
Anonymous Raccoon
2018-05-22 21:23:54 +02:00
parent 5435715213
commit 6b87a9f8f0
2 changed files with 39 additions and 8 deletions
@@ -1,4 +1,5 @@
using Android.Content;
using Android.App;
using Android.Content;
using Android.Support.V4.Media.Session;
namespace MusicApp.Resources.Portable_Class
@@ -7,21 +8,51 @@ namespace MusicApp.Resources.Portable_Class
{
public override void OnPlay()
{
base.OnPlay();
//base.OnPlay();
System.Console.WriteLine("&Play");
PlayPause();
}
public override void OnPause()
{
base.OnPause();
//base.OnPause();
System.Console.WriteLine("&Pause");
PlayPause();
}
public override void OnSkipToNext()
{
//base.OnSkipToNext();
System.Console.WriteLine("&Next");
Next();
}
public override void OnSkipToPrevious()
{
//base.OnSkipToPrevious();
System.Console.WriteLine("&Previous");
Previous();
}
void PlayPause()
{
Intent intent = new Intent(Android.App.Application.Context, typeof(MusicPlayer));
Intent intent = new Intent(Application.Context, typeof(MusicPlayer));
intent.SetAction("Pause");
Android.App.Application.Context.StartService(intent);
Application.Context.StartService(intent);
}
void Next()
{
Intent intent = new Intent(Application.Context, typeof(MusicPlayer));
intent.SetAction("Next");
Application.Context.StartService(intent);
}
void Previous()
{
Intent intent = new Intent(Application.Context, typeof(MusicPlayer));
intent.SetAction("Previus");
Application.Context.StartService(intent);
}
}
}
@@ -183,7 +183,7 @@ namespace MusicApp.Resources.Portable_Class
{
mediaSession = new MediaSessionCompat(Application.Context, "MusicApp");
mediaSession.SetFlags(MediaSessionCompat.FlagHandlesMediaButtons | MediaSessionCompat.FlagHandlesTransportControls);
PlaybackStateCompat.Builder builder = new PlaybackStateCompat.Builder().SetActions(PlaybackStateCompat.ActionPlay | PlaybackStateCompat.ActionPause);
PlaybackStateCompat.Builder builder = new PlaybackStateCompat.Builder().SetActions(PlaybackStateCompat.ActionPlay | PlaybackStateCompat.ActionPause | PlaybackStateCompat.ActionSkipToNext | PlaybackStateCompat.ActionSkipToPrevious);
mediaSession.SetPlaybackState(builder.Build());
mediaSession.SetCallback(new HeadphonesActions());
}
@@ -264,7 +264,7 @@ namespace MusicApp.Resources.Portable_Class
{
mediaSession = new MediaSessionCompat(Application.Context, "MusicApp");
mediaSession.SetFlags(MediaSessionCompat.FlagHandlesMediaButtons | MediaSessionCompat.FlagHandlesTransportControls);
PlaybackStateCompat.Builder builder = new PlaybackStateCompat.Builder().SetActions(PlaybackStateCompat.ActionPlay | PlaybackStateCompat.ActionPause);
PlaybackStateCompat.Builder builder = new PlaybackStateCompat.Builder().SetActions(PlaybackStateCompat.ActionPlay | PlaybackStateCompat.ActionPause | PlaybackStateCompat.ActionSkipToNext | PlaybackStateCompat.ActionSkipToPrevious);
mediaSession.SetPlaybackState(builder.Build());
mediaSession.SetCallback(new HeadphonesActions());
}
@@ -824,7 +824,7 @@ namespace MusicApp.Resources.Portable_Class
break;
case AudioFocus.Loss:
Stop();
Pause();
break;
case AudioFocus.LossTransient: