2017-01-09 39 views
0

我的应用程序被Apple拒绝,因为不知何故,我的应用程序使用私有API。 苹果说我的应用程序使用在拒绝应用程序后解释nm输出

框架:“/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation”:CFHashBytes

我找不到代码任何东西,所以我搜索stackoverflow和fout,我可以使用otool或字符串。

用绳子我发现两个“哈希”调用(无论他们在哪里),并使用纳米,我得到下面的输出:

纳米动感\建筑师| grep的散列

0000000100077490Ť__TFO16Sporty_Architect12ActivityTypeg9hashValueSi 0000000100056240Ť__TFO16Sporty_Architect12RotationModeg9hashValueSi 0000000100064480Ť__TFO16Sporty_Architect13DraggedSliderg9hashValueSi 000000010003e3a0Ť__TFO16Sporty_Architect8FileTypeg9hashValueSi 000000010003d91​​0Ť__TFO16Sporty_Architect9DateRangeg9hashValueSi 0000000100021360Ť__TFO16Sporty_Architect9ModelModeg9hashValueSi ù__TFSig9hashValueSi 00000001000777b0Ť__TTWO16Sporty_Architect12ActivityTypes8HashableS_FS1_g9hashValueSi 00000001000562e0Ť__TTWO16Sporty_Architect12RotationModes8HashableS_FS1_g9hashValueSi 0000000100064500牛逼__TTWO16Sporty_Architect13DraggedSliders8HashableS_FS1_g9hashValueSi 000000010003e9d0牛逼__TTWO16Sporty_Architect8FileTypes8HashableS_FS1_g9hashValueSi 000000010003e080牛逼__TTWO16Sporty_Architect9DateRanges8HashableS_FS1_g9hashValueSi 0000000100021500牛逼__TTWO16Sporty_Architect9ModelModes8HashableS_FS1_g9hashValueSi

我觉得在U __TFSig9hashValueSi是它,不是吗?但是,现在的问题是......我怎样才能进一步缩小这个问题呢?

它超出了我,为什么苹果提供了一个验证按钮,显示一切正常,一旦应用程序在审查中,它会被拒绝的东西,这可以清楚地在编译时检测到(或至少当它是提交)。

回答

2

如果您不使用任何外部API或框架,CFHashBytes仅存在于Swift框架中。

我有两个应用程序的这个问题。我已将这个消息,调解中心,现在都已经批准:

“你好,

我认为有一个错误,包含非公开API是libswiftFoundation.dylib唯一的文件。框架在Swift Apps中使用,Xcode会自动使用它,请再次检查。

非常感谢。

我希望这可以帮助你。

+0

你好,谢谢你的回答。我看到我有一个方法使用与CFHasBytes相同的参数(和一个附加参数)。 Mrthod被称为getBytes(bytes:length:index :)。我可以看到为什么自动化测试会失败。我重命名了该方法,并将再次提交,如果再次失败,我会添加您的评论。谢谢。 –