littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于Lua和Android的脚本行为差异测试项目

项目简介

本项目旨在复现和解决在Android平台上运行Lua脚本时与Win32平台上的行为差异问题。通过测试场景和脚本验证不同平台上Lua脚本的执行效果,找出导致差异的原因。

项目的主要特性和功能

  1. 场景测试:每1秒在场景中生成3个有物理属性的立方体,立方体生成后短暂上升再下落,生成1.8秒后被移除。
  2. 行为差异分析:Android平台多数情况下生成的立方体少于3个,且随运行时间实体数量渐少;Win32平台行为符合预期,立方体正常生成和移除。
  3. 可能原因:Android平台新创建实体的self.age值可能继承前一实例的值,而非nil,导致行为异常。
  4. 日志分析:Win32平台OnObjectDeleted回调正常工作,Android平台该回调未被调用,导致Lua对象未正确移除。

安装使用步骤

  1. 环境准备:确保安装Android SDK、NDK以及Java JDK,运行RUN_ONCE.bat脚本安装\Data文件夹中的内容。
  2. 项目构建:用Android Studio打开项目,配置项目依赖确保所有必要库和插件正确加载,构建项目并部署到Android设备或模拟器。
  3. 运行测试:启动应用,观察场景中立方体生成和移除行为,对比Android和Win32平台行为差异,分析日志输出找问题根源。
  4. 调试与优化:根据日志分析结果调整Lua脚本或原生代码,确保Android平台正确调用OnObjectDeleted回调,优化脚本逻辑避免对象重复使用或内存泄漏问题。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】