[英]Xamarin iOS app not able to upload to app store
我正在尝试将我的 iOS 应用程序上传到 App Store,并在 email 中收到此错误消息。
ITMS-90338: Non-public API usage - The app references non-public selectors in MyApp.iOS: accessibilityBrailleMapRenderRegion, accessibilityBrailleMapRenderer, activePlayer, beginAuthorizationWithRequest:, cancelAuthorizationWithRequest:, checkFocusGroupTreeForEnvironment:, commissioningComplete:, connectionTypesMask, determineAppInstallationAttributionWithCompletionHandler:, errorForCHIPErrorCode:, errorToCHIPErrorCode: , lookupAdConversionDetails:, pairDevice:address:port:discriminator:setupPINCode:error:, playerId, serviceExtensionWillTerminate, session:didReceiveData:fromPlayer:, session:didReceiveMessage:withData:fromPlayer:, session:player:didChangeConnectionState:, session:player:didSaveData: , setAccessibilityBrailleMapRenderRegion:, setAccessibilityBrailleMapRenderer:, setConnectionTypesMask:, setListenPort:, sha 红色控制器,睡眠:,测试:,切换:。 如果您的源代码中的方法名称与上面列出的私有 Apple API 匹配,则更改您的方法名称将有助于防止此应用在以后的提交中被标记。 此外,请注意,上述一个或多个 API 可能位于您的应用程序随附的 static 库中。 如果是这样,它们必须被删除。 有关详细信息,请访问http://developer.apple.com/support/technical/上的技术支持信息
为了解决这个问题,我搜索了解决方案中的所有方法名称。
我发现的唯一匹配是didReceiveMessage
项目中 AppDelegate.cs 中的 didReceiveMessage。 FirebasePushNotificationManager.DidReceiveMessage(userInfo);
完整的 function 在这里。
public override void DidReceiveRemoteNotification(UIApplication application, NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler)
{
// If you are receiving a notification message while your app is in the background,
// this callback will not be fired 'till the user taps on the notification launching the application.
// If you disable method swizzling, you'll need to call this method.
// This lets FCM track message delivery and analytics, which is performed
// automatically with method swizzling enabled.
FirebasePushNotificationManager.DidReceiveMessage(userInfo);
// Do your magic to handle the notification data
System.Console.WriteLine(userInfo);
completionHandler(UIBackgroundFetchResult.NewData);
}
我不知道如何解决这个问题。
一种解决方案是更改Linker Behavior:
设置为Link All
但随后应用程序代码中断。
有人遇到过这个问题吗?
您没有提供可重现的问题,这限制了您获得正确答案的能力,所以这个答案仅据我所知。
据我所知,只有当您使用的某些 package 调用这些方法时,才会发生这种情况。 因此,解决方案是删除 package 并在没有它的情况下重新创建您的项目。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.