Read now

Secondary Display Control via Android Presentation Class

In this blog, we will learn about Secondary Display Control via Android Presentation Class.

Well, the title line certainly deals with a lot of words that probably most of the developers are not aware of and frankly, even I was not aware of this beauty of Android until last month.

Before we start, let me just tell you a few practical use cases for what you can build after following along.

After reading this blog you will also be able to build something similar.

Before we start talking about code let’s just clear what the words in the title are.

Display

A display is referred to as a screen or area which can show the content.

As a result, an Android device can control any number of displays.

The main point to note is that the application’s code should be able to handle each display separately and these are in sync with the main display.

Main Display

This display refers to the actual screen provided by the manufacturer of the Android device.

Hence, this screen listens to all the user interactions, gestures and motions events.

As a result, this display is referred to as Main Display.

Secondary Display

This display refers to a secondary screen which is somehow (Bluetooth, wired connections, RFC) connected to your Android device.

By Default, this screen is not user interactive and hence it is called as Display and not Screen.

Presentation Class

A presentation is a special kind of dialog whose purpose is to present content on a secondary display. A Presentation is associated with the target Display at creation time and configures its context and resource configuration according to the display’s metrics.

— developer.android.com

For Simple understanding, we need to extend this class to build a view to display on our Secondary Display.

With this understanding, now you can do anything you want on Secondary Display.

Now, in this blog, we will just be making a Welcome TextView on the Secondary Display.

APPROACH :

CODE :

File Name –> secondary_display.xml

File Name –> SecondaryDisplay.java

With the help of lines below, you can set the Secondary Display Content.

Last Step:

With this last change, you have completed the task.

Now, just run your application on a device with  Secondary Display and see the magic.

Keep coding and Keep Sharing 🙂

References –> https://developer.android.com/reference/android/app/Presentation

https://developer.android.com/reference/android/view/Display.html

. . .

Comments (2)

Add Your Comment

  • Anish Hegde
    Is there any software solution to test the code without any multi display harware.I mean any virtual device or something?
    • anchit
      Hello Anish,

      You can easily try this option in any android device or emulators.

      All you need to do is to enable the developer options.

      Then in the developer options menu find the option “Simulate secondary displays”.

      From the list that opens up , you can easily select the width option as per your need.

  • css.php
    Hire Us!
    Brief us about your requirements and we'll get back to you.
    Woo! Hooy!
    We have just recieved your project brief and our expert will contact you shortly.
    Send Again
    Close