在安卓应用程序中使用.exe文件

Use .exe file in android application

本文关键字:exe 文件 应用程序      更新时间:2023-10-16

有一种方法可以将带有.exe扩展名的计算机程序放入Android程序中,然后通过该程序运行它们。

我已经阅读了有关 ndk 和 win 的信息,但我不知道如何使用它们

请举例说明或提供充分参考

您正在尝试在不同的架构和平台(在ARM或Arch64上运行的Android(上运行二进制应用程序(适用于Windows的Intel x86 .exe(。

我能想到三个选择:

选项 1:仿真

为不同体系结构运行二进制文件的传统方法是仿真,例如使用 Qemu。

但是,这仍然留下了不同的平台。例如,如果您的 exe 文件使用 GUI 和文件系统,您突然还需要模拟它期望的操作系统的某些部分,或者随您的应用程序一起提供某些 Windows 变体的副本,这将具有各种版权限制。

最后,请记住,Android设备的输入机制与传统的Windows PC完全不同,因此您必须将Android虚拟键盘(和触摸事件(链接到模拟Windows PC的键盘和鼠标。

这并非不可能,但需要大量的支持代码。 如果你选择走这条路,我建议你先买一个像Raspberry Pi这样的类似桌面的ARM设备,让它在那里工作。

选项 2:反编译并移植到安卓

您可以找到将.exe文件转换回一组可编译的 C 或 C++ 文件的反编译器。这将允许您仔细提取所需的功能并将其包装在 Android 本机代码中。这就是OpenRCT2和Diablo在几年后被移植到Linux和macOS等其他平台的方式。

你不应该期望反编译的源代码类似于你自己编写的任何代码,但如果有足够的时间,你最终可以得到一些Android原生的东西(或Linux,或macOS,甚至iOS(。

选项 3:在其他位置托管应用程序

最后,您可以选择根本不将应用程序移植到Android,而是将其托管在可以24/7运行的Windows机器上,并使其可在手机上访问。根据应用程序的不同,这可以采用 Web 服务的形式,该服务使用来自 Web 的输入运行.exe,或者采用成熟的远程桌面/VNC 会话,您可以在其中使用手机的输入法与应用程序进行交互。