android - 你如何检查你在 Delphi Android 10.3.3 上运行的是 64 位还是 32 位?
问题描述
是否有任何有关 Delphi Firemonkey Android 10.3.3 的文档来检查您是否在 Android 设备上运行 32 位或 64 位?
Dalija Prasnikar 的回答似乎效果最好:
var p: pointer;
begin
if SizeOf(p) = 4 then
showmessage('32 bit')
else if SizeOf(p) = 8 then
showmessage('64 bit');
我似乎无法让其他答案正常工作。
解决方案
{$IFDEF CPU32BITS }
// 32-bit
{$ELSE }
// 64-bit
{$ENDIF }
除非您的意思是 Andoid 操作系统是 32 位还是 64 位(您可以在 64 位 Android 上运行 32 位程序)。
在这种情况下
(假设你已经知道你在 Android 上运行)
USES System.SysUtils;
.
.
.
{$IFDEF CPU32BITS }
IF TOSVersion.Architecture=TOSVersion.TArchitecture.arARM64 THEN
// 64-bit
ELSE
// 32-bit
{$ELSE }
// 64-bit
{$ENDIF }
推荐阅读
- rebus - Rebus:多个 sagas 处理相同的消息 - 或者 - saga 中请求/回复的最佳实践
- angular - 如何在 Angular 10 中缓存路由以避免重新渲染
- c++ - C++ 将 JSON 转换为 XML
- python - Numpy 拒绝显示矢量化函数
- php - 托管我的应用程序时有关 phpMailer 安全性的两个问题?
- ansible - 在ansible中向文件添加列表
- python - 语音助手未终止
- python - 如何为单元测试创建具有固定外部结构的随机 json 字典?
- python - 在内部连接 Cloud Function 和 App Engine
- sql - 在 spark sql 中执行左连接时,它没有正确获取值