【问题标题】:This app references non-public selectors ... base64EncodedString dataFromBase64String此应用程序引用非公共选择器... base64EncodedString dataFromBase64String
【发布时间】:2014-03-20 06:05:28
【问题描述】:

我在向 Apple 提交 iOS 二进制文件时收到此警告: "此应用引用 Payload/x.app/x 中的非公共选择器:base64EncodedString, dataFromBase64String"

在 xCode 中构建期间我没有收到警告。

我正在使用 xCode 5.0.2 和 Phonegap 3.3。

我不知道 Apple 是否会因为这个原因拒绝二进制文件,但我不想等待找出答案。另外,我喜欢以“正确”的方式解决所有警告错误。

我发现其他人也有类似的问题(不同的第三方库),他们的解决方案似乎是获取更新的第三方库。我已经在使用最新的 phonegap 并且已经有足够的时间来解决这个问题,所以我怀疑这个问题是我正在做的事情所独有的。

我已按项目 greped,此处引用了这两个符号:

Cordova/NSData+Base64.h:+ (NSData*)dataFromBase64String:(NSString*)aString;
Cordova/NSData+Base64.h:- (NSString*)base64EncodedString;

我的两个问题是: 1) 苹果会因为这个警告而拒绝这个二进制文件吗? 2) 如何以“正确”的方式解决此警告消息?

【问题讨论】:

    标签: ios cordova


    【解决方案1】:

    我正在回答我自己的问题....

    经过进一步调查,我们确定问题在于我们只 在项目中包含 libCordova.a。这在测试时工作正常 在模拟器和设备上,但在提交时给出了上述警告 到应用商店。

    避免提交警告的解决方案是复制所有 libCordova.a 的源代码到 /platform/ios。那个源代码 源自“cordova create”命令。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-01
      • 1970-01-01
      • 2014-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多