集成Here SDK Lite for iOS提交AppStore遇不支持文件报错问询
你收到的App Store审核报错原因是苹果不允许将WOFF格式的字体文件直接打包到应用的Frameworks目录下:
ITMS-90853:无效字体 - 路径'Subito.app/Frameworks/heresdk.framework/style/fonts/FiraGO-Map.woff'下的字体验证出错,平台不支持该字体。
ITMS-90853:无效字体 - 路径'Subito.app/Frameworks/heresdk.framework/style/fonts/DroidSansFallback.woff'下的字体验证出错,平台不支持该字体。
ITMS-90853:无效字体 - 路径'Subito.app/Frameworks/heresdk.framework/style/fonts/FiraGO-Italic.woff'下的字体验证出错,平台不支持该字体。
移除上述字体文件的安全性说明
如果你确认应用没有用到该SDK的任何UI相关组件(比如地图渲染、自定义标注展示等功能),移除这几个WOFF字体是完全安全的。这几个字体仅用于SDK自带地图UI的文字标注渲染,不涉及定位、路径计算、地理编码等核心非UI功能的逻辑。
可额外移除的文件清单
除了上述字体文件外,你还可以根据自身使用场景移除以下不需要的内容:
- 如果你完全不会用到SDK的地图UI渲染能力,整个
style文件夹都可以直接移除,该文件夹下存储的全部是地图样式配置、图标资源、字体资源,所有非UI功能都不依赖该目录。 - 检查
heresdk.framework下的Resources子目录,如果不需要使用SDK自带的UI组件,该目录下的PNG图标、多语言本地化字符串文件都可以移除,不会影响核心功能运行。
建议操作方式
不要直接修改本地的XCFramework原始文件,建议将移除逻辑写入Xcode的构建后脚本,避免后续更新SDK时操作失效,参考脚本如下:
# 构建完成后移除不需要的WOFF字体 rm -rf "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/heresdk.framework/style/fonts/"*.woff # 确认不需要style目录的话,可直接删除整目录,注释上一行取消下行注释即可 # rm -rf "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/heresdk.framework/style"
如果后续需要使用SDK的地图UI能力,不要删除style目录,将对应WOFF字体转成TTF/OTF格式后再打包即可通过审核。
内容的提问来源于stack exchange,提问作者lechuckcaptain

