l***@yousails.com
l***@yousails.com
  • 发布:2021-10-08 09:42
  • 更新:2021-10-11 16:33
  • 阅读:1159

iOS 发布审核的时候遇到私有化 API 使用问题,想确认一下这个是 HBuilder 本身打包代码的引入吗?

分类:HBuilder

ITMS-90338: Non-public API usage - The app references non-public symbols in HBuilder: _getentropy. If method names in your source code match the private Apple APIs listed above, altering your method names will help prevent this app from being flagged in future submissions. In addition, note that one or more of the above APIs may be located in a static library that was included with your app. If so, they must be removed. For further information, visit the Technical Support Information at http://developer.apple.com/support/technical/

大家有解决方案不?

使用了两个原生插件:

2021-10-08 09:42 负责人:无 分享
已邀请:
天生DR

天生DR - Q:342134068 V:Dronaldo17

你先联系一下 插件作者 让他自查一下 代码中是否含有 私有方法 应该是插件引起的

  • l***@yousails.com (作者)

    我们先确认一下 插件代码的情况,如果 HBuilder 这边方便检索一下的 _getentropy 也可以帮忙确认一下

    2021-10-08 15:32

  • 天生DR

    回复 l***@yousails.com: 我刚搜了 源码里没有的 而且目前也没有 其他开发者反馈这个问题

    2021-10-08 15:41

l***@yousails.com

l***@yousails.com (作者)

目前能确定的是 Wallet 模块使用到的一个加密系统随机数调用方式对于苹果平台有安全性问题,所以被禁用了,苹果开发的建议是换个方法或者换个库的调用方式 [捂脸]

Issue with getentropy() and App Store: https://developer.apple.com/forums/thread/675396
Random number generation: https://support.apple.com/guide/security/random-number-generation-seca0c73a75b/web

crypto/rand: getentropy is not available on iOS:https://github.com/golang/go/issues/47814

https://go-review.googlesource.com/c/go/+/343989/ 需要 go 这边看一下这个解决方案

我这边使用新版本 go 1.17(2021年9月2号发布) 编译了插件(https://github.com/golang/mobile),但是这个问题看情况同样还是存在

@DCloud_iOS_DJX 不知道你们这块编译是否回涉及这部分的问题

  • 天生DR

    我们这里没有涉及这部分的问题 整个基础工程也没有gomobile 编译的模块

    2021-10-09 11:27

l***@yousails.com

l***@yousails.com (作者)

问题已解决,如果其他小伙伴使用到的原生插件是使用 gomobile 编译而成,请使用最新的 go 版本 1.17.2 以上版本来编译生成解决此苹果私有 API 使用的审核问题。

该问题目前已经被锁定, 无法添加新回复