用于检测私有 API 使用情况的应用程序扫描工具



我正在使用应用程序扫描工具来检测应用程序中PRIVATE API的使用。

按照网站的指示,我拖拽了my_application。应用程序文件&该工具扫描使用的私有API参考所附屏幕截图

完成扫描私有API后,它给出了一个巨大的列表!附件是ref.

的截图。

在第二列中列出了有问题的方法签名。这到底是什么意思(这些也包括委托的一些委托方法)&我该如何解决它们呢?我需要去上课吗?重命名方法?

我认为oTool工作得更好。我检查了

otool -ov APP.NAME. 

工作更好。像这样的信息

0059b058 0x6164a8
              name 0x57ac94
               cls 0x0
   instanceMethods 0x6163c0
           entsize 12
             count 17
              name 0x52b277 getSysInfoByName:
             types 0x582a3b @12@0:4*8
               imp 0x3f92b5
              name 0x52b2ba platform
             types 0x57bc6d @8@0:4
               imp 0x3f9351
              name 0x52b2eb hwmodel
             types 0x57bc6d @8@0:4
               imp 0x3f9389
              name 0x52b289 getSysInfo:
             types 0x582a45 I12@0:4I8
               imp 0x3f93c1
              name 0x52b2f3 cpuFrequency
             types 0x57bda8 I8@0:4
               imp 0x3f9451
              name 0x52b300 busFrequency
             types 0x57bda8 I8@0:4
               imp 0x3f9485
              name 0x52b30d cpuCount
             types 0x57bda8 I8@0:4
               imp 0x3f94b9
              name 0x52b316 totalMemory
             types 0x57bda8 I8@0:4
               imp 0x3f94ed
              name 0x52b322 userMemory
             types 0x57bda8 I8@0:4
               imp 0x3f9521
              name 0x52b32d maxSocketBufferSize
             types 0x57bda8 I8@0:4
               imp 0x3f9555
              name 0x52b341 totalDiskSpace
             types 0x57bc6d @8@0:4
               imp 0x3f9589
              name 0x52b350 freeDiskSpace
             types 0x57bc6d @8@0:4
               imp 0x3f9639
              name 0x52b2c3 platformType
             types 0x57bda8 I8@0:4
               imp 0x3f96e9
              name 0x52b0c4 platformString
             types 0x57bc6d @8@0:4
               imp 0x3f9e99
              name 0x52b35e hasRetinaDisplay
             types 0x57bcf4 c8@0:4
               imp 0x3fa0ed
              name 0x52b36f deviceFamily
             types 0x57bccf i8@0:4
               imp 0x3fa185
              name 0x52b09a macaddress
             types 0x57bc6d @8@0:4
               imp 0x3fa2f9
      classMethods 0x616494

它看起来像它检测私有API调用您的第三方库(MFGridView, MFGridViewCell, KitabooGridCell…)。我不确定他们是如何定义"私有"的(如果它只是在头文件中没有记录的任何函数)。这对苹果来说不是问题,他们只是不喜欢你调用他们的私有api,因为他们不能保证结果。

相关内容

最新更新