Book Image

Xamarin Blueprints

By : Michael Williams
Book Image

Xamarin Blueprints

By: Michael Williams

Overview of this book

Do you want to create powerful, efficient, and independent apps from scratch that will leverage the Xamarin framework and code with C#? Well, look no further; you’ve come to the right place! This is a learn-as-you-build practical guide to building eight full-fledged applications using Xamarin.Forms, Xamarin Android, and Xamarin iOS. Each chapter includes a project, takes you through the process of building applications (such as a gallery Application, a text-to-speech service app, a GPS locator app, and a stock market app), and will show you how to deploy the application’s source code to a Google Cloud Source Repository. Other practical projects include a chat and a media-editing app, as well as other examples fit to adorn any developer’s utility belt. In the course of building applications, this book will teach you how to design and prototype professional-grade applications implementing performance and security considerations.
Table of Contents (14 chapters)
Xamarin Blueprints
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

Implementing the iOS SoundHandler using the AVAudioPlayer framework


The AVAudioPlayer class is the framework we will be using to play and control our audio streams in iOS, so let's begin by adding a new folder called Sound to the iOS project. We then want to create a new file called SoundHandler.cs that will inherit the ISoundHandler interface:

public class SoundHandler : ISoundHandler 
    { 
         
    } 

Now let's create a private AVAudioPlayer object and add our public IsPlaying, which will hold the playing status of the audio player:

private AVAudioPlayer _audioPlayer; 
 
public bool IsPlaying { get; set; } 

Then we add in the functions of the interface. In each function, we will be using the audio player object to do all our audio processing:

public void Load() 
        { 
            _audioPlayer = AVAudioPlayer.FromUrl(NSUrl.FromFilename("Moby - The Only Thing.mp3")); 
        } 
 
public void PlayPause() 
        { 
            if (_audioPlayer != null) 
            { 
        ...