-1

I recently installed and checked my application on Amazon's FireTV and found that it has some Display setup settings from which user can adjust the screen or use default which is a Zoomed in display for the device making the application views not properly displayed and being cut from the edges.

I cam basically add this snipped and in each Activity try to set the margins to the layout:

public static boolean isFireTv() {
    return android.os.Build.MANUFACTURER.equalsIgnoreCase("Amazon")
            && (android.os.Build.MODEL.equalsIgnoreCase("AFTB") );
}

However, it doesn't seem right so i want to know if there is any better solution for it. Something in XML or a better way of doing it through code


Wooble
  • 87,717
  • 12
  • 108
  • 131
Quamber Ali
  • 2,170
  • 25
  • 46
  • 1
    I don't know if there is a way to detect if the user has run the display calibration wizard (would seem to be something that should be in the start up process) but maybe have an intro screen to prompt the user until it becomes more widely known/used? – Offbeatmammal Jun 11 '14 at 03:59

1 Answers1

1

Looks like there is a way to detect if the user has run the overscan wizard and accepted a setting (either no overscan or applied one). If you were to use this to prompt the user to adjust (and I can't find a way to launch the wizard directly) you might want to make it a one-time thing in case the user has run the wizard but decided as they didn't need to adjust anything they'd just cancel it (but at the end of the day that's down to your implementation)

String overscan = Secure.getString(this.getContentResolver(),"overscan_values");
Log.v("Overscan Setting","--"+overscan+"--");
if (overscan.equals("0.0 0.0 0.0 0.0")) {
    overscan = "Overscan never run";
} else if (overscan.equals("0.000000 0.000000 0.000000 0.000000")) {
    overscan = "No overscan modification";
} else {
    overscan = "Overscan modification:" + overscan + ".";
}
Offbeatmammal
  • 7,970
  • 2
  • 33
  • 52