18

可能的重复:
如何使用 Windows 开发机器为 iPhone 开发?

我正在为我妻子的手机构建一个 iPhone 应用程序,但对购买 Mac 作为一次性工作的开发平台不感兴趣。应用程序:

  • 应该在 iPhone 上独立运行(即没有网络连接)
  • 使用周围的 iPhone Javascript 库之一创建的 GUI 是完全可以接受的
  • 会做一些数据库 IO 来读取和更新数据
  • 没有商业价值,绝不会被任何人使用

这是我的想法:

  • 越狱 iPhone
  • 在 iPhone 上安装 Ruby + Sinatra
  • 使用 Sinatra 编写应用程序,在 iPhone 上访问数据库(SQLite?)

要在 iPhone 上访问应用程序:

  • 在后台启动 Sinatra 应用程序(这可能吗?)
  • 启动 Safari 浏览器会话
  • 导航到 Sinatra 应用程序,例如http://localhost:12345
  • 等等

这似乎是一种奇怪的方法,但我想不出一种更简单的方法来编写独立的 iPhone 应用程序而不购买 Mac。有没有更好的方法来做到这一点?

4

10 回答 10

7

我能找到的唯一可靠信息是始终出色的 MetaFilter

http://ask.metafilter.com/110466/Anyway-to-develop-iPhoneiTouch-apps-without-investing-in-a-Mac

答案显然是否定的。

您绝对需要某种描述的英特尔 Mac。

整个 iPhone 构建过程在 XCode 中根深蒂固,无法在其他地方构建;我知道的唯一其他 Objective-C 编译器是 gcc,它不支持 Apple 对该语言的任何添加(也不支持它们的库)。

而且,与上面人们所说的相反,Objective-C 绝对是我最喜欢的原生编译语言。优雅、小巧(仅对 C 进行了一些更改)、后期绑定、动态、直接。这就是 C++ 应该的样子。

很多人建议购买二手英特尔(记住,必须是英特尔!)Mac Mini 作为最便宜的“入境口岸”。

于 2009-06-25T01:51:38.217 回答
3

您所描述的是一个可行的解决方案,但是您应该考虑使用适用于 iphone 的开放工具链。

那么你就不需要mac了,只需要越狱手机以确保你的应用程序可以运行。

对于那些说无法完成的人来说,这是在 SDK 出来之前为 iphone 制作应用程序的唯一方法 :)

此外,如果您正在寻求使用开放工具链的指南,那么我强烈推荐这本书

于 2009-06-25T02:02:06.387 回答
2

如果您正在考虑使用 javascript 库创建 GUI,为什么不直接编写 Web 应用程序而不是 iPhone 原生应用程序呢?越狱设备似乎有点矫枉过正,以便您可以在其上安装 ruby​​ + sinatra 网络应用程序。你不能把 ruby​​ 网络应用程序放在服务器上,然后在主屏幕上创建一个 Safari 快捷方式吗?如果您没有服务器,您可以随时在家中的 PC 上运行该网站...

越狱操作系统并在其上运行 ruby​​ 应用程序在技术上会很酷,不要误会我的意思——我只是认为它最终会成为一个时间槽。

只是我的2c!

于 2009-06-25T02:15:31.820 回答
1

找别人来做,或者租用你需要的资源。

另一种选择是找到附近的 iPhone 开发人员,他们已经完成了所有设置,让他编写应用程序或一起做,他提供开发环境,您编写解决方案或一起编写代码。

唯一的问题是您将无法更新维护它。

我仍然会考虑购买较旧的 Mac 或 Mac mini - 所有其他选项听起来更复杂。

于 2009-06-25T04:34:03.673 回答
1

如果你固执地不使用 mac,但你想要一个可以在 iPhone / iPod Touch 和 Android 设备上离线工作的应用程序,那么我会使用 HTML 5 创建一个离线应用程序。

您现在可以使用 HTML 5 做很多事情 - 谷歌现在有一个使用 HTML 5 用于 iPhone 的电子邮件客户端,它可以离线工作等。如果您这样做并让用户为您的应用程序添加一个书签到他们的主屏幕 -它几乎一样好。

如果我是你,我会花钱买一个 mac - 或者看看你是否可以借一个 - 或者与某人分时 - 如果没有它,你将无法创建一个非常优质的应用程序。

于 2009-06-25T07:31:50.587 回答
1

取决于你的时间值多少钱,我猜。这似乎是一种非常复杂的方式,可以在手机上获取原本简单的应用程序,以避免花 400 美元购买二手 Mac Mini。

有一种 hackintosh 路线,它可能适用于您现有的硬件,但同样必须按时定价。这是我在 Macbook Pro、MSI Wind 和自制设备上投下大笔钱之前开始的原因。它的合法性值得怀疑(无论如何,正确的做法是为 Leopard 支付 129 美元以上),但您已经在谈论越狱了。:-)

于 2009-06-25T03:46:10.700 回答
1

您可以越狱手机并安装Python。Cydia 中有一些示例应用程序(它被称为 iPhone/Python。在 cydia 中搜索 Python)。

然后您将拥有一个“本机”应用程序,而不是 Web 应用程序,并且您可以使用整个 iPhone UI 库(它的一部分无论如何都可以通过 py-objc 访问)并且您不需要在背景。

您可以通过 SSH 在手机本身上进行开发,也可以使用 iPod Touch 进​​行开发。打包也很容易(如果您需要的话),只需创建您自己的 Cydia 存储库并在其中托管您的包。

查看Python 中的 iPhone 应用程序以获取更多信息。

于 2009-06-25T14:43:56.407 回答
0

来吧,只要在 eBay 上寻找你能找到的最便宜的英特尔 mac mini。即使是屏幕损坏的 Mac 笔记本电脑(您可以连接到外部显示器)也可以工作。你说的可能只有几百美元,然后你可以在她的手机/触摸升级时维护它。

于 2009-06-25T05:22:45.477 回答
0

您可以在网页中放置一些特殊的元标记,以使您的网络应用程序可保存并全屏显示到 iPhone 硬盘上。(所以它可以离线工作)这是一个例子: http: //mrgan.tumblr.com/post/125490362/glyphboard2

还有像 phonegap 这样的框架可以让你从 javascript 访问可可 api,但听起来你不需要那个。

于 2009-06-25T13:18:56.203 回答
0

您的妻子是否参加了任何类型的数据计划?如果是这样,您可以简单地编写一个在一些便宜的网络空间上运行的小型网络应用程序,然后通过 MobileSafari 访问它。

如果你需要一个完整的 iPhone 应用程序,你最好照顾 eBay 上第一个基于英特尔的 mac mini,在我看来应该是昂贵的。此外,您还可以避免越狱的麻烦。

于 2009-06-25T14:48:21.343 回答