我在Android手机上测试了我的应用程序,它在播放过程中停止了,它在即将改变场景时停止。(它可以在模拟器上运行。)我使用以下说明调试它:http://coronalabs.com/blog/2013/07/09/tutorial-basic-debugging/
这就是它给我的cmd。
beginning of /dev/log/main
.....
I/Corona <24200>:cannonCharge
I/Corona <24200>:shot
I/Corona <24200>:event listener
I/Corona <24200>:Ball is colliding
I/Corona <24200>:Before changing scene
然后它就停在这里,然后在我的手机屏幕上弹出一个说气球游戏已停止。我觉得这部分代码出错了。
if (event.other == balloons[1]) then
scene.updateScore()
print('Ball is colliding')
balloon1:removeSelf()
balloon1 = nil
balloonText1:removeSelf()
balloonText1 = nil
audio.play(pop)
print('Before changing scene')
storyboard.gotoScene("correct1", "fade", 1000)
end
...
我认为它可能是文件名,因为我知道android是区分大小写的所以我将所有文件名改为小写。图像显示所以我不认为它们有任何问题,但也检查以防万一。到目前为止,我不知道我还能尝试什么,有什么建议吗? 我尝试删除一些代码,发现一切正常,直到storyboard.gotoScene(“correct1”,“fade”,1000)。我看不出任何问题,甚至试图将它链接到不同的场景“结果”,这也是相同的结果。
答案 0 :(得分:1)
当遇到这种情况时,一种运行良好的技术是在代码中添加许多打印语句,以便您可以找到执行的最后一行。在这里你有一个在场景转到之前的打印声明,但除非你有一个之后,没有办法知道它是否挂起。
完成后,您开始删除代码(注释掉)直到问题消失。问题不一定是挂起的线;它可以很容易地在先前的行中,甚至在初始化时完成的事情。所以你注释掉了大块的代码,但是留下了结构(就像所有的场景里面一样),只是注释掉音频,按钮(除了触发goto所需的那些)等等。当代码删除使问题消失时,你至少要看一些东西(错误的配置值等)。
答案 1 :(得分:0)
上面的代码很好,我找不到任何错误,所以上传代码的其他部分,以便我可以检查它。一般建议是确保您使用正确的文件名和场景名称。