【问题标题】:handlebars.net on iOS in xamarin not workingxamarin 中 iOS 上的 handlebars.net 无法正常工作
【发布时间】:2016-11-04 23:47:02
【问题描述】:

handlebars.net 是否适用于任何人的 iOS?我无法让它运行。在 Android 上一切正常。

在调试时,Expression 的 .compile() 看起来没问题,Expression 字符串的调试与 android 上的相同,但是当调用 lambda 时没有任何反应,并且我的 json 没有应用。

我正在尝试编写自己的简单表达式并且它们正在工作,但它们可能会以静态方式提前解决......

非常感谢。

【问题讨论】:

  • Handlebars 模板动态编译为 IL,这是允许的,但在 iOS 上不允许执行该 IL。
  • 奇怪的是,我试图用 if a 和 Rand() 编写自己的“动态”表达式,以便每次生成不同的东西并且它正在工作。所以我希望我的表达提前是 AOT 或者它也是由其他原因引起的。 Handlebars 不也使用动态对象吗?无论如何,如果您将评论改写为答案,我会接受。
  • 请注意,iOS 模拟器不会强制执行代码执行限制,运行发布版本的物理设备会执行此限制。现在完全允许反射,但禁止内存 JIT/执行。 Apple Store App 之类的 iOS 上的 Frank Krueger 的 Continuous(C#/F# 编辑器|编译器|执行)使用 IL 解释器和反射的组合来“执行”Rosyln 生成的代码。 (Frank custom 编写了 IL 解释器,因此它“看起来”像是在执行 IL(JIT'ing)编译成内存流的内容,但实际上是在进行 IL 解释)。 Android 没有这样的限制。

标签: c# xamarin xamarin.ios handlebars.net


【解决方案1】:

只要 iOS 不支持代码生成,就无法支持 Handlebars.Net。

https://developer.xamarin.com/guides/ios/advanced_topics/limitations/#No_Dynamic_Code_Generation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-15
    • 1970-01-01
    • 1970-01-01
    • 2017-04-25
    相关资源
    最近更新 更多