大多数(如果不是全部)智能手机都使用 ARM 处理器。但是,我相信移动应用程序是在台式机、笔记本电脑上开发的,它们都运行 x86。例如,在基于 ARM 的处理器上运行的 ios 应用程序或 Android 应用程序在基于 x86 的 Mac 上编写时如何工作?
2 回答
1
在 iOS 上,模拟器运行要测试的代码的 x86/x86-64 版本(目前仅 64 位版本)。
值得指出的是,在模拟器方面,Android 和 iOS 在方法上存在一些显着的架构差异。iOS Darwin 内核与 MacOS 中的 ABI 和 API 兼容,模拟器应用程序只运行 iOS 'shell',包括跳板,以及主机操作系统之上的全套用户空间库。
Android 模拟器在虚拟机中运行,可选择使用指令集仿真。
在某些类型的开发中,这两种方法都不是想法。任何依赖低级优化的代码都需要在设备上进行测试。
于 2019-08-07T12:51:05.817 回答
0
模拟器。
和/或虚拟机中的 x86 Android,因为大多数 Android 程序在 x86 Android 和 ARM / AArch64 Android 之间的源代码级别是可移植的。(但这仍然只是一种更高效的仿真,而不是直接在桌面上的 x86 Linux 内核下运行 Android 应用程序)。
我认为如果您正确设置网络,在桌面上编译并在真实手机上运行也很容易,可能是在越狱手机以使其运行应用程序而无需通过应用程序商店重新安装之后。IDK 详细信息。
于 2019-08-07T03:34:59.850 回答