使用corona SDK,我希望每次用户点击homebutton时都能重新启动我的应用程序。 如果他/她接到电话,拉下下拉菜单,依此类推,我希望该应用程序继续处于其当前状态。
有什么建议吗?
谢谢, / S
答案 0 :(得分:4)
我是怎么解决的!
suspendTime = 0
resumeTime = 0
function onSystemEvent( event )
if event.type == "applicationSuspend" then
suspendTime = os.time()
print(suspendTime)
elseif event.type == "applicationResume" then
resumeTime = os.time()
print(resumeTime)
print("deltaTime: "..resumeTime - suspendTime )
if(resumeTime - suspendTime > 30) then
local sceneName = storyboard.getCurrentSceneName()
if(sceneName ~= "levels.splash") then
print(sceneName)
print(resumeTime)
storyboard.gotoScene("levels.splash")
end
end
end
end
Runtime:addEventListener("system", onSystemEvent)
答案 1 :(得分:1)
function onKeyEvent( event )
local keyname = event.keyName;
if (event.phase == "up" and (event.keyName=="back" or event.keyName=="menu" or event.keyName == "home" )) then
if keyname == "menu" then
os.exit()
end
end
return false
end
Runtime:addEventListener( "key", onKeyEvent )
这个适用于android。 我从http://docs.coronalabs.com/api/event/key/keyName.html检查了,所以在iPhone中无法做到这一点。
但您可以尝试这样做:获取应用程序暂停的时间。并将其保存到documentes目录。然后,当应用程序恢复时,检查两个会话之间的时间。如果超过半小时,请重新启动所有内容。