使用 libarchive 拒绝 Apple 私有 API [关闭]

Posted

技术标签:

【中文标题】使用 libarchive 拒绝 Apple 私有 API [关闭]【英文标题】:Apple private API rejection with libarchive [closed] 【发布时间】:2010-08-17 23:08:23 【问题描述】:

我正在使用libarchive,并且在我的 iphone 项目中包含了源代码和标头。苹果拒绝了二进制文件,说我错误地将私有 API 用于一堆功能。这样的功能之一是:

archive_read_data

我怎么错了?我想保留我的代码,因为它运行良好,但我也想要快速接受。我该如何解决这个困境?

PS 他们没有回复我亲切的电子邮件。

【问题讨论】:

Apple 是否有可能拥有同名的 API,并且他们的幼稚过滤器认为您正在使用这些名称而不是您自己的 API 调用他们的私有 API? 我投票结束这个问题,因为we're not customer support for your favourite company. 【参考方案1】:

由于 libarchive 是免费软件,最简单的解决方案可能就是将该函数的名称更改为不会触发误报的名称。

【讨论】:

关于此解决方案是否有效的任何消息? Apple 会过滤 names 而不是实际链接的函数,这似乎很可怕。 @vicvicvic:老实说,我对 Apple 工具的当前状态一无所知。该过程的问题总是出现和消失(例如,最近我听说很多 Mac 应用程序因违反沙盒而被拒绝,实际上它们并没有提交)。我说过,Apple 的筛选过程从一开始就很愚蠢,我仍然认为情况确实如此(尽管有所改善),但这确实是他们的方式或高速公路。【参考方案2】:

libarchive 作为 ios 上的动态库存在。您是否尝试删除静态实现并改为与动态库链接?

【讨论】:

以上是关于使用 libarchive 拒绝 Apple 私有 API [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

在没有私有 API 的情况下以纵向 MPMoviePlayerController 播放视频 - 我会被 Apple 拒绝吗?

搜索具有私有 API 类名的子视图会被拒绝吗?

即使在 python 中安装 libarchive 后,libarchive.public 错误

排查私有API

在 Qt 中使用外部库(libarchive) - 没有 .lib 文件

Libarchive 解压到指定文件夹?