You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Flutter开发的iOS应用添加iMessage贴纸包

实现Flutter iOS应用与iMessage贴纸包一同安装的方案

要让用户下载Flutter开发的iOS应用时自动安装iMessage贴纸包,本质是把贴纸包作为iOS App Extension嵌入主应用,具体步骤如下:

1. 在Flutter的iOS工程中添加Message Extension

  • 打开Flutter项目的ios/Runner.xcworkspace文件
  • 在Xcode菜单栏选择File > New > Target,从列表里选iOS > Message Extension,点击Next
  • 填写扩展名称(比如StickersPack),语言保持默认(Swift/Objective-C均可),点击Finish
  • 弹出"Activate scheme"提示时,选择激活该扩展的运行方案

2. 替换并配置贴纸资源

  • 找到新建的StickersPack目录,打开其中的Sticker Pack.stickersassets文件夹
  • 删除默认贴纸,将你自己的贴纸资源(支持PNG、APNG、GIF格式,需准备@2x/@3x适配不同分辨率)放入该文件夹
  • 编辑Contents.json,为每个贴纸配置属性:
    {
      "filename": "your_sticker.png",
      "idiom": "universal",
      "platform": "ios",
      "size": "100x100",
      "scale": "2x"
    }
    
    动态/动画贴纸需额外添加"stickerType": "animated"或"stickerType": "lively"字段

3. 关联主应用与贴纸扩展

  • 在Xcode中选中主工程Runner,切换到General标签页
  • 找到Frameworks, Libraries, and Embedded Content区域,点击+按钮,选择刚才创建的StickersPack扩展
  • 确保扩展的Embed选项设置为Embed & Sign

4. 验证扩展的Info.plist配置

  • 打开StickersPack目录下的Info.plist,确认以下关键配置:
    • NSExtension > NSExtensionPointIdentifier值为com.apple.message-payload-provider
    • NSExtension > NSExtensionAttributes > MSStickerBrowserViewControllerConfiguration中,MSStickerBrowserViewStyle可根据需求设为sizeSmall或sizeRegular

5. 测试与打包

  • 选择模拟器或真机运行主应用,安装完成后打开iMessage,在对话界面的App抽屉中就能找到你的贴纸包
  • 打包Ad Hoc或App Store版本时,Archive流程会自动包含该扩展;提交到App Store后,用户下载主应用时会自动安装贴纸包

注意事项

  • 贴纸资源必须符合Apple规范:静态贴纸尺寸建议100x100pt,动态贴纸分辨率不超过300x300pt,文件大小不超过500KB
  • 主应用与扩展必须使用同一开发者账号签名,否则无法完成嵌入
  • 提交App Store时,需在应用描述中说明包含iMessage贴纸包,避免审核误解

内容的提问来源于stack exchange,提问作者Ibrahim Memon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:27:11