为什么苹果允许.NET的iPhone,但不闪? [英] Why does Apple allow .NET on the iPhone but not Flash?

查看:194
本文介绍了为什么苹果允许.NET的iPhone,但不闪?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

据我了解,苹果已经禁止iPhone上的Flash运行时,因为苹果不希望替代运行环境是苹果公司通过自己的工具提供。允许Flash运行时,根据苹果公司,将允许开发者绕过应用程序更新政策和苹果公司已落实到位等控制。而此时,Adobe已经没有选择构建工具静态编译在Flash中创建应用程序。

我进一步理解是,通过MonoTouch的创建.NET应用程序是静态precompiled并创下了iPhone的原生code与.NET公共语言运行时内运行库(CLR),苹果公司肯定不允许。由于.NET code未在iPhone的CPU执行微软的运行,而是本身,苹果没有抱怨。

我的问题是:

  1. 我是正确,为什么苹果可以让.NET开发的应用程序在iPhone上?

  2. 是一个供应商的precompiled,本土code对iPhone(或者我想任何平台)从任何其他区别的?换句话说,是可以被MonoTouch的从本地code区分生产的编制目标C code产生的天然code?是的本土code源完全不透明?

解决方案

正如你刚才说的,苹果是不是允许.NET来在iPhone上运行 - 应用程序是否开发了MonoTouch的或书面的可可或COBOL或什么都无所谓;它只是重要的它是什么编译。它可以用JavaScript编写的,它不会有问题。

如果我写的东西用英文,然后将其翻译为法语,可以在法国的读者告诉原来的版本是用英文写的?也许,也许不是,这一切都取决于翻译,而不是读者的特点。所有的苹果公司需要的是你给的版本的这些的是用法语写的。到这一点并没有区别。

这方面的一个合乎逻辑的延伸是,你可以在理论上,编写一个编译器对Flash文件的创建自包含iPhone二进制文件。如果在Flash开发就是对你很重要。 (<打击>这可能会或可能不会已经完成 这已经完成。

From what I understand, Apple has banned the Flash runtime on the iPhone because Apple doesn't want an alternative runtime environment to that which Apple provides via their own tools. Allowing a Flash runtime, according to Apple, would allow developers to circumvent application update policies and other controls which Apple has put in place. And at this time, Adobe has not chosen to build tools to statically compile apps created in Flash.

My further understanding is that .NET apps created via MonoTouch are statically precompiled and hit the iPhone as native code vs. running inside the .NET common language runtime (CLR), which Apple would surely disallow. Since .NET code is not executing in Microsoft's runtime but rather natively on the iPhone CPU, Apple isn't complaining.

My questions are:

  1. Am I correct about why Apple allows .NET-developed applications on the iPhone?

  2. Is one vendor's precompiled, native code on the iPhone (or any platform I suppose) distinguishable from any other? In other words, is native code that's produced by MonoTouch indistinguishable from native code produced by compiled Objective C code? Is the source of the native code totally opaque?

解决方案

As you just said, Apple is not "allowing" .NET to run on the iPhone - whether an application was developed in MonoTouch or written in Cocoa or COBOL or whatever doesn't matter; it only matters what it is compiled to. It could be written in JavaScript and it wouldn't matter.

If I write something in English and then translate it to French, can a French reader tell the original version was written in English? Maybe, probably not, and it's all up to the characteristics of the translation, not the reader. All Apple requires is the version you give them is written in French. Up to that point it makes no difference.

A logical extension of this is that you could, in theory, write a compiler for Flash files that creates self-contained iPhone binaries. If developing in Flash is what's important to you. (This may or may not have already been done This has already been done.)

这篇关于为什么苹果允许.NET的iPhone,但不闪?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆