Для решения задачи с определением разрешения воспользуемся JNI (Android API: http://developer.android.com/reference/android/util/DisplayMetrics.html).
На самом деле объяснять тут не чего особо, поэтому я просто приведу код проекта. Не забываем подключить в uses «FMX.Helpers.Android, Androidapi.JNI.Util;». Код, приведённый ниже расписан, чтобы всё было понятно.
Код проекта:
unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls, FMX.Helpers.Android, Androidapi.JNI.Util; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; procedure FormResize(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; Disp: JDisplayMetrics; NativeClientHeight, NativeClientWidth: Single; // Для формы implementation {$R *.fmx} procedure TForm1.FormResize(Sender: TObject); begin // Общая строчка для экрана и формы Disp := GetJDisplayMetrics; // Экран Label2.Text := 'Width: ' + Disp.widthPixels.ToString(); Label3.Text := 'Height: ' + Disp.heightPixels.ToString(); //********** // Форма NativeClientHeight := ClientHeight * Disp.density; NativeClientWidth := ClientWidth * Disp.density; Label5.Text := 'Width: ' + FloatToStr(NativeClientWidth); Label6.Text := 'Height: ' + FloatToStr(NativeClientHeight); //********** // Orientation if (Height > Width) then Label7.Text := 'Orientation: Portrait' else if (Height < Width) then Label7.Text := 'Orientation: Landscape'; end; end.
Исходный код проекта: Скачать с Google Drive