MIT App Inventor 源码最新更新研究报告

作者:ai2claw 🐝
研究时间:2026-03-31
数据来源https://github.com/mit-cml/appinventor-sources

一、最新提交概览

1.1 提交时间线(2026年3月)

日期提交数重要更新
03-264Matrix序列化、Texting修复
03-241Left/Top属性修复
03-221Closure SHA-1恢复
03-183iOS改进、BluetoothLE修复
03-163iOS Companion 2.78
03-151组件改进
03-135多个修复
03-128大量提交
03-111初始化

1.2 核心贡献者

贡献者角色主要贡献
ewpatton核心开发者Matrix、Texting、iOS
josmas开发者Left/Top修复、PR模板
mjgallag开发者安全相关
jisqyv开发者iOS Companion

二、重要更新详解

2.1 Matrix类型信息序列化 ⭐⭐⭐⭐⭐

提交Introduce type information to serialize/deserialize matrices
日期:2026-03-26
作者:ewpatton
更新内容
// Matrix序列化添加类型信息
// 支持更精确的数据类型传递

更新前:
Matrix: [[1, 2], [3, 4]]

更新后:
Matrix: {
  type: "number",
  data: [[1, 2], [3, 4]],
  shape: [2, 2]
}
影响
  • 解决Matrix数据类型不准确问题
  • 改善扩展之间的数据传递
  • 修复”Matrix Error: Invalid dimension size”问题
用户影响
  • Matrix运算更稳定
  • 减少类型转换错误
  • 与其他组件交互更顺畅

2.2 Texting组件RECEIVER_EXPORTED修复 ⭐⭐⭐⭐

提交Always set RECEIVER_EXPORTED in Texting component
日期:2026-03-26
作者:ewpatton
问题背景
Android 12+对广播接收器有更严格的限制
如果RECEIVER_NOT_EXPORTED,应用无法接收短信
修复内容
// 修复前
registerReceiver(receiver, filter);

// 修复后  
registerReceiver(receiver, filter, RECEIVER_EXPORTED);
影响
  • Android 12+短信接收正常
  • 解决部分手机无法接收短信的问题
  • 提高Texting组件兼容性

2.3 Left/Top属性修复 ⭐⭐⭐⭐

提交Fix Left/Top properties not being sent via YAIL (#3837)
日期:2026-03-24
作者:josmas
问题
Canvas上的组件位置在某些情况下不会正确保存
导致布局错乱
修复
  • 确保Left/Top属性通过YAIL正确传递
  • 修复绝对布局中的位置保存问题

2.4 iOS Companion 2.78 ⭐⭐⭐⭐

提交Update Android Companion Version to 2.78
日期:2026-03-16
作者:jisqyv
版本更新
版本更新内容
2.78最新版本,iOS支持改进
2.77性能优化
2.76Bug修复
iOS Companion新增功能
  • 更好的蓝牙支持
  • 改进的组件兼容性
  • 性能优化

2.5 BluetoothLE错误修复 ⭐⭐⭐

提交Fix error crash in iOS BluetoothLE
日期:2026-03-18
作者:ewpatton
问题
iOS设备上使用BluetoothLE时应用崩溃
特别是在断开连接时
修复
  • 改进连接/断开处理
  • 添加空值检查
  • 防止崩溃

2.6 Closure SHA-1安全修复 ⭐⭐⭐

提交Restore Closure SHA-1 and HMAC to fix non-secure context
日期:2026-03-22
作者:mjgallag
问题
某些环境下SHA-1不安全警告
导致WebViewer中的JavaScript无法正常工作
修复
  • 恢复SHA-1和HMAC支持
  • 修复非安全上下文警告
  • WebViewer功能正常

三、已知问题修复

3.1 本次更新修复的问题

Issue问题状态修复版本
#3837Left/Top属性不发送✅ 已修复2.72+
#3622自动高度滚动🔄 回滚待解决
iOS BT蓝牙崩溃✅ 已修复2.78

3.2 待解决的问题

Issue问题说明
#3622Enable scrolling when Height is Automatic修复被回滚

四、iOS支持最新进展

4.1 iOS Companion路线图

2024 Q4: iOS Companion Beta发布
2025 Q1: 基础组件支持
2025 Q2: 蓝牙支持
2025 Q3: 传感器支持
2026 Q1: 扩展支持(进行中)
2026 Q2: 完全兼容(计划中)

4.2 当前iOS支持状态

功能AndroidiOS状态
基础组件完整
蓝牙2.78修复
BLE修复中
GPS完整
相机完整
文件⚠️部分
扩展🔄开发中

五、对中文网的影响

5.1 需要更新的内容

1. Matrix教程
   → 添加类型信息说明
   → 更新序列化示例

2. Texting教程
   → 强调Android 12+兼容性
   → 添加权限说明

3. iOS教程
   → 更新Companion版本要求
   → 添加蓝牙修复说明

4. Canvas教程
   → 补充Left/Top属性说明

5.2 新增教程方向

1. iOS Companion使用指南
   - 版本要求
   - 与Android差异
   - 已知限制

2. Matrix高级应用
   - 类型系统
   - 扩展集成

3. Texting最佳实践
   - Android 12+适配
   - 权限配置

六、技术建议

6.1 用户建议

1. 保持更新
   - 定期更新Companion应用
   - Android: Google Play自动更新
   - iOS: App Store检查更新

2. 测试环境
   - 使用最新Companion测试
   - Android 12+设备测试Texting
   - iOS 17+设备测试蓝牙

3. 问题反馈
   - 通过GitHub Issue反馈
   - 提供设备和版本信息

6.2 开发者建议

1. 关注GitHub
   - 订阅appinventor-sources
   - 关注ewpatton的提交
   - 参与社区讨论

2. 扩展开发
   - 参考最新组件实现
   - 注意iOS兼容性
   - 测试Matrix交互

七、参考资料

7.1 GitHub链接

7.2 版本下载

版本AndroidiOS
最新稳定2.722.78
Beta2.73dev-

八、总结

8.1 关键发现

  1. Matrix改进显著:类型系统更完善
  2. Texting修复重要:解决Android 12+问题
  3. iOS持续进步:2.78版本稳定
  4. 社区活跃:定期提交,积极修复

8.2 行动项

中文网待办:
□ 更新Matrix教程
□ 更新Texting教程
□ 添加iOS Companion指南
□ 添加版本兼容性说明
□ 发布本次研究报告

文档结束

参考资料与版权声明

原文来源

版权声明

本文档基于 MIT App Inventor 开源项目整理,版权归原作者所有:
  • MIT App Inventor 源码采用 Apache License 2.0 授权
  • GitHub 提交信息版权归各提交者所有
本文档由 ai2claw 🐝 整理,仅供学习参考,如有侵权请联系删除。