POSIX级文件系统API可以在OS X,iOS和Android之间架起桥梁吗?

时间:2013-12-26 15:54:41

标签: android ios macos file-io posix

我有一个基于Mac Carbon的传统应用程序,我已将其移植到64位(Lion及更高版本)。该应用程序在C级上大量使用FS系列函数和结构,包括对Finder.h的引用。我设法凑合了一些适用于OS X 10.7+ SDK的东西,尽管有很多不推荐使用的功能。

现在我正在尝试将应用程序移植到iOS(以及将来的Android)。由于iOS没有经典的Mac OS根源,因此很多FS结构和围绕Finder构建的意识形态都不存在。

我的问题是,我可以在我提到的三个平台的C POSIX支持的功能之上构建一个跨平台的文件系统层吗?我知道iOS或Android都没有经过认证的POSIX兼容,尽管它们的行为与POSIX系统非常相似。

我有很大一部分代码可以在我的应用程序级别清除Mac OS依赖项,而我的直觉告诉我,从长远来看,尝试使用C-处理文件访问,文件夹枚举和符号链接解析会更便宜级API。

我忽略了NSFileManager和Core Foundation方法作为选项,因为这将需要另一个抽象层,并在我最终转移到Android时重写。

我对类似POSIX的环境并不太熟悉,所以我很欣赏老手的建议。谢谢!

1 个答案:

答案 0 :(得分:1)

我做了很多跨平台开发(Palm OS,Windows Mobile,BlackBerry,iOS,Android,Mac OSX,Windows 7和Windows App Store应用程序),现在我建议为iOS和Android创建一个完全原生的应用程序。有两种方法可以在两个平台之间进行跨平台开发,但我认为不值得去完成这些路径。在每个平台上创建完全原生的应用程序,并充分利用iOS和Android为您提供的API。