mirror of
https://github.com/zoriya/Opus.git
synced 2026-06-02 06:05:01 +00:00
Adding headphones actions
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user