Iphone GPLv2是否与iOS应用商店和Android Market兼容?

Iphone GPLv2是否与iOS应用商店和Android Market兼容?,iphone,android,app-store,gpl,google-play,Iphone,Android,App Store,Gpl,Google Play,我从未编写过iphone/android应用程序。 这些天我打算帮一个朋友做这件事 该应用程序是一种电子书:一个简单的应用程序,可以通过手机浏览我朋友的版权书籍的内容。 我想认识到,尽可能少花时间。 应用程序逻辑非常简单,大部分工作都与内容和图形有关。但我需要的是,对于android和iphone平台,应用程序的外观和感觉都是一样的 为了实现这些目标(快速编写并在不同操作系统上共享外观),我正在考虑使用GPL2.0许可库。 为了做到这一点,我必须尊重GPL许可证和我朋友对书籍和相关图片的版权。

我从未编写过iphone/android应用程序。 这些天我打算帮一个朋友做这件事

该应用程序是一种电子书:一个简单的应用程序,可以通过手机浏览我朋友的版权书籍的内容。 我想认识到,尽可能少花时间。 应用程序逻辑非常简单,大部分工作都与内容和图形有关。但我需要的是,对于android和iphone平台,应用程序的外观和感觉都是一样的

为了实现这些目标(快速编写并在不同操作系统上共享外观),我正在考虑使用GPL2.0许可库。 为了做到这一点,我必须尊重GPL许可证和我朋友对书籍和相关图片的版权。 所以我想知道两件事:

  • 使用GPL2.0库编写的应用程序是否与Android和iphone market places兼容?我能在这些市场上卖吗

  • 我知道,如果我使用GPL2.0许可软件,我也必须发布我的应用程序源代码(当然,我会这么做)。但是内容呢?他们也必须免费释放吗?我的意思是,我可以把我的GPL2.0应用程序放在那个商店里(在某个地方发布代码,比如我的网站),同时保持书的内容和图片的专有性,并且只能通过市场购买应用程序


  • 提前感谢

    第一件事:伊纳尔

    • 正如其他人已经提到的,GPL和苹果的应用商店许可模式 彼此不兼容。(此处解释: ) LGPL应该可以很好地工作,只需注意为其解释的细节 示例如下:

    • Google Play和GPL运行良好,因为Google并不关心您的 其他分销渠道,你应该没有任何问题 安卓市场

    • 最后,不,你的内容不需要免费发布,只要 源代码,而不是此代码正在使用的资源


    如上所述,苹果的应用商店与GPL不兼容。此外,如前所述,GooglePlay与GPL兼容

    然而,值得一提的是,一些人解释了GPLv3“反tivoization”(Richard Stallman:“tivoization意味着计算机包含GPL覆盖的软件,您无法更改,因为如果检测到修改过的软件,设备将关闭”)规则,禁止在Google Play上发布。然而,许多人认为这没关系,因为在Android上安装应用程序不需要Google Play开发者帐户,因此人们可以修改你的源代码并使用这些修改,而无需你的私钥。就我个人而言,我认为在GPLv3下发布Google Play应用程序而不发布密钥是可以的,因为侧载应该可以防止“tivoization”。然而,IANAL和这一点从未在法庭上进行过测试

    当然,这不适用于苹果应用商店,即使GPL和应用商店没有其他问题,你也必须将你的私钥与源代码一起分发,以便人们可以安装你的修改(因为iOS不允许你侧载应用),这是苹果ToS禁止的


    至于资产,请记住,许多旧的id游戏(最多包括id Tech 3游戏)都在GPL下发布了源代码,但保留资产所有权。许多自由软件游戏都做同样的事情:在自由软件许可证下的游戏引擎和其他东西下的资产。例如,两者的源代码都是根据zlib许可证发布的,而资产是专有的。

    在这个问题中,有一些关于iPhone方面的讨论,共识是2.0兼容,但3.0不兼容。不过,请恕我直言,因为我们不是律师。根据GPLv2的说法,它不符合苹果的服务条款,因此他们禁止苹果应用程序进入商店。我更喜欢LGPL或其他类型的iPhone开发许可证,但我对Android市场一无所知。你可以遵守这些许可证,没有问题。问题是苹果不能。@TJ-VLC没有被禁止,但被撤回。作者不相信苹果的条件是相容的。苹果发布它没有问题。@BoPersson我拥有的苹果设备数量与理解这个问题无关。尽管我会说,自从iPhone在加拿大发布以来,我就有了它。我不认为雷米对GPLv2的解释是错误的。如果许可证不兼容,那不是指出这一事实的人的错。我认为如果iOS用户可以使用VLC,那就太好了。在AppStore与GPL应用程序兼容之前,作为用户和开发人员,我们将不得不接受一些开源软件将无法通过AppStore供iOS使用。据我所知,如果他链接的代码是GPL,他不能将其作为LGPL发布,它从LGPL->GPL开始工作,而不是相反,因为GPL更具限制性。LGPL要求用户可以用新版本替换库。苹果不允许这样做,因此LGPL在应用商店上也是不合法的。