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[] }>

参数

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

SinaShareIOSConfig

属性类型必填说明
appKeystring新浪微博AppKey
appSecretstring新浪微博AppSecret
redirectUristring新浪微博RedirectURI
liblibSharePathstringliblibShare.a 文件路径
libSinaSharePathstringlibSinaShare.a 文件路径
libWeiboSDKPathstringlibWeiboSDK.a 文件路径
weiboSDKBundlePathstringWeiboSDK.bundle 文件路径

返回值

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

工作原理

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

注意事项

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