Skip to content

iOS 下构建时默认全部拷贝用不到的平台开发包到 XCode 工程 #45

Description

@xoox

问题描述

ShareSDK 中只选中支持 QQ、微信、微博三个平台,但默认所有的平台连接器和SDK都会被拷贝,分别被拷贝到 SDK/ShareSDK/Support/PlatformConnector, SDK/ShareSDK/Support/PlatformSDK 下面。合计大小有 250MB 以上。

解决方案

ShareSDK/Plugins/iOS/MOBTool/iOS/MOBAutoPackage/Editor/MOBPostProcessBuild.cs 89 行改为 bool hasMobFramework = true;
Windows 下导出 XCode 工程后,SDK/ShareSDK/Support/PlatformConnector, SDK/ShareSDK/Support/PlatformSDK 就分别只剩下 QQ, 微信, 微博的 SDK 框架了。总大小约 16MB。
这些平台框架所共同依赖的 MOBFoundation.framework 也被正确拷贝到 SDK/Required 下面了。

尚存问题

上述解决方案,在 MacOS 和 Linux 下不能正确输出 XCode 工程,SDK/Required/MOBFoundation.framework 会缺失。猜测是 MacOS/Linux 下文件系统路径分隔符为 / 与 Windows 路径分隔符 \\ 不同导致的,或者是因为文件系统区分大小写的问题。
这问题比较严重,导致无法在 MacOS 正常开发,且使得 CI 流程失败。
请检查 ShareSDK/Plugins/iOS/MOBTool/iOS/MOBAutoPackage/Editor/MOBPostProcessBuild.cs 文件中的 framework 拷贝逻辑尽快修正该问题。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions