【问题标题】:Problem when publishing an application on the App Store [Non-public API usage]在 App Store 上发布应用程序时出现问题 [非公开 API 使用]
【发布时间】:2019-04-18 22:11:52
【问题描述】:

直到三周前,我的应用程序可以毫无问题地将其上传到 App Store。但是,Apple 拒绝上传该应用程序并附上有关非公开 API 使用的新消息。

该应用程序是在 Visual Studio for Mac 中使用 Xamarin 开发的,并更新了所有库和包。有谁能够帮我?因为我找不到问题所在,也没有看到任何解决方案。会是新的东西吗?

谢谢大家。

Non-public API usage:

The app references non-public selectors in AppAytoSS.iOS: 
  addTemporaryAttribute:value:forCharacterRange:, 
  addTemporaryAttributes:forCharacterRange:, behaviorWithType:, 
  defaultBaselineOffsetForFont:, defaultLineHeightForFont:, finished, 
  greekingThreshold, horizontalCornerRadius, 
  initWithSource:convolutionState:weights:, initWithType:, 
  postSession:didAddPlayer:, postSession:didReceiveData:fromPlayer:, 
  postSession:didReceiveMessage:withData:fromPlayer:, 
  postSession:didRemovePlayer:, 
  postSession:player:didChangeConnectionState:, 
  postSession:player:didSaveData:, preferredMetalContext, removeData:, 
  removeTemporaryAttribute:forCharacterRange:, setGreekingThreshold:, 
  setHorizontalCornerRadius:, setIsPrimary:, setShouldAntiAlias:, setUUID:, 
  setVerticalCornerRadius:, shouldAntiAlias, 
  temporaryAttribute:atCharacterIndex:effectiveRange:, 
  temporaryAttribute:atCharacterIndex:longestEffectiveRange:inRange:, 
  temporaryAttributesAtCharacterIndex:effectiveRange:, 
  temporaryAttributesAtCharacterIndex:longestEffectiveRange:inRange:, 
  textContainerChangedTextView:, toolTip, usesBackgroundSession, 
  verticalCornerRadius

【问题讨论】:

  • Same here...您找到解决此问题的方法了吗?

标签: ios xamarin.forms app-store


【解决方案1】:

我们在 Xamarin iOS 项目中遇到了(完全相同)相同的问题,并且可以通过设置构建/iOS 构建/链接器行为来修复它:仅链接框架 SDK(在不链接之前)- Jack Hua 链接显示为解决方案。

我们无法找出背后的问题。使用了两种不同的 MacBook,一种使用最新版本的 XCode、Visual Studio 和 Xamarin Libs,另一种使用稍旧的版本。后者能够在没有上述错误的情况下创建 IPA,而更新的机器则不能。

但是使用的 NugGet 包在哪里相同,所以我认为这个问题与它们无关。

【讨论】:

  • 这个问题似乎是一个 Xamarin 问题,因为它只发生在他们的最新更新中。
【解决方案2】:

在向 Xamarin 团队填写内部问题后,他们建议执行以下操作

--linksdkonly 添加到 iOS 构建设置页面上的 Additional mtouch 参数
Visual Studio 似乎忽略了 GUI 中的设置

我已经对其进行了测试,现在我的构建被 Apple 接受,没有上述错误

这是在 Xamarin 上提交的问题 https://github.com/xamarin/xamarin-macios/issues/5913

【讨论】:

    【解决方案3】:

    我发现最近有人和你遇到同样问题的线程:build-status-has-changed-to-invalid-binary

    所以,我猜你正在使用的一些第三方 nuget 包已经更新并使用了这些 Apple 不允许的非公共选择器。

    我建议您在三周前获取代码,并且不要更新任何第三方 nuget 包。然后再次提交检查是否有问题。

    您还可以将您的参考资料与该线程中列出的参考资料进行比较,并找到类似的内容。以及任何与播放器相关的 nuget 包(我可以在非公共选择器列表中看到一些播放器选择器)?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-09
      • 1970-01-01
      • 2010-10-05
      • 1970-01-01
      • 2020-11-12
      相关资源
      最近更新 更多