Major BUG!

Subforum for discussion and help with ScummVM's iPhone port

Moderator: ScummVM Team

Post Reply
fredvs79
Posts: 2
Joined: Wed Nov 18, 2009 12:54 am

Major BUG!

Post by fredvs79 »

One of the most annoying things is the way scummVM fails every time a call comes in. I'm using an iphone 3Gs and happy to play games in ScummVM, but every time I receive a call, it interferes with ScummVM.

If I take the call, when the call ends ScummVM quits.
If I ignore the call, ScummVM quits after a few seconds, usually before I can save.

This seems to be a pretty big flaw with using a game system on a mobile phone. Isn't there some way it can suspend the game a little better when a call comes in?

Also, if I quit ScummVM with the home button, it doesn't exit gracefully, but seems to crash out. The reason I say this is because the next time I try to load ScummVM, it crashes and fails before it even loads. The subsequent time after this it will load fine, but again, if I quit with the home button, we're back into the cycle again.
fingolfin
Retired
Posts: 1452
Joined: Wed Sep 21, 2005 4:12 pm

Post by fingolfin »

There are two primary reasons for this problematic behavior:

1) Apple: They deliberately decided that no applications should run while a phone call takes place. Thus no AppStore app can do it, and thus non-app store apps have to jump through hoops to make it possible. Sadly, this seems to be not entirely without problems.

2) The only alternative (quickly saving the current state when a call comes in, so that you can resume at a later point) would be nice to have in any case. However, implementing this is very difficult due to the way ScummVM works. I don't say it's impossible, but it would be a major feat, and would require separate, dedicated code to be written for every single engine we support. Nothing a single person can hope to achieve.


The easiest way out of this would be if Apple reconsidered their decision and would do what most other phone OSes out there seem to do: Suspend the currently running application to the background and resume it after the call ends.
User avatar
Vinterstum
ScummVM Developer
Posts: 580
Joined: Sun Oct 16, 2005 6:59 am

Post by Vinterstum »

Pre-3.0 ScummVM would just keep running in the background when this happened. At that point though, Apple seems to have "fixed" the method it used.

There's apps you can download on Cydia to allow any app to run in the background though.
Refried
Posts: 2
Joined: Sun Jan 17, 2010 4:01 pm

Post by Refried »

Running with Backgrounder though, the music keeps playing, etc. Is there a way you can detect and to suspend the VM when it's put into the background, and then resume it when it's in the foreground?
Post Reply