用于检测 PRIVATE API 使用情况的 App Scanner 工具

发布于 2024-12-15 04:00:02 字数 444 浏览 2 评论 0原文

我正在使用 App Scanner Tool 来检测应用程序中 PRIVATE API 的使用。

按照网站上的指示,我已将 my_application.app 文件拖至该工具扫描所使用的私有 API 参考随附的屏幕截图

完成对私有 API 的扫描后,它会给出一个 巨大的列表!附件是参考的屏幕截图

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

I'm using the App Scanner Tool for detecting PRIVATE API use in the application.

As instructed at website I've dragged my_application.app file & the tool scans for Private API's used
refer the attached screen shot

After completing the scan for Private API's it gives out a huge list! attached is a screen shot for ref.

Here it lists out the Offending Method Signatures in the second column. What exactly does this mean (these also include delegate some of the delegate methods) & how do i go about resolving them? Do i need to go the classes & rename the methods?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

蘸点软妹酱 2024-12-22 04:00:02

我认为 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

I think oTool working better. I checked with

otool -ov APP.NAME. 

Working better.
Like this info

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
涙—继续流 2024-12-22 04:00:02

它看起来像是在检测第三方库(MFGridView、MFGridViewCell、KitabooGridCell...)的私有 API 调用。我不确定他们如何定义“私有”(如果它只是标题中未记录的任何函数)。对于 Apple 而言,这不是问题,他们只是不喜欢您调用他们的私有 API,因为他们无法对结果提供任何保证。

It looks like its detecting private API calls for your third party libraries (MFGridView, MFGridViewCell, KitabooGridCell...). I'm not sure how they define "private" (if it's just any function not documented in the headers). This is not a problem as far as Apple are concerned, they just don't like you calling THEIR private APIs because they cannot provide any guarantees about the results.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文