代码之家  ›  专栏  ›  技术社区  ›  frankodwyer

对iPhone和Java应用的可嵌入脚本语言的建议?

  •  5
  • frankodwyer  · 技术社区  · 16 年前

    对此有什么建议吗?或者有人以前做过这件事并且有经验可以分享吗?我想到的是我过去使用过的类似tcl的东西,但不是tcl本身,因为我不太喜欢这种语言。

    • 轻量级的poss(内存使用率)
    • 易于与java和objective-c进行接口和扩展
    • (很高兴有)可读性/可接近的人有限的编程经验

    编辑2:根据jasoncoco在评论中的说法,SDK条款禁止嵌入式脚本语言。检查它确实看起来确实如此,但我阅读它只是为了排除动态安装和扩展。我仍然对这里的答案感兴趣,因为协议似乎并不排除在应用程序包中有预打包的脚本——苹果仍然可以审查这些代码。

    协议似乎还允许使用苹果的“口译员”……这些是什么?Javascript和其他什么?有什么路可以用吗?

    3 回复  |  直到 16 年前
        1
  •  2
  •   Vihung    16 年前

    JavaScript

    根据我对iphonesdk许可的理解,没有什么可以阻止你在你的应用中使用脚本语言——只是你不能安装任何你自己的解释器或运行时。您只能使用Apple在SDK中提供解释器的脚本语言。

    http://www.mozilla.org/rhino/ )在你的Java应用程序中。

    P、 我假设用户将编写自己的脚本在自己的设备/桌面上运行。这些数据将是应用程序数据的一部分,在苹果的许可下应该是可以的

        2
  •  1
  •   Adam Byram    16 年前

    我看到的唯一一个允许非目标c/c/c++应用程序在iPhone上运行的是Unity3d( http://unity3d.com/unity/features/iphone-publishing )-但是,它通过Mono使用C#并执行完整的静态编译( http://tirania.org/blog/archive/2008/Nov-05.html )为了做到这一点,可以使用本机代码。所以,当这个应用在手机上的时候,它已经不再是C了,所以苹果已经允许了(而且已经有几个应用进入了应用商店,所以这似乎是可以接受的)。

    我不认为你能实现你所说的想法,即使你可以为Java/Ruby/Lua/Python/other做同样的事情(所以让你的桌面应用程序预编译并只把本机代码上传到设备上)。据我所知,你不能在你的应用程序包之外执行代码……如果你修改了应用程序包,那么你就取消了苹果公司的代码签名,这使得应用程序首先可以在你的手机上运行。所以,即使你能把可执行代码传到手机上,我也不确定你是否能够运行它,如果它不是与应用程序一起出现的。

        3
  •  1
  •   JoeS    16 年前

    似乎 应该 作为iPhone应用程序是可以接受的。

    有关讨论和示例脚本,请参见此处: http://lua-users.org/lists/lua-l/2008-11/msg00453.html