Search code examples
androidxamarin.formsdisplay-managerandroid-virtualdisplay

Detect screen mirroring using xamarin.forms.android


I want to detect android screen mirroring to pc. I am currently coding in c# Xamarin Forms Android.

What I have done

Here someone recommended to use DisplayManager and VirtualDisplay documentation. But I don't know how to achieve that in code.

Here someone recommended to check DisplayManager.getDisplays(), and see if it's >1. Again not working to detect vysor I tried with code.


Solution

  • Finally I got the working answer.
    Android mirrors like vysor can't mirror without having developer options enabled.
    To check whether mirror can be run, check this code below:

    //https://stackoverflow.com/a/31582092/11390822
    
    var context = Android.App.Application.Context;
    var resolver = context.ApplicationContext.ContentResolver;
    if (Settings.Secure.GetInt(resolver, Settings.Global.DevelopmentSettingsEnabled, 0) == 1)
    {
    //Developer options enabled
    //Mean vysor can mirror
    }
    else
    {
    //Developer options disabled
    //Mean vysor can't mirror now
    }
    

    enter image description here