It could be solved if we had suspend and resume messages but I heard this
is difficult to implement on Android.
--
Jacqueline Landman Gay | jac...@hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
On June 7, 2018 12:49:10 PM Ralph DiMola via use-livecode
<use-livecode@lists.runrev.com> wrote:
This is not an easy thing to fix and can be broken easily. The app in
memory is not corrupt but the restart of the app is probably exposing an LC
engine bug.
Details for geeks...
To handle the Android unique app restart protocol: After you "Quit" or the
app gets hibernated so to speak by the OS, the state of Activities,
Fragments and Views will be saved. When returning back to the application ,
the system will start the process again, recreate the top activity. and you
will get a Bundle with the stored state. This is where thing can go
sideways, the whole process was killed. So any Singletons (or any
“application scope” objects), any temporary data, any data stored in
“retained Fragments” ... Everything will be in a state as if the app was
just launched , with one big difference , the state is restored and the app
is at the point where you left the app. If the Activity you are depending
on has some shared Object, or some injected dependency where you keep
recent data then most likely the application will just crash on a
NullPointerException because it didn’t expect the data to be null.
The Android OS is designed not to allow apps to be "stopped/killed" like
desktop apps. That is why in the Application Manager it's call "Force
stop". To work around the OS design (limitation?) LC could initiate the
various activities with startActivityForResult(), and have the LC "quit"
send back a result which tells the parent activity to finish(). That
activity could then send the same result as part of its onDestroy(), which
would cascade back to the main activity and result in no running
activities, which should cause the app to close. But this is fighting the
basic design of the Android OS and might break with a future OS upgrade.
Ralph DiMola
IT Director
Evergreen Information Services
rdim...@evergreeninfo.net
-----Original Message-----
From: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] On Behalf
Of Sannyasin Brahmanathaswami via use-livecode
Sent: Thursday, June 07, 2018 12:26 PM
To: How to use LiveCode
Cc: Sannyasin Brahmanathaswami
Subject: Re: Android won't quit
Argh. I thought I solved in this in my app. But LO... it appears to
quit... but is actually not quitting... it leaves a "corrupt" stack on the
phone (android) and when you try to restart it, it opens to splash screen
stack, but no messages are firing. It is "stuck" ; does not appear to user
as "crashed" ; but on is dead-on-arrival - just the card 1 of the launcher
stack app, with logo.
Good think you caught this. I will have to let users on android force stop,
as the only choice.
BR
J. Landman Gay
I want to wipe the app completely so that on next launch I can
reinitialize everything.
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode
_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode