Proper way to exit game
Proper way to exit game
When I press the home button on my phone, the background music of my game keeps on playing. What is the proper way to exit the game whenever the user leaves it?
Re: Proper way to exit game
I don't really dabble in the mobile sector, but I think you're having focus issues.... Think of apps like pandora and youtube. When you return to the home screen pandora will keep playing, however youtube stops when it loses focus. I don't know the specifics, but that's how it seems to me.
Re: Proper way to exit game
Yeah, my current code looks like this:
where exit is the code for stopping all sounds and exiting the game. However, that only seems to work on some phones, like my Xperia Z1, but not my friend's Huawei.
Code: Select all
function love.focus(focus)
if not focus then
exit()
end
end
-
- Prole
- Posts: 7
- Joined: Fri Jan 08, 2016 3:51 am
Re: Proper way to exit game
Haven't tested stuff on mobile yet; however, I would use love.event.quit() to cause the program to abort and use the love.quit callback for cleaning up resources. Try to use love.event.quit() in the love.focus() callback and see what it does on your friend's Huawei.
- slime
- Solid Snayke
- Posts: 3166
- Joined: Mon Aug 23, 2010 6:45 am
- Location: Nova Scotia, Canada
- Contact:
Re: Proper way to exit game
I don't know about Android, but on iOS Apple will probably reject your app from the app store if you programmatically quit it (as that looks like a crash to the user, and apps are never supposed to quit themselves in the iOS app lifecycle).
Re: Proper way to exit game
Interesting.slime wrote:I don't know about Android, but on iOS Apple will probably reject your app from the app store if you programmatically quit it (as that looks like a crash to the user, and apps are never supposed to quit themselves in the iOS app lifecycle).
What do you do then on iOS? Just remove an option to exit the game?
Re: Proper way to exit game
That is part of my exit() function. It looked a little like this:GiveMeAnthony wrote:Haven't tested stuff on mobile yet; however, I would use love.event.quit() to cause the program to abort and use the love.quit callback for cleaning up resources. Try to use love.event.quit() in the love.focus() callback and see what it does on your friend's Huawei.
Code: Select all
function exit()
sfx.stop("music")
-- Some code for stopping all sound effects
love.event.quit()
end
Re: Proper way to exit game
I think love.audio.stop stops all playing sources and is automatically called, so you shouldn't need to do that.
lf = love.filesystem
ls = love.sound
la = love.audio
lp = love.physics
lt = love.thread
li = love.image
lg = love.graphics
ls = love.sound
la = love.audio
lp = love.physics
lt = love.thread
li = love.image
lg = love.graphics
-
- Prole
- Posts: 7
- Joined: Fri Jan 08, 2016 3:51 am
Re: Proper way to exit game
Alright, so maybe we ought to try something like this...Kasperelo wrote:That is part of my exit() function. It looked a little like this:GiveMeAnthony wrote:Haven't tested stuff on mobile yet; however, I would use love.event.quit() to cause the program to abort and use the love.quit callback for cleaning up resources. Try to use love.event.quit() in the love.focus() callback and see what it does on your friend's Huawei.Code: Select all
function exit() sfx.stop("music") -- Some code for stopping all sound effects love.event.quit() end
Code: Select all
local exiting = false -- we can set this to true from a user dialog
local focus_switch = false -- we'll set this when the app goes out of focus
function love.focus(in_focus)
if not in_focus then
focus_switch = true
love.event.quit()
end
end
function love.quit()
if exiting then
-- code to execute for exiting the program
-- from a user dialog. Perhaps something to
-- to ask if they'd really like to exit or not.
return false
elseif focus_switch then
love.audio.stop()
-- optionally, make multiple calls to love.audio.stop(source)
-- where 'source' is a specific audio source. You can do this
-- to only stop certain audio if you desire.
--------------------------------------------------------------
-- If you must, call sfx.stop("music") and other code instead
-- for stopping all other audio effects.
return false
end
return true
end
Re: Proper way to exit game
I don't really understand your example, sorry. What is the point of exiting and focus_switch exactly? On my friends Huawei, the problem seems to be that the game is still in focus after he has pressed the home button.GiveMeAnthony wrote:Alright, so maybe we ought to try something like this...Kasperelo wrote:That is part of my exit() function. It looked a little like this:GiveMeAnthony wrote:Haven't tested stuff on mobile yet; however, I would use love.event.quit() to cause the program to abort and use the love.quit callback for cleaning up resources. Try to use love.event.quit() in the love.focus() callback and see what it does on your friend's Huawei.Code: Select all
function exit() sfx.stop("music") -- Some code for stopping all sound effects love.event.quit() end
Code: Select all
local exiting = false -- we can set this to true from a user dialog local focus_switch = false -- we'll set this when the app goes out of focus function love.focus(in_focus) if not in_focus then focus_switch = true love.event.quit() end end function love.quit() if exiting then -- code to execute for exiting the program -- from a user dialog. Perhaps something to -- to ask if they'd really like to exit or not. return false elseif focus_switch then love.audio.stop() -- optionally, make multiple calls to love.audio.stop(source) -- where 'source' is a specific audio source. You can do this -- to only stop certain audio if you desire. -------------------------------------------------------------- -- If you must, call sfx.stop("music") and other code instead -- for stopping all other audio effects. return false end return true end
Who is online
Users browsing this forum: No registered users and 9 guests