繁体   English   中英

Xamarin iOS 应用无法上传到应用商店

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM