Tony Homer created CB-8684:
------------------------------
Summary: support onStart/onStop lifecycle events in plugins for
Android
Key: CB-8684
URL: https://issues.apache.org/jira/browse/CB-8684
Project: Apache Cordova
Issue Type: Improvement
Components: Android
Reporter: Tony Homer
Assignee: Tony Homer
Enable plugins to handle onStart/onStop lifecycle events in Android
implementation. Currently plugin authors that need this feature instruct their
users to modify the CordovaActivity in their project in order to support these
lifecycle events.
For example, the Flurry plugin instructions direct users to override
onStart and onStop in their activity in order to handle onStop:
https://github.com/Initsogar/cordova-flurry
There are other analytics plugins that want to know about onStart/onStop
instead of onPause/onResume.
This change will enable native Android support only - there will be no
corresponding Cordova lifecycle events generated because these events are
platform specific.
In addition to the Android platform change, a "quirk"-type notation should be
added to the Android Plugin Development guide, along with possible update to
the example code provided there.
For reference, here is the conversation from the dev mailing list between
[~agrieve] and [~tony--]:
{quote}
On 3/9/15, 12:05 PM, "Andrew Grieve" <[email protected]> wrote:
>I see no reason we couldn't add onStart / onStop.
>
>As an aside, if you're okay with supporting only ICS+, you can use
>Application.registerActivityLifecycleCallbacks() as a work-around.
>
>
>On Mon, Mar 9, 2015 at 11:23 AM, Homer, Tony <[email protected]>
wrote:
>
>> I assumed that this must have been discussed at some point, but I
>>couldn¹t
>> find anything in the list archives or JIRA.
>> I¹m guessing that there might be some practical issues with
>>onStart/onStop
>> and plugin loading timing, but it seems like if there are issues like
>>this
>> they could be addressed somehow.
>>
>> I¹m asking about this because we have an internal request to enable apps
>> to override onStart/onStop in the Intel XDK build system in order to
>> support plugins that want to handle onStart/onStop.
>> My initial response was ³why not use onResume/onPause², but some plugin
>> authors apparently believe that onStart/onStop are the lifecycle events
>> they need.
>>
>> For example, the Flurry plugin instructions direct users to override
>> onStart and onStop in their activity in order to handle onStop:
>> https://github.com/Initsogar/cordova-flurry
>> There are other analytics plugins that want to know about onStart/onStop
>> instead of onPause/onResume.
>> Obviously it is possible to modify your activity in order to do this in
>> your project, but if this capability is important, it should be possible
>> without abandoning the Cordova Way.
>>
>> So I was wondering what you guys think?
>> onPause/onResume should be good enough for anyone?
>> onStart/onStop are edge cases that users need to handle by modifying
>>their
>> activity?
>> onStart/onStop cannot be handled by plugins due to timing issues?
>>
>> Thanks!
>> Tony
{quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]