Как проверить, работает ли он в 64-битном или 32-битном режиме для Delphi Android 10.3.3? - PullRequest
0 голосов
/ 03 марта 2020

Есть ли какая-либо документация для Delphi Firemonkey Android 10.3.3 по проверке того, работает ли она на 32-битном или 64-битном устройстве Android ??

Ответ Далии Прасникара кажется, работает лучше всего:

var p: pointer;
begin
  if SizeOf(p) = 4 then
    showmessage('32 bit')
  else if SizeOf(p) = 8 then
    showmessage('64 bit');

Я не могу заставить другие ответы работать правильно.

1 Ответ

1 голос
/ 03 марта 2020
{$IFDEF CPU32BITS }
  // 32-bit
{$ELSE }
  // 64-bit
{$ENDIF }

, если вы не имеете в виду 32-разрядную или 64-разрядную ОС Andoid (32-разрядные программы можно запускать на 64-разрядной Android).

В этом случае

(если вы уже знаете, что работаете на Android)

USES System.SysUtils;

.
.
.

{$IFDEF CPU32BITS }
  IF TOSVersion.Architecture=TOSVersion.TArchitecture.arARM64 THEN
    // 64-bit
  ELSE
    // 32-bit
{$ELSE }
  // 64-bit
{$ENDIF }
...