![]() |
1
75
现在你可以和 RubyMotion |
![]() |
2
49
在iPhone操作系统中,如果您尝试使用mprotect()将内存的可写部分标记为可执行,它将失败。这打破了像RubyCocoa(可能还有MacRuby)这样的桥梁,它们在运行时使用libffi创建Objective-C方法处理程序。我认为这是有意为之,因为事实并非总是如此。 最终,这更多的是一个平台政治问题,而不是技术问题,但存在一种技术解决方法。与其在运行时生成自定义方法处理程序,不如预编译一组根据需要分配的可重新配置的处理程序,本质上使桥接过程完全由数据驱动。据我所知,RubyCocoa或MacRuby还没有做到这一点。 另一个需要考虑的重要问题是,编译后的Ruby和RubyCocoa运行时可以比编译后的Objective-C应用程序大得多。如果这些库在iPhone上可用,这不会是一个问题,但就目前而言,即使你有RubyCocoa工作,你可能也不想将其用于你分发的应用程序。 |
![]() |
3
22
不,你说得对。目前,在可预见的未来,Ruby将不是一种选择,至少对于AppStore应用程序来说是这样。你没有理由不能在越狱的手机上做到这一点,但苹果公司已经与Objective C达成了官方开发协议。 |
![]() |
4
12
作为一名精通多种不同语言的程序员,你最好把Objective-C看作是一个很好的学习机会。 我发现,你用其他语言学习的东西通常会让你成为一个更好的程序员,并让你对你已经知道的其他语言有新的见解。 |
![]() |
5
8
rhomobile 是在iPhone上运行ruby代码的一种选择,但本质上是web应用程序开发。web服务器在iPhone上本地运行,您的ruby代码呈现为标准的客户端web技术(html/css/javascript)。 |
![]() |
6
7
事实上,红宝石可可桥一点也不尴尬;事情进展得非常顺利,包括连接IB的插座等。生成的代码非常漂亮。 至于iPhone开发,如果你想要一个官方的AppStore应用程序,不幸的是,你运气不好。苹果公司规定iPhone是Obj-C/Cocoa Touch,SDK许可证中有一条条款规定,他们 将 拒绝的应用程序具有语言解释器/JIT编译器,因此您无法自己在应用程序中添加ruby解释器。 离题,但有趣的是,这就是为什么iPhone的Flash是Adobe在冒烟。根据苹果的许可证,即使他们想让swf播放器进入AppStore,他们也无法做到。 |
![]() |
7
4
呃,Rhodes(Rhomobile)确实允许你在iPhone和所有其他智能手机上做原生应用程序。是的,我们确实通过WebUIView控件进行渲染。但我们允许所有设备功能和同步的本地数据。 |
![]() |
8
4
你可能想看看 shinycocos 这是一个儿童项目 cocos2d-iphone ,一个用于iPhone的Objective-C游戏编程框架。 我还没有玩过它,但从 git README 我推断它将Ruby 1.9.1捆绑到了你的应用程序中。 |
![]() |
9
4
我在3.1.3破解的iPod Touch 1G上安装了Cydia的ruby包:
似乎奏效了。 至于可可触感,我认为情况完全不同。 |
![]() |
10
2
看一看 http://www.appcelerator.com/products/titanium-mobile/ “使用Web技术构建的原生iPhone和Android应用程序。” 听起来不错,不是吗? ;-) |
![]() |
11
2
不,你不能用Ruby创建iOS原生应用程序。 mac和iOS的原生应用程序只有两种选择:- 语言 和 Swift编程语言 教程:- Apple's official tutorial on Objective C Apple's official tutorial on Swift Programing Language 如果你熟悉Ruby,只想用Ruby创建iOS应用程序。 Ruby Motion ,可以为您提供跨平台选项,但它不是免费的。 跨平台
|
![]() |
12
1
我想它现在不起作用,但我想你最终可以使用MacRuby构建iphone应用程序。苹果公司正在为此投入大量工作 Here's a link to an ADC article describing how to build normal cocoa apps |
![]() |
13
1
你不必使用Objective-C来编写iPhone应用程序。如果您使用QuickConnectiPhone, http://sourceforge.net/projects/quickconnect/ ,您可以完全用JavaScript、CSS和HTML编写它,并且仍然有一个可安装的应用程序,而不是web应用程序。 如果你知道ruby,你可能已经在使用JavaScript了。 要了解如何安装、运行它和其他想法,请访问tetontech.wordpress.com |
![]() |
14
0
有一个开源 Ruby-Cocoa bridge 你可以试着去工作。但我推测Ruby和ObjC之间存在一些阻抗不匹配,这使得使用起来有点尴尬。 |
![]() |
15
0
Ruby Cocoa桥可能无法工作。大多数动态语言的桥都需要生成可执行的thunks(手动或使用libffi)。更有限的网桥(适用于更多静态语言)可能没有这样的问题。 在任何一种情况下,搭建一座桥可能都需要比学习如何编写Cocoa Touch应用程序更熟悉Objective C运行时,这可能会从一开始就失去意义。 |
![]() |
16
0
目前并非如此,苹果改变了他们的政策,看看ShinyCocos,它是一个为Cocos2D iphone游戏框架绑定的ruby。 |
![]() |
17
-1
一种可能的解决方案是创建一个应用程序包装,例如包含ruby vm的rice库(google-it)。我认为你可以创建可以暴露给ruby的c++包装器,从而为使用ruby的iphone开发创造一个环境。不过,这可能需要做很多工作^^ |
![]() |
mikko · SwiftUI如何在不同堆栈中实现同一视图的平滑动画 8 月前 |
![]() |
routern · 如何组合contextMenu和圆角矩形? 8 月前 |
![]() |
DevHome98 · 3D触摸不适用于设备swift 1 年前 |
![]() |
dunoiww · 从全屏返回时如何触发onAppear 1 年前 |
![]() |
Community wiki · iPhone上ivar的继承问题 1 年前 |
![]() |
Community wiki · 查找iOS日历 2 年前 |
![]() |
Community wiki · 有效的IPhone编程技术[关闭] 2 年前 |