【问题标题】:Xcode5 : The app references non-public selectors in Payload/<AppName>.app/<AppName>: setAttribution:Xcode5:应用程序在 Payload/<AppName>.app/<AppName> 中引用了非公共选择器: setAttribution:
【发布时间】:2013-10-10 22:07:42
【问题描述】:

今天,我尝试使用 Xcode 5 将我的应用程序更新提交到商店,它给出了警告 The app references non-public selectors in Payload/&lt;AppName&gt;.app/&lt;AppName&gt;: setAttribution:。之前,它工作得很好,最后一次更新是在 8 月。

我正在使用Facebook SDK 3.2 库。可能是什么问题呢?谢谢!

【问题讨论】:

    标签: ios facebook ios7 xcode5


    【解决方案1】:

    还发现,如果您将代码中的 fbProxy.userInfo.id 替换为 [fbPoxy.userInfo objectForKey:@"id"],则警告将消失。

    使用关键字作为属性名称的淘气 Facebook!

    【讨论】:

    • 我找不到那些行。在哪里看
    • 它可能不在每个 Facebook 项目中,因此可能与您的具体问题无关。
    • 我还必须替换“link”:userInfo.link -> [userInfo objectForKey:@"link"]
    • 可以苹果会拒绝同样的警告,如:应用程序引用 Payload/.app/ 中的非公共选择器:id @jowie
    • @DhavalBhadania 如果它在第三方库(例如 Facebook)上,那么没有。我们收到这个警告已经很久了,将它提交到 App Store 没有问题。我只是想摆脱烦人的警告。
    【解决方案2】:

    尝试下载最新的 SDK 版本,Facebook 说他们已经解决了这个问题 https://developers.facebook.com/bugs/273730516072926

    【讨论】:

      【解决方案3】:

      如果在我们的应用程序中以相同的名称声明了任何方法或变量,Apple 将给出警告。但是,如果这些警告并不重要,那么我们不必担心。毕竟我们也可以提供一个有意义的名字:-)

      我们可以使用 AppScanner 等一些实用应用程序检查此类警告威胁。如果我们必须在提交应用程序之前解决它,它将显示红色警告,否则我们可以忽略所有其他警告。

      【讨论】:

        【解决方案4】:
        To remove warning "the app references non-public selectors in payload: birthday",
        
        While getting FBUser detail from (NSDictionary<FBGraphUser>*)user
        
        instead of using 
        NSString *FBDoB = user.birthday;
        
        Use this:
        NSString *FBDoB = [user valueForKey:@"birthday"];
        
        Its Done, You will get the message "Validation Successful"!!!!
        

        【讨论】:

          猜你喜欢
          • 2014-04-17
          • 2023-04-10
          • 2023-03-20
          • 2013-10-23
          • 2013-11-17
          • 2014-04-08
          • 1970-01-01
          • 2013-09-22
          相关资源
          最近更新 更多