Skip to content

integrateSinaShareIOS ​

集成新浪微博分享到 iOS 项目,自动配置相关文件和依赖。

前置依赖 ​

依赖参数 ​

参数名类型说明
deps.existsSyncFileSystem['existsSync']检查文件是否存在
deps.readFileSyncFileSystem['readFileSync']读取文件内容
deps.writeFileSyncFileSystem['writeFileSync']写入文件内容
deps.copyFileSyncFileSystem['copyFileSync']复制文件
deps.statSyncFileSystem['statSync']获取文件状态
deps.mkdirSyncFileSystem['mkdirSync']创建目录
deps.readdirSyncFileSystem['readdirSync']读取目录内容
deps.cpFileSystem['promises']['cp']异步复制目录
deps.joinPath['join']路径拼接
deps.dirnamePath['dirname']获取目录名
deps.basenamePath['basename']获取文件名
deps.xmlParserXMLParserConstructorXML 解析器构造函数
deps.xmlSerializerXMLSerializerConstructorXML 序列化器构造函数

环境要求 ​

  • Node.js 环境: 需要文件系统、路径等 Node.js API
  • @xmldom/xmldom: XML DOM 解析库
bash
npm install @xmldom/xmldom

函数签名 ​

typescript
function integrateSinaShareIOS(
  projectPath: string,
  projectName: string,
  bundleId: string,
  config: SinaShareIOSConfig,
  deps: IntegrateIOSThirdPartyModuleDeps
): Promise<{ success: boolean; error?: string; logs: string[] }>

参数 ​

参数名类型必填说明
projectPathstring是iOS 项目路径
projectNamestring是项目名称(如 'HBuilder-Hello')
bundleIdstring是应用 Bundle Identifier
configSinaShareIOSConfig是新浪微博分享配置
depsIntegrateIOSThirdPartyModuleDeps是依赖函数对象

SinaShareIOSConfig ​

属性类型必填说明
appKeystring是新浪微博AppKey
appSecretstring是新浪微博AppSecret
redirectUristring是新浪微博RedirectURI
liblibSharePathstring否liblibShare.a 文件路径
libSinaSharePathstring否libSinaShare.a 文件路径
libWeiboSDKPathstring否libWeiboSDK.a 文件路径
weiboSDKBundlePathstring否WeiboSDK.bundle 文件路径

返回值 ​

类型说明
Promise<{ success: boolean; error?: string; logs: string[] }>集成结果,包含成功状态、错误信息和日志

工作原理 ​

  1. 复制库文件 - 将新浪微博分享相关的库文件复制到 iOS 项目中
  2. 修改 Xcode 项目 - 更新 project.pbxproj,添加库文件引用
  3. 配置 Info.plist - 添加新浪微博分享所需的 URL Scheme
  4. 配置权限 - 添加必要的权限配置

注意事项 ​

  • 需要在 macOS 环境下运行
  • 需要从新浪微博开放平台获取 AppKey、AppSecret 和 RedirectURI
  • 库文件路径为可选,如果未提供则跳过相应步骤