在iPhone应用程序上的ipa扩展

时间:2012-01-24 19:34:30

标签: iphone

我是iPhone / iPad开发的新手。我想知道为什么苹果使用ipa扩展而不是zip(实际上是文件)用于移动应用程序。 这是文件app.ipa

的输出
  

app.ipa:Zip档案数据,至少提取v1.0

他们为什么不只使用拉链?

3 个答案:

答案 0 :(得分:2)

.ipa表示它不仅仅是一个旨在提取的存档,而是一个iOS应用程序,具有特定的数据和布局,恰好是一个zip存档。

编辑:请注意,定义自定义扩展以指示文件满足其他规范(和/或具有非常规文件格式的特定“目的”)并不是特别常见。例如,.c.java等都是文本文件,但它们不是只是文本文件,而是具有非常特定格式的文本文件(C和Java编程语言,分别地)。

.ipa类似,Java ARchives(.jar)也是zip文件,但它们实现了更具体的目的,并且包含比“任何”随机.zip更具体的数据。碰巧,Android .apk文件甚至是更具体的.jar文件,因此也是.zip个文件......但随着目的和格式变得更加具体,将扩展名更改为表明这一点。

(作为额外的好处,打开这些更具体的扩展可能会导致操作环境启动更具体的程序,例如IDE而不是简单的文本编辑器,或iTunes而不是unarchiver。我没有看到这个但是,作为更具体扩展的主要目的。)

答案 1 :(得分:1)

他们使用它来避免人们解压缩,就像那样简单。 IPA文件有点难以打开,因此“更安全”。此外,Apple喜欢以他们的方式做事。

我没有看到.ipa真的使用.ipa的任何缺点。

答案 2 :(得分:1)

这是因为iTunes处理 .ipa / .ipsw文件而不是zip文件 与* .app / .bundle相同,它们实际上是文件夹,使用不同的扩展名可以更改默认的打开反应。