Skip to main content

MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

27 replies [Last post]
Anonymous

Currently there is a proposal within the MIDP3 Expert Group, to remove,
or I should say, deprecate, the MIDlet pauseApp() life-cycle method...

What is your opinion?

Read more at:
http://www.cenriqueortiz.com/weblog/JavaME%2C+J2ME/2007/06/14/MIDP3-Prop...

ceo

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Gary

Yes, there are many Sun subscribers on this list that
want to see MIDP3 spec be the best it can be.

Yes, some specifications have not been clear enough
and greater effort should be given when the specs are
written and reviewed.

Yes, some TCKs have not been thorough enough in
writing tests that would cover the key functionality to
verify it has been supported in a spec compliant manner.

It is the spec lead's responsibility to shepherd the process
and the expert group as a spec comes together. It is the
JCP community at large that supplies members for
the expert group and it is the community at large that
has opportunities to comment and challenge parts of any
specification as it becomes final.

Having spec compliant implementations as verified by
the JSR specific TCK is all that can be expected.

Robin Chaddock wrote:
> Well said, now if only the appropriate people in Sun were subscribers
> to this mailing list.....
>
> Jacob Abrams wrote:
>> The first question is what problem are we trying to solve? If the
>> problem is device fragmentation the answer is extremely simple. Sun
>> Microsystems must actually start doing its job and verify that OEM
>> implementations of the MIDP API are followed. Its plainly and
>> painfully obvious that Sun is allow OEMs to ship whatever they feel
>> like in regards to the interrupt callback methods. Some OEMs ship
>> devices which do not even call a single callback on interrupt at all.
>> Personally I don't believe there is any use in complicating the
>> system by adding additional information about the callbacks as BREW
>> does. Who cares if it is an SMS interrupt or a phone call interrupt,
>> especially if it isn't going to give us any other information such as
>> the contents of the SMS or an audio stream to the phone call. There
>> is certainly no reason to make the system more complex if OEMs are
>> going to continue to do as they please. Device fragmentation will
>> only become worse as the devices have more ways in differentiating
>> themselves by implementing the API differently.
>> The solution has little to do with modifying the API and much more to
>> do with fixing Sun Microsystems model of any virtual machine
>> implementation will pass Sun standards (or lack thereof). Sun must be
>> more strict and scrutinize OEMs better if they are going to make our
>> lives any easier. Until they accomplish that any new features they
>> add to the MIDP specifications are merely a tease, because most OEM
>> implementations will be completely broken and utterly useless.
>> Jacob
>>
>> *From:* A mailing list for KVM discussion
>> [mailto:KVM-INTEREST@JAVA.SUN.COM] *On Behalf Of *C. Enrique Ortiz
>> *Sent:* Friday, June 15, 2007 8:23 AM
>> *To:* KVM-INTEREST@JAVA.SUN.COM
>> *Subject:* Re: MIDP3 Proposal to remove the MIDlet pauseApp()
>> lifecycle method
>>
>>
>> pauseApp is just a life-cycle signal that the application will go
>> passive, with a suggested behavior to release resources.
>>
>> From the MIDP spec:
>> "The application management software wants the MIDlet to
>> significantly reduce the amount of resources it is consuming, so
>> that they may temporarily be used by other functions on the
>> device such as a phone call or running another MIDlet. The AMS
>> will signal this request to the MIDlet by calling the
>> MIDlet.pauseApp method. The MIDlet should then reduce its
>> resource consumption as much as possible."
>>
>> Handset capabilities will continue to increase, but not all
>> platforms are created equal: some will continue to be
>> embedded/resource-constrained platforms, and we should not remove
>> this primitive signal.
>>
>> The problem w/ pauseApp is not pauseApp, but all those
>> definitions and assumptions that have evolved over the years. If
>> you treat pauseApp as just that, a life-cycle signal, there is no
>> source of issues or fragmentation.
>>
>> While MIDP3 is defining a system event/state API, the primitive
>> life-cycle methods should be kept.
>>
>> Instead, let's address the interpretation issue. pauseApp is just
>> one of many interpretation issues. pauseApp is the trivial one
>> (in my opinion).
>>
>> ceo
>>
>> Robin Chaddock wrote:
>>> I think you are missing the point of this thread; the impetus
>>> behind deprecating pauseApp() is to *reduce* handset
>>> incompatabilities, and consequently *simplify* porting.
>>>
>>> ----- Original Message -----
>>> *From:* Fly Home
>>> *To:* KVM-INTEREST@JAVA.SUN.COM
>>>
>>> *Sent:* Friday, June 15, 2007 11:03 AM
>>> *Subject:* Re: MIDP3 Proposal to remove the MIDlet
>>> pauseApp() lifecycle method
>>>
>>> 99% of applications will be ported any way so any lack of
>>> compatibility can be easily solved then and i don't see the
>>> need to do porting being reduced until there is a consistent
>>> j2me application platform across all devices that is
>>> strictly adhered to.
>>>
>>> BREW allows for different events to be sent to the
>>> application and this functionality when interacting with the
>>> phone os would possibly make it easier to work around j2me
>>> implementations that do not play nice.
>>>
>>> ----- Original Message ----
>>> From: Robin Chaddock
>>>
>>> To: KVM-INTEREST@JAVA.SUN.COM
>>> Sent: Friday, 15 June, 2007 7:07:07 PM
>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
>>> lifecycle method
>>>
>>> If their aim is reduce fragmentation, I think that is
>>> exactly what they
>>> shouldn't do!
>>>
>>> By all means deprecate functionality, but as soon as you
>>> start adding a
>>> different mechanism for achieving the same result, you will
>>> break
>>> compatability between midp1/2 and midp3.
>>>
>>> Tbh I don't think any enhancements to the api should be
>>> considered, until
>>> the cause of the platforms fragmentation has been isolated,
>>> and the
>>> appropriate action taken. (e.g. shooting some of the people
>>> responsible!
>>> =D )
>>>
>>>
>>> ----- Original Message -----
>>> From:
>>>
>>> To:
>>>
>>> Sent: Friday, June 15, 2007 12:43 AM
>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
>>> lifecycle method
>>>
>>>
>>> Granted I have not researched this issue, but here are my
>>> first thoughts.
>>>
>>> We need something smarter here. I think it should be
>>> deprecated and replaced
>>> with a new more informative method, or reduced in scope to a
>>> set of well
>>> defined events to provide consistency across implementations and
>>> complemented with a new method for handling the more general
>>> non-life cycle
>>> events.
>>>
>>> PauseApp does not provide enough information about why it
>>> was called for the
>>> developer to make smart implementation decisions.
>>>
>>> In addition, there is not a hard definition for the “Paused”
>>> state and the
>>> application developer has no reliable way of differentiating
>>> what the device
>>> implementation considers an actively shared resource, a
>>> resource that can be
>>> shared, resources that is intended to be shared, or
>>> resources that cannot be
>>> shared.
>>>
>>> In addition there is no way to negotiate which resources are
>>> “nice to have”,
>>> “must haves”, or if the MIDlet should have precedence or
>>> exclusive access to
>>> a resource.
>>>
>>> Reducing resource usage is not something that can be done
>>> intelligently,
>>> partly because of the lack of information that is provided
>>> by pauseApp, but
>>> more so because hardware and resource management vary across
>>> devices.
>>>
>>> Consider playing a multiplayer/networked game or
>>> streaming/downloading a
>>> relatively large file from a server. A pause and resume may
>>> not be viable
>>> in this case. How do I decide that I would rather continue
>>> playing my game
>>> or listening to my stream rather than taking a call from a
>>> vendor?
>>>
>>> I think we should have something more informative in its
>>> place. I think Kim’s
>>> idea is a good approach.
>>>

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Ruhan, Craig

>From personal experience the operators themselves are making use of MIDP a lot more than they used to and the quality/consistency of the KVM is really starting to impact them as well.

-----Original Message-----
From: A mailing list for KVM discussion [mailto:KVM-INTEREST@JAVA.SUN.COM] On Behalf Of meinterest@MOBILEANDEMBEDDED.ORG
Sent: Sunday, 17 June 2007 10:30 PM
To: KVM-INTEREST@JAVA.SUN.COM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

> 100% concur. Sun MUST take the lead and enforce adherence to JSRs. The current situation > is a joke. I am sure that for MIDP at least Sun could also enlist the operators as well.
That would be nice, I would really like to see it happen, but I wonder how realistic it would be.
In this cut-throat competive environment each mobile manufacture has to rush out new models within a 3 month turn around time, or risk loosing marketshare.
So what would happen if Sun tells them that they must delay their development cycle by an extra month for jsr conformance?
[Message sent by forum member 'captainfreedom' (captainfreedom)]

http://forums.java.net/jive/thread.jspa?messageID=222607

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Robin Chaddock

If their aim is reduce fragmentation, I think that is exactly what they
shouldn't do!

By all means deprecate functionality, but as soon as you start adding a
different mechanism for achieving the same result, you will break
compatability between midp1/2 and midp3.

Tbh I don't think any enhancements to the api should be considered, until
the cause of the platforms fragmentation has been isolated, and the
appropriate action taken. (e.g. shooting some of the people responsible!
=D )

----- Original Message -----
From:
To:
Sent: Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Granted I have not researched this issue, but here are my first thoughts.

We need something smarter here. I think it should be deprecated and replaced
with a new more informative method, or reduced in scope to a set of well
defined events to provide consistency across implementations and
complemented with a new method for handling the more general non-life cycle
events.

PauseApp does not provide enough information about why it was called for the
developer to make smart implementation decisions.

In addition, there is not a hard definition for the “Paused” state and the
application developer has no reliable way of differentiating what the device
implementation considers an actively shared resource, a resource that can be
shared, resources that is intended to be shared, or resources that cannot be
shared.

In addition there is no way to negotiate which resources are “nice to have”,
“must haves”, or if the MIDlet should have precedence or exclusive access to
a resource.

Reducing resource usage is not something that can be done intelligently,
partly because of the lack of information that is provided by pauseApp, but
more so because hardware and resource management vary across devices.

Consider playing a multiplayer/networked game or streaming/downloading a
relatively large file from a server. A pause and resume may not be viable
in this case. How do I decide that I would rather continue playing my game
or listening to my stream rather than taking a call from a vendor?

I think we should have something more informative in its place. I think Kim’s
idea is a good approach.
[Message sent by forum member 'astrientlabs' (astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

terrencebarr
Offline
Joined: 2004-03-04
Points: 0

Yep, implementation bugs are some worst headaches.

Regarding dynamic/in-the-field updates of the Java implementation: This is certainly one way of addressing some of the problems and in fact such firmware updates are already being done by major device manufacturers.

However, I am not sure this is really the way to go for multiple reasons:

- It may actually *increase* fragmentation since now application developers cannot rely on a particular version of a phone to contain a particular well-known implementation. Ideally, all phones would be upgraded to the latest and greatest implementation but in practice that is not going to happen. So you've just moved the problem around and made is less predictable.

- Security and reliability are a huge risk. You would potentially be updating millions of different phone versions and if something in your update goes wrong you have a massive problem. Difficult to handle and OEMs and carriers are concerned.

- JSR versioning: This requires some pretty smart infrastructure on the phone and the back-end to handle versioning and dependencies. For example, what if app1 requires version 1.1 of a JSR but app2 requires version 1.2? What if version 1.1 was included in the firmware and optimized-in-place but version 1.2 is downloaded on demand and installed in some secure area of the device post production? Do you need to switch back and forth depending on the app? Hold multiple copies in memory?

I'm not saying it is not possible or feasable but dynamic updates require a lot of thought and an advanced infrastructure to work reliably for millions of devices. I guess that's why it is not yet in widespread use.

-- Terrence

terrencebarr
Offline
Joined: 2004-03-04
Points: 0

The discussion has digressed a little but I'd like to add some thoughts on the latest comments.

Sun and many in the industry are well aware of the inconsistencies across Java ME platform implementations. There are multiple angles to this and some of the issues are very hard to solve. I encourage you to read to articles we've posted on the ME Application Developer project:

https://meapplicationdevelopers.dev.java.net/optimizing_portability.html
https://meapplicationdevelopers.dev.java.net/fragmentation.html

At the heart of the matter is the fact that there is no single "golden set" of reference bits (a product-quality, shipping, widely used platform implementation) that the industry can orient itself towards. Establishing such a reference platform is a key objective that Sun is pursuing by open sourcing its Java ME implementions (phoneME Feature and phoneME Advanced).

Also, going forward, Sun is augmenting its distribution model with binary (or "near-binary") distributions as to minimize the modifications a device manufacturer must make to create a shippable product.

Finally, Sun has created a comprehensive device test suite called Java Device Test Suite (http://java.sun.com/products/javadevice/) that tests implementations in much greater depth and detail than TCKs do. This test suite is already being mandated by many carriers around the world as a gating test for devices to be enabled for their networks.

So, things are being addressed but it is a complex problem that takes time and energy.

-- Terrence

Tarcisio Camara

Following your fragmentation type definition, I think the worst one is
the **Implementation fragmentation**, specially about rude KVM
implementation bugs and mistakes. I think that is the major lake of
TCKs. However, I do agree that it must be too hard (or expensive) to
prevent all potential problems, regarding all time-to-market constraints
and software/hardware variability.

In order to address (not only but specially) this kind of fragmentation,
I`d really like to see some mechanism to **dynamically update KVM
software**, allowing download of new patches. It could be such as
recall, but cheaper. However, it`s important to be careful to not lead
that to another fragmentation source. I would not like to see
application have to address specific KVM version to run. I`d like to see
application addressing a JSR version (or clarification) and be sure that
it runs properly.

Thank`s

_________________________
Tarcisio Camara
Meantime Mobile Creations
Recife/Brazil

meinterest@MOBILEANDEMBEDDED.ORG escreveu:
> The discussion has digressed a little but I'd like to add some thoughts on the latest comments.
>
> Sun and many in the industry are well aware of the inconsistencies across Java ME platform implementations. There are multiple angles to this and some of the issues are very hard to solve. I encourage you to read to articles we've posted on the ME Application Developer project:
>
> https://meapplicationdevelopers.dev.java.net/optimizing_portability.html
> https://meapplicationdevelopers.dev.java.net/fragmentation.html
>
> At the heart of the matter is the fact that there is no single "golden set" of reference bits (a product-quality, shipping, widely used platform implementation) that the industry can orient itself towards. Establishing such a reference platform is a key objective that Sun is pursuing by open sourcing its Java ME implementions (phoneME Feature and phoneME Advanced).
>
> Also, going forward, Sun is augmenting its distribution model with binary (or "near-binary") distributions as to minimize the modifications a device manufacturer must make to create a shippable product.
>
> Finally, Sun has created a comprehensive device test suite called Java Device Test Suite (http://java.sun.com/products/javadevice/) that tests implementations in much greater depth and detail than TCKs do. This test suite is already being mandated by many carriers around the world as a gating test for devices to be enabled for their networks.
>
> So, things are being addressed but it is a complex problem that takes time and energy.
>
> -- Terrence
> [Message sent by forum member 'terrencebarr' (terrencebarr)]
>
> http://forums.java.net/jive/thread.jspa?messageID=222673
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>
>
>

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Fly Home

Is there currently or are there plans to implement a process to ensure that if an implementation of a JSR does not conform to the spec that steps are taken to rectify this in the next version of the implementation as currently this does not seem to happen much.

----- Original Message ----
From: Gary
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Saturday, 16 June, 2007 10:07:35 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Yes, there are many Sun subscribers on this list that
want to see MIDP3 spec be the best it can be.

Yes, some specifications have not been clear enough
and greater effort should be given when the specs are
written and reviewed.

Yes, some TCKs have not been thorough enough in
writing tests that would cover the key functionality to
verify it has been supported in a spec compliant manner.

It is the spec lead's responsibility to shepherd the process
and the expert group as a spec comes together. It is the
JCP community at large that supplies members for
the expert group and it is the community at large that
has opportunities to comment and challenge parts of any
specification as it becomes final.

Having spec compliant implementations as verified by
the JSR specific TCK is all that can be expected.

Robin Chaddock wrote:
> Well said, now if only the appropriate people in Sun were subscribers
> to this mailing list.....
>
> Jacob Abrams wrote:
>> The first question is what problem are we trying to solve? If the
>> problem is device fragmentation the answer is extremely simple. Sun
>> Microsystems must actually start doing its job and verify that OEM
>> implementations of the MIDP API are followed. Its plainly and
>> painfully obvious that Sun is allow OEMs to ship whatever they feel
>> like in regards to the interrupt callback methods. Some OEMs ship
>> devices which do not even call a single callback on interrupt at all.
>> Personally I don't believe there is any use in complicating the
>> system by adding additional information about the callbacks as BREW
>> does. Who cares if it is an SMS interrupt or a phone call interrupt,
>> especially if it isn't going to give us any other information such as
>> the contents of the SMS or an audio stream to the phone call. There
>> is certainly no reason to make the system more complex if OEMs are
>> going to continue to do as they please. Device fragmentation will
>> only become worse as the devices have more ways in differentiating
>> themselves by implementing the API differently.
>> The solution has little to do with modifying the API and much more to
>> do with fixing Sun Microsystems model of any virtual machine
>> implementation will pass Sun standards (or lack thereof). Sun must be
>> more strict and scrutinize OEMs better if they are going to make our
>> lives any easier. Until they accomplish that any new features they
>> add to the MIDP specifications are merely a tease, because most OEM
>> implementations will be completely broken and utterly useless.
>> Jacob
>>
>> *From:* A mailing list for KVM discussion
>> [mailto:KVM-INTEREST@JAVA.SUN.COM] *On Behalf Of *C. Enrique Ortiz
>> *Sent:* Friday, June 15, 2007 8:23 AM
>> *To:* KVM-INTEREST@JAVA.SUN.COM
>> *Subject:* Re: MIDP3 Proposal to remove the MIDlet pauseApp()
>> lifecycle method
>>
>>
>> pauseApp is just a life-cycle signal that the application will go
>> passive, with a suggested behavior to release resources.
>>
>> From the MIDP spec:
>> "The application management software wants the MIDlet to
>> significantly reduce the amount of resources it is consuming, so
>> that they may temporarily be used by other functions on the
>> device such as a phone call or running another MIDlet. The AMS
>> will signal this request to the MIDlet by calling the
>> MIDlet.pauseApp method. The MIDlet should then reduce its
>> resource consumption as much as possible."
>>
>> Handset capabilities will continue to increase, but not all
>> platforms are created equal: some will continue to be
>> embedded/resource-constrained platforms, and we should not remove
>> this primitive signal.
>>
>> The problem w/ pauseApp is not pauseApp, but all those
>> definitions and assumptions that have evolved over the years. If
>> you treat pauseApp as just that, a life-cycle signal, there is no
>> source of issues or fragmentation.
>>
>> While MIDP3 is defining a system event/state API, the primitive
>> life-cycle methods should be kept.
>>
>> Instead, let's address the interpretation issue. pauseApp is just
>> one of many interpretation issues. pauseApp is the trivial one
>> (in my opinion).
>>
>> ceo
>>
>> Robin Chaddock wrote:
>>> I think you are missing the point of this thread; the impetus
>>> behind deprecating pauseApp() is to *reduce* handset
>>> incompatabilities, and consequently *simplify* porting.
>>>
>>> ----- Original Message -----
>>> *From:* Fly Home
>>> *To:* KVM-INTEREST@JAVA.SUN.COM
>>>
>>> *Sent:* Friday, June 15, 2007 11:03 AM
>>> *Subject:* Re: MIDP3 Proposal to remove the MIDlet
>>> pauseApp() lifecycle method
>>>
>>> 99% of applications will be ported any way so any lack of
>>> compatibility can be easily solved then and i don't see the
>>> need to do porting being reduced until there is a consistent
>>> j2me application platform across all devices that is
>>> strictly adhered to.
>>>
>>> BREW allows for different events to be sent to the
>>> application and this functionality when interacting with the
>>> phone os would possibly make it easier to work around j2me
>>> implementations that do not play nice.
>>>
>>> ----- Original Message ----
>>> From: Robin Chaddock
>>>
>>> To: KVM-INTEREST@JAVA.SUN.COM
>>> Sent: Friday, 15 June, 2007 7:07:07 PM
>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
>>> lifecycle method
>>>
>>> If their aim is reduce fragmentation, I think that is
>>> exactly what they
>>> shouldn't do!
>>>
>>> By all means deprecate functionality, but as soon as you
>>> start adding a
>>> different mechanism for achieving the same result, you will
>>> break
>>> compatability between midp1/2 and midp3.
>>>
>>> Tbh I don't think any enhancements to the api should be
>>> considered, until
>>> the cause of the platforms fragmentation has been isolated,
>>> and the
>>> appropriate action taken. (e.g. shooting some of the people
>>> responsible!
>>> =D )
>>>
>>>
>>> ----- Original Message -----
>>> From:
>>> ===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Ruhan, Craig

100% concur. Sun MUST take the lead and enforce adherence to JSRs. The current situation is a joke. I am sure that for MIDP at least Sun could also enlist the operators as well.

From: A mailing list for KVM discussion [mailto:KVM-INTEREST@JAVA.SUN.COM] On Behalf Of Fly Home
Sent: Saturday, 16 June 2007 12:11 PM
To: KVM-INTEREST@JAVA.SUN.COM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Absolutely very well put.

----- Original Message ----
From: Jacob Abrams
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Saturday, 16 June, 2007 2:46:06 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

The first question is what problem are we trying to solve? If the problem is device fragmentation the answer is extremely simple. Sun Microsystems must actually start doing its job and verify that OEM implementations of the MIDP API are followed. Its plainly and painfully obvious that Sun is allow OEMs to ship whatever they feel like in regards to the interrupt callback methods. Some OEMs ship devices which do not even call a single callback on interrupt at all.

Personally I don't believe there is any use in complicating the system by adding additional information about the callbacks as BREW does. Who cares if it is an SMS interrupt or a phone call interrupt, especially if it isn't going to give us any other information such as the contents of the SMS or an audio stream to the phone call. There is certainly no reason to make the system more complex if OEMs are going to continue to do as they please. Device fragmentation will only become worse as the devices have more ways in differentiating themselves by implementing the API differently.

The solution has little to do with modifying the API and much more to do with fixing Sun Microsystems model of any virtual machine implementation will pass Sun standards (or lack thereof). Sun must be more strict and scrutinize OEMs better if they are going to make our lives any easier. Until they accomplish that any new features they add to the MIDP specifications are merely a tease, because most OEM implementations will be completely broken and utterly useless.

Jacob

_____

From: A mailing list for KVM discussion [mailto:KVM-INTEREST@JAVA.SUN.COM] On Behalf Of C. Enrique Ortiz
Sent: Friday, June 15, 2007 8:23 AM
To: KVM-INTEREST@JAVA.SUN.COM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

pauseApp is just a life-cycle signal that the application will go passive, with a suggested behavior to release resources.

>From the MIDP spec:
"The application management software wants the MIDlet to significantly reduce the amount of resources it is consuming, so that they may temporarily be used by other functions on the device such as a phone call or running another MIDlet. The AMS will signal this request to the MIDlet by calling the MIDlet.pauseApp method. The MIDlet should then reduce its resource consumption as much as possible."

Handset capabilities will continue to increase, but not all platforms are created equal: some will continue to be embedded/resource-constrained platforms, and we should not remove this primitive signal.

The problem w/ pauseApp is not pauseApp, but all those definitions and assumptions that have evolved over the years. If you treat pauseApp as just that, a life-cycle signal, there is no source of issues or fragmentation.

While MIDP3 is defining a system event/state API, the primitive life-cycle methods should be kept.

Instead, let's address the interpretation issue. pauseApp is just one of many interpretation issues. pauseApp is the trivial one (in my opinion).

ceo

Robin Chaddock wrote:

I think you are missing the point of this thread; the impetus behind deprecating pauseApp() is to *reduce* handset incompatabilities, and consequently *simplify* porting.

----- Original Message -----

From: HYPERLINK "mailto:vedanuzal@YAHOO.COM.AU" \nFly Home

To: HYPERLINK "mailto:KVM-INTEREST@JAVA.SUN.COM" \nKVM-INTEREST@JAVA.SUN.COM

Sent: Friday, June 15, 2007 11:03 AM

Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

99% of applications will be ported any way so any lack of compatibility can be easily solved then and i don't see the need to do porting being reduced until there is a consistent j2me application platform across all devices that is strictly adhered to.

BREW allows for different events to be sent to the application and this functionality when interacting with the phone os would possibly make it easier to work around j2me implementations that do not play nice.

----- Original Message ----
From: Robin Chaddock HYPERLINK "mailto:robin.chaddock@IPLAY.COM" \n
To: HYPERLINK "mailto:KVM-INTEREST@JAVA.SUN.COM" \nKVM-INTEREST@JAVA.SUN.COM
Sent: Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

If their aim is reduce fragmentation, I think that is exactly what they
shouldn't do!

By all means deprecate functionality, but as soon as you start adding a
different mechanism for achieving the same result, you will break
compatability between midp1/2 and midp3.

Tbh I don't think any enhancements to the api should be considered, until
the cause of the platforms fragmentation has been isolated, and the
appropriate action taken. (e.g. shooting some of the people responsible!
=D )

----- Original Message -----
From: HYPERLINK "mailto:meinterest@MOBILEANDEMBEDDED.ORG" \n
To: HYPERLINK "mailto:KVM-INTEREST@JAVA.SUN.COM" \n
Sent: Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Granted I have not researched this issue, but here are my first thoughts.

We need something smarter here. I think it should be deprecated and replaced
with a new more informative method, or reduced in scope to a set of well
defined events to provide consistency across implementations and
complemented with a new method for handling the more general non-life cycle
events.

PauseApp does not provide enough information about why it was called for the
developer to make smart implementation decisions.

In addition, there is not a hard definition for the “Paused” state and the
application developer has no reliable way of differentiating what the device
implementation considers an actively shared resource, a resource that can be
shared, resources that is intended to be shared, or resources that cannot be
shared.

In addition there is no way to negotiate which resources are “nice to have”,
“must haves”, or if the MIDlet should have precedence or exclusive access to
a resource.

Reducing resource usage is not something that can be done intelligently,
partly because of the lack of information that is provided by pauseApp, but
more so because hardware and resource management vary across devices.

Consider playing a multiplayer/networked game or streaming/downloading a
relatively large file from a server. A pause and resume may not be viable
in this case. How do I decide that I would rather continue playing my game
or listening to my stream rather than taking a call from a vendor?

I think we should have something more informative in its place. I think Kim’s
idea is a good approach.
[Message sent by forum member 'astrientlabs' (astrientlabs)]

HYPERLINK "http://forums.java.net/jive/thread.jspa?messageID=222292" \nhttp://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To unsubscribe, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
HYPERLINK "http://www.messagelabs.com/stats.asp" \nhttp://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "help".

_____

Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts. HYPERLINK "http://au.docs.yahoo.com/mail/unlimitedstorage.html" \nFind out more. =========================================================================== To unsubscribe, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
HYPERLINK "http://www.messagelabs.com/stats.asp" \nhttp://www.messagelabs.com/stats.asp

--------------------------------

Spam/Virus scanning by CanIt Pro

For more information see HYPERLINK "http://www.kgbinternet.com/SpamFilter.htm" \nhttp://www.kgbinternet.com/SpamFilter.htm

To control your spam filter, log in at HYPERLINK "http://filter.kgbinternet.com" \nhttp://filter.kgbinternet.com

=========================================================================== To unsubscribe, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to HYPERLINK "mailto:listserv@java.sun.com" \nlistserv@java.sun.com and include in the body of the message "help".

=========================================================================== To unsubscribe, send email to listserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to listserv@java.sun.com and include in the body of the message "help".

=========================================================================== To unsubscribe, send email to listserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to listserv@java.sun.com and include in the body of the message "help".

_____

Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts. HYPERLINK "http://au.docs.yahoo.com/mail/unlimitedstorage.html" \nFind out more.

=========================================================================== To unsubscribe, send email to listserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to listserv@java.sun.com and include in the body of the message "help".

Internal Virus Database is out-of-date.
Checked by AVG Free Edition.
Version: 7.5.472 / Virus Database: 269.8.13 - Release Date: 8/06/2007 12:00 AM

Internal Virus Database is out-of-date.
Checked by AVG Free Edition.
Version: 7.5.472 / Virus Database: 269.8.13 - Release Date: 8/06/2007 12:00 AM

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

captainfreedom
Offline
Joined: 2007-01-10
Points: 0

> 100% concur. Sun MUST take the lead and enforce adherence to JSRs. The current situation > is a joke. I am sure that for MIDP at least Sun could also enlist the operators as well.
That would be nice, I would really like to see it happen, but I wonder how realistic it would be.
In this cut-throat competive environment each mobile manufacture has to rush out new models within a 3 month turn around time, or risk loosing marketshare.
So what would happen if Sun tells them that they must delay their development cycle by an extra month for jsr conformance?

Fly Home

Absolutely very well put.

----- Original Message ----
From: Jacob Abrams
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Saturday, 16 June, 2007 2:46:06 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

The first question is what problem are we trying to solve?
If the problem is device fragmentation the answer is extremely simple. Sun
Microsystems must actually start doing its job and verify that OEM
implementations of the MIDP API are followed. Its plainly and painfully obvious
that Sun is allow OEMs to ship whatever they feel like in regards to the
interrupt callback methods. Some OEMs ship devices which do not even call a
single callback on interrupt at all.

Personally I don't believe there is any use in complicating
the system by adding additional information about the callbacks as BREW does.
Who cares if it is an SMS interrupt or a phone call interrupt, especially if it
isn't going to give us any other information such as the contents of the SMS or
an audio stream to the phone call. There is certainly no reason to make the
system more complex if OEMs are going to continue to do as they please. Device
fragmentation will only become worse as the devices have more ways in
differentiating themselves by implementing the API
differently.

The solution has little to do with modifying the API and
much more to do with fixing Sun Microsystems model of any virtual
machine implementation will pass Sun standards (or lack thereof). Sun must
be more strict and scrutinize OEMs better if they are going to make our lives
any easier. Until they accomplish that any new features they add to the MIDP
specifications are merely a tease, because most
OEM implementations will be completely broken and utterly
useless.

Jacob

From: A mailing list for KVM discussion
[mailto:KVM-INTEREST@JAVA.SUN.COM] On Behalf Of C. Enrique
Ortiz
Sent: Friday, June 15, 2007 8:23 AM
To:
KVM-INTEREST@JAVA.SUN.COM
Subject: Re: MIDP3 Proposal to remove the
MIDlet pauseApp() lifecycle method

pauseApp is just a life-cycle signal that the application will
go passive, with a suggested behavior to release resources.

From the
MIDP spec:
"The application management software wants the MIDlet to
significantly reduce the amount of resources it is consuming, so that they may
temporarily be used by other functions on the device such as a phone call or
running another MIDlet. The AMS will signal this request to the MIDlet by
calling the MIDlet.pauseApp method. The MIDlet should then reduce its resource
consumption as much as possible."

Handset capabilities will
continue to increase, but not all platforms are created equal: some will
continue to be embedded/resource-constrained platforms, and we should not
remove this primitive signal.

The problem w/ pauseApp is not pauseApp,
but all those definitions and assumptions that have evolved over the years. If
you treat pauseApp as just that, a life-cycle signal, there is no source of
issues or fragmentation.

While MIDP3 is defining a system event/state
API, the primitive life-cycle methods should be kept.

Instead, let's
address the interpretation issue. pauseApp is just one of many interpretation
issues. pauseApp is the trivial one (in my opinion).

ceo

Robin
Chaddock wrote:

DIV {
MARGIN:0px;}

I think you are missing the point of this
thread; the impetus behind deprecating pauseApp() is to *reduce* handset
incompatabilities, and consequently *simplify* porting.

-----
Original Message -----

From:
Fly
Home

To:
KVM-INTEREST@JAVA.SUN.COM

Sent:
Friday, June 15, 2007 11:03 AM

Subject:
Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

99%
of applications will be ported any way so any lack of compatibility can be
easily solved then and i don't see the need to do porting being reduced
until there is a consistent j2me application platform across all devices
that is strictly adhered to.

BREW allows for different events to be
sent to the application and this functionality when interacting with the
phone os would possibly make it easier to work around j2me implementations
that do not play nice.

-----
Original Message ----
From: Robin Chaddock
To:
KVM-INTEREST@JAVA.SUN.COM
Sent:
Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove
the MIDlet pauseApp() lifecycle method

If their aim is reduce fragmentation, I think that is exactly what
they
shouldn't do!

By all means deprecate functionality, but as
soon as you start adding a
different mechanism for achieving the same
result, you will break
compatability between midp1/2 and
midp3.

Tbh I don't think any enhancements to the api should be
considered, until
the cause of the platforms fragmentation has been
isolated, and the
appropriate action taken. (e.g. shooting some of the
people responsible!
=D )

----- Original Message
-----
From:
To:

Sent:
Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove
the MIDlet pauseApp() lifecycle method

Granted I have not
researched this issue, but here are my first thoughts.

We need
something smarter here. I think it should be deprecated and
replaced
with a new more informative method, or reduced in scope to a
set of well
defined events to provide consistency across
implementations and
complemented with a new method for handling the
more general non-life cycle
events.

PauseApp does not provide
enough information about why it was called for the
developer to make
smart implementation decisions.

In addition, there is not a hard
definition for the “Paused” state and the
application developer has no
reliable way of differentiating what the device
implementation
considers an actively shared resource, a resource that can be
shared,
resources that is intended to be shared, or resources that cannot
be
shared.

In addition there is no way to negotiate which
resources are “nice to have”,
“must haves”, or if the MIDlet should
have precedence or exclusive access to
a resource.

Reducing
resource usage is not something that can be done intelligently,
partly
because of the lack of information that is provided by pauseApp,
but
more so because hardware and resource management vary across
devices.

Consider playing a multiplayer/networked game or
streaming/downloading a
relatively large file from a server. A pause
and resume may not be viable
in this case. How do I decide that I would
rather continue playing my game
or listening to my stream rather than
taking a call from a vendor?

I think we should have something more
informative in its place. I think Kim’s
idea is a good
approach.
[Message sent by forum member 'astrientlabs'
(astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To
unsubscribe, send email to listserv@java.sun.com and include
in the body
of the message "signoff KVM-INTEREST". For general help,
send email to
listserv@java.sun.com and include
in the body of the message
"help".

________________________________________________________________________
E-mail
is an informal method of communication and may be subject to data
corruption, interception and unauthorised amendment for which I-play, a
trading name of Digital Bridges Ltd will accept no liability. Therefore,
it will normally be inappropriate to rely on information contained on
e-mail without obtaining written confirmation.

This e-mail may
contain confidential and/or privileged information. If you are not the
intended recipient (or have received this e-mail in error) please notify
the sender immediately and destroy this e-mail. Any unauthorized copying,
disclosure or distribution of the material in this e-mail is strictly
forbidden.

(C) 2005. I-play is a trademark and trading name of
Digital Bridges Limited. All Rights
Reserved.
________________________________________________________________________
This
message has been checked for all known viruses by the
MessageLabs Virus
Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To
unsubscribe, send email to listserv@java.sun.com and include
in the body
of the message "signoff KVM-INTEREST". For general help,
send email to
listserv@java.sun.com and include
in the body of the message "help".

Yahoo!7 Mail has just got even bigger and better with unlimited storage on
all webmail accounts. Find out more.
===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include
in the body of the message "signoff KVM-INTEREST". For general help, send
email to listserv@java.sun.com and include
in the body of the message
"help".
________________________________________________________________________
E-mail
is an informal method of communication and may be subject to data
corruption, interception and unauthorised amendment for which I-play, a
trading name of Digital Bridges Ltd will accept no liability. Therefore, it
will normally be inappropriate to rely on information contained on e-mail
without obtaining written confirmation.

This e-mail may contain
confidential and/or privileged information. If you are not the intended
recipient (or have received this e-mail in error) please notify the sender
immediately and destroy this e-mail. Any unauthorized copying, disclosure or
distribution of the material in this e-mail is strictly
forbidden.

(C) 2005. I-play is a trademark and trading name of
Digital Bridges Limited. All Rights
Reserved.
________________________________________________________________________
This
message has been checked for all known viruses by the
MessageLabs Virus
Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

--------------------------------

Spam/Virus scanning by CanIt Pro
For more information see http://www.kgbinternet.com/SpamFilter.htm

To control your spam filter, log in at http://filter.kgbinternet.com

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in
the body of the message "signoff KVM-INTEREST". For general help, send email
to listserv@java.sun.com and include in
the body of the message
"help".
===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body of
the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

_________________________________________________________________________________

Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts.
http://au.docs.yahoo.com/mail/unlimitedstorage.html

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

Jacob Abrams

The first question is what problem are we trying to solve? If the
problem is device fragmentation the answer is extremely simple. Sun
Microsystems must actually start doing its job and verify that OEM
implementations of the MIDP API are followed. Its plainly and painfully
obvious that Sun is allow OEMs to ship whatever they feel like in
regards to the interrupt callback methods. Some OEMs ship devices which
do not even call a single callback on interrupt at all.

Personally I don't believe there is any use in complicating the system
by adding additional information about the callbacks as BREW does. Who
cares if it is an SMS interrupt or a phone call interrupt, especially if
it isn't going to give us any other information such as the contents of
the SMS or an audio stream to the phone call. There is certainly no
reason to make the system more complex if OEMs are going to continue to
do as they please. Device fragmentation will only become worse as the
devices have more ways in differentiating themselves by implementing the
API differently.

The solution has little to do with modifying the API and much more to do
with fixing Sun Microsystems model of any virtual machine implementation
will pass Sun standards (or lack thereof). Sun must be more strict and
scrutinize OEMs better if they are going to make our lives any easier.
Until they accomplish that any new features they add to the MIDP
specifications are merely a tease, because most OEM implementations will
be completely broken and utterly useless.

Jacob

________________________________

From: A mailing list for KVM discussion
[mailto:KVM-INTEREST@JAVA.SUN.COM] On Behalf Of C. Enrique Ortiz
Sent: Friday, June 15, 2007 8:23 AM
To: KVM-INTEREST@JAVA.SUN.COM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
lifecycle method

pauseApp is just a life-cycle signal that the application will
go passive, with a suggested behavior to release resources.

From the MIDP spec:
"The application management software wants the MIDlet to
significantly reduce the amount of resources it is consuming, so that
they may temporarily be used by other functions on the device such as a
phone call or running another MIDlet. The AMS will signal this request
to the MIDlet by calling the MIDlet.pauseApp method. The MIDlet should
then reduce its resource consumption as much as possible."

Handset capabilities will continue to increase, but not all
platforms are created equal: some will continue to be
embedded/resource-constrained platforms, and we should not remove this
primitive signal.

The problem w/ pauseApp is not pauseApp, but all those
definitions and assumptions that have evolved over the years. If you
treat pauseApp as just that, a life-cycle signal, there is no source of
issues or fragmentation.

While MIDP3 is defining a system event/state API, the primitive
life-cycle methods should be kept.

Instead, let's address the interpretation issue. pauseApp is
just one of many interpretation issues. pauseApp is the trivial one (in
my opinion).

ceo

Robin Chaddock wrote:

I think you are missing the point of this thread; the
impetus behind deprecating pauseApp() is to *reduce* handset
incompatabilities, and consequently *simplify* porting.

----- Original Message -----
From: Fly Home
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, June 15, 2007 11:03 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet
pauseApp() lifecycle method

99% of applications will be ported any way so
any lack of compatibility can be easily solved then and i don't see the
need to do porting being reduced until there is a consistent j2me
application platform across all devices that is strictly adhered to.

BREW allows for different events to be sent to
the application and this functionality when interacting with the phone
os would possibly make it easier to work around j2me implementations
that do not play nice.

----- Original Message ----
From: Robin Chaddock

To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet
pauseApp() lifecycle method

If their aim is reduce fragmentation, I think
that is exactly what they
shouldn't do!

By all means deprecate functionality, but as
soon as you start adding a
different mechanism for achieving the same
result, you will break
compatability between midp1/2 and midp3.

Tbh I don't think any enhancements to the api
should be considered, until
the cause of the platforms fragmentation has
been isolated, and the
appropriate action taken. (e.g. shooting some of
the people responsible!
=D )

----- Original Message -----
From:

To:

Sent: Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet
pauseApp() lifecycle method

Granted I have not researched this issue, but
here are my first thoughts.

We need something smarter here. I think it
should be deprecated and replaced
with a new more informative method, or reduced
in scope to a set of well
defined events to provide consistency across
implementations and
complemented with a new method for handling the
more general non-life cycle
events.

PauseApp does not provide enough information
about why it was called for the
developer to make smart implementation
decisions.

In addition, there is not a hard definition for
the "Paused" state and the
application developer has no reliable way of
differentiating what the device
implementation considers an actively shared
resource, a resource that can be
shared, resources that is intended to be shared,
or resources that cannot be
shared.

In addition there is no way to negotiate which
resources are "nice to have",
"must haves", or if the MIDlet should have
precedence or exclusive access to
a resource.

Reducing resource usage is not something that
can be done intelligently,
partly because of the lack of information that
is provided by pauseApp, but
more so because hardware and resource management
vary across devices.

Consider playing a multiplayer/networked game or
streaming/downloading a
relatively large file from a server. A pause and
resume may not be viable
in this case. How do I decide that I would
rather continue playing my game
or listening to my stream rather than taking a
call from a vendor?

I think we should have something more
informative in its place. I think Kim's
idea is a good approach.
[Message sent by forum member 'astrientlabs'
(astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

========================================================================
===
To unsubscribe, send email to
listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For
general help, send email to
listserv@java.sun.com and include in the body of
the message "help".

________________________________________________________________________
E-mail is an informal method of communication
and may be subject to data corruption, interception and unauthorised
amendment for which I-play, a trading name of Digital Bridges Ltd will
accept no liability. Therefore, it will normally be inappropriate to
rely on information contained on e-mail without obtaining written
confirmation.

This e-mail may contain confidential and/or
privileged information. If you are not the intended recipient (or have
received this e-mail in error) please notify the sender immediately and
destroy this e-mail. Any unauthorized copying, disclosure or
distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name
of Digital Bridges Limited. All Rights Reserved.

________________________________________________________________________
This message has been checked for all known
viruses by the
MessageLabs Virus Scanning Service. For further
information visit
http://www.messagelabs.com/stats.asp

========================================================================
===
To unsubscribe, send email to
listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For
general help, send email to
listserv@java.sun.com and include in the body of
the message "help".

________________________________

Yahoo!7 Mail has just got even bigger and better
with unlimited storage on all webmail accounts. Find out more
.
========================================================================
=== To unsubscribe, send email to listserv@java.sun.com and include in
the body of the message "signoff KVM-INTEREST". For general help, send
email to listserv@java.sun.com and include in the body of the message
"help".

________________________________________________________________________
E-mail is an informal method of communication and may be
subject to data corruption, interception and unauthorised amendment for
which I-play, a trading name of Digital Bridges Ltd will accept no
liability. Therefore, it will normally be inappropriate to rely on
information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged
information. If you are not the intended recipient (or have received
this e-mail in error) please notify the sender immediately and destroy
this e-mail. Any unauthorized copying, disclosure or distribution of the
material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of
Digital Bridges Limited. All Rights Reserved.

________________________________________________________________________
This message has been checked for all known viruses by
the
MessageLabs Virus Scanning Service. For further
information visit
http://www.messagelabs.com/stats.asp

--------------------------------

Spam/Virus scanning by CanIt Pro

For more information see
http://www.kgbinternet.com/SpamFilter.htm

To control your spam filter, log in at
http://filter.kgbinternet.com

========================================================================
=== To unsubscribe, send email to listserv@java.sun.com and include in
the body of the message "signoff KVM-INTEREST". For general help, send
email to listserv@java.sun.com and include in the body of the message
"help".

========================================================================
=== To unsubscribe, send email to listserv@java.sun.com and include in
the body of the message "signoff KVM-INTEREST". For general help, send
email to listserv@java.sun.com and include in the body of the message
"help".

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

Robin Chaddock

[att1.html]

Kim Daniel Arthur

This reminds me of a thread about 1 or 2 years ago, not sure if anyone at
sun picked up on it then ;)

On 16/6/07 20:17, "Robin Chaddock" wrote:

> Well said, now if only the appropriate people in Sun were subscribers to this
> mailing list.....
>
> Jacob Abrams wrote:
>>
>> The first question is what problem are we trying to solve? If the problem is
>> device fragmentation the answer is extremely simple. Sun Microsystems must
>> actually start doing its job and verify that OEM implementations of the MIDP
>> API are followed. Its plainly and painfully obvious that Sun is allow OEMs to
>> ship whatever they feel like in regards to the interrupt callback methods.
>> Some OEMs ship devices which do not even call a single callback on interrupt
>> at all.
>>
>>
>>
>> Personally I don't believe there is any use in complicating the system by
>> adding additional information about the callbacks as BREW does. Who cares if
>> it is an SMS interrupt or a phone call interrupt, especially if it isn't
>> going
>> to give us any other information such as the contents of the SMS or an audio
>> stream to the phone call. There is certainly no reason to make the system
>> more
>> complex if OEMs are going to continue to do as they please. Device
>> fragmentation will only become worse as the devices have more ways in
>> differentiating themselves by implementing the API differently.
>>
>>
>>
>> The solution has little to do with modifying the API and much more to do with
>> fixing Sun Microsystems model of any virtual machine implementation will pass
>> Sun standards (or lack thereof). Sun must be more strict and scrutinize OEMs
>> better if they are going to make our lives any easier. Until they accomplish
>> that any new features they add to the MIDP specifications are merely a tease,
>> because most OEM implementations will be completely broken and utterly
>> useless.
>>
>>
>>
>> Jacob
>>
>>
>>>
>>>
>>>
>>> From: A mailing list for KVM discussion [mailto:KVM-INTEREST@JAVA.SUN.COM]
>>> On Behalf Of C. Enrique Ortiz
>>> Sent: Friday, June 15, 2007 8:23 AM
>>> To: KVM-INTEREST@JAVA.SUN.COM
>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle
>>> method
>>>
>>>
>>>
>>> pauseApp is just a life-cycle signal that the application will go passive,
>>> with a suggested behavior to release resources.
>>>
>>> From the MIDP spec:
>>> "The application management software wants the MIDlet to significantly
>>> reduce the amount of resources it is consuming, so that they may temporarily
>>> be used by other functions on the device such as a phone call or running
>>> another MIDlet. The AMS will signal this request to the MIDlet by calling
>>> the
>>> MIDlet.pauseApp method. The MIDlet should then reduce its resource
>>> consumption as much as possible."
>>>
>>> Handset capabilities will continue to increase, but not all platforms are
>>> created equal: some will continue to be embedded/resource-constrained
>>> platforms, and we should not remove this primitive signal.
>>>
>>> The problem w/ pauseApp is not pauseApp, but all those definitions and
>>> assumptions that have evolved over the years. If you treat pauseApp as just
>>> that, a life-cycle signal, there is no source of issues or fragmentation.
>>>
>>> While MIDP3 is defining a system event/state API, the primitive life-cycle
>>> methods should be kept.
>>>
>>> Instead, let's address the interpretation issue. pauseApp is just one of
>>> many
>>> interpretation issues. pauseApp is the trivial one (in my opinion).
>>>
>>> ceo
>>>
>>> Robin Chaddock wrote:
>>>>
>>>> I think you are missing the point of this thread; the impetus behind
>>>> deprecating pauseApp() is to *reduce* handset incompatabilities, and
>>>> consequently *simplify* porting.
>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>>
>>>>> From: Fly Home
>>>>>
>>>>> To: KVM-INTEREST@JAVA.SUN.COM
>>>>>
>>>>> Sent: Friday, June 15, 2007 11:03 AM
>>>>>
>>>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle
>>>>> method
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> 99% of applications will be ported any way so any lack of compatibility
>>>>> can
>>>>> be easily solved then and i don't see the need to do porting being reduced
>>>>> until there is a consistent j2me application platform across all devices
>>>>> that is strictly adhered to.
>>>>>
>>>>> BREW allows for different events to be sent to the application and this
>>>>> functionality when interacting with the phone os would possibly make it
>>>>> easier to work around j2me implementations that do not play nice.
>>>>>
>>>>>
>>>>> ----- Original Message ----
>>>>> From: Robin Chaddock
>>>>>
>>>>> To: KVM-INTEREST@JAVA.SUN.COM
>>>>> Sent: Friday, 15 June, 2007 7:07:07 PM
>>>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle
>>>>> method
>>>>>
>>>>>
>>>>> If their aim is reduce fragmentation, I think that is exactly what they
>>>>> shouldn't do!
>>>>>
>>>>> By all means deprecate functionality, but as soon as you start adding a
>>>>> different mechanism for achieving the same result, you will break
>>>>> compatability between midp1/2 and midp3.
>>>>>
>>>>> Tbh I don't think any enhancements to the api should be considered, until
>>>>> the cause of the platforms fragmentation has been isolated, and the
>>>>> appropriate action taken. (e.g. shooting some of the people responsible!
>>>>> =D )
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>> From:
>>>>>
>>>>> To:
>>>>> Sent: Friday, June 15, 2007 12:43 AM
>>>>> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle
>>>>> method
>>>>>
>>>>>
>>>>> Granted I have not researched this issue, but here are my first thoughts.
>>>>>
>>>>> We need something smarter here. I think it should be deprecated and
>>>>> replaced
>>>>> with a new more informative method, or reduced in scope to a set of well
>>>>> defined events to provide consistency across implementations and
>>>>> complemented with a new method for handling the more general non-life
>>>>> cycle
>>>>> events.
>>>>>
>>>>> PauseApp does not provide enough information about why it was called for
>>>>> the
>>>>> developer to make smart implementation decisions.
>>>>>
>>>>> In addition, there is not a hard definition for the ³Paused² state and the
>>>>> application developer has no reliable way of differentiating what the
>>>>> device
>>>>> implementation considers an actively shared resource, a resource that can
>>>>> be
>>>>> shared, resources that is intended to be shared, or resources that cannot
>>>>> be
>>>>> shared.
>>>>>
>>>>> In addition there is no way to negotiate which resources are ³nice to
>>>>> have²,
>>>>> ³must haves², or if the MIDlet should have precedence or exclusive access
>>>>> to
>>>>> a resource.
>>>>>
>>>>> Reducing resource usage is not something that can be done intelligently,
>>>>> partly because of the lack of information that is provided by pauseApp,
>>>>> but
>>>>> more so because hardware and resource management vary across devices.
>>>>>
>>>>> Consider playing a multiplayer/networked game or streaming/downloading a
>>>>> relatively large file from a server. A pause and resume may not be viable
>>>>> in this case. How do I decide that I would rather continue playing my game
>>>>> or listening to my stream rather than taking a call from a vendor?
>>>>>
>>>>> I think we should have something more informative in its place. I think
>>>>> Kim¹s
>>>>> idea is a good approach.
>>>>> [Message sent by forum member 'astrientlabs' (astrientlabs)]
>>>>>
>>>>> http://forums.java.net/jive/thread.jspa?messageID=222292
>>>>>
>>>>>
==========================================================================>>>>>
=
>>>>> To unsubscribe, send email to listserv@java.sun.com and include in the
>>>>> body
>>>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>>>> listserv@java.sun.com and include in the body of the message "help".
>>>>>
>>>>>
>>>>>
>>>>> ________________________________________________________________________
>>>>> E-mail is an informal method of communication and may be subject to data
>>>>> corruption, interception and unauthorised amendment for which I-play, a
>>>>> trading name of Digital Bridges Ltd will accept no liability. Therefore,
>>>>> it
>>>>> will normally be inappropriate to rely on information contained on e-mail
>>>>> without obtaining written confirmation.
>>>>>
>>>>> This e-mail may contain confidential and/or privileged information. If you
>>>>> are not the intended recipient (or have received this e-mail in error)
>>>>> please notify the sender immediately and destroy this e-mail. Any
>>>>> unauthorized copying, disclosure or distribution of the material in this
>>>>> e-mail is strictly forbidden.
>>>>>
>>>>> (C) 2005. I-play is a trademark and trading name of Digital Bridges
>>>>> Limited. All Rights Reserved.
>>>>> ________________________________________________________________________
>>>>> This message has been checked for all known viruses by the
>>>>> MessageLabs Virus Scanning Service. For further information visit
>>>>> http://www.messagelabs.com/stats.asp
>>>>>
>>>>>
==========================================================================>>>>>
=
>>>>> To unsubscribe, send email to listserv@java.sun.com and include in the
>>>>> body
>>>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>>>> listserv@java.sun.com and include in the body of the message "help".
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Yahoo!7 Mail has just got even bigger and better with unlimited storage
>>>>> on
>>>>> all webmail accounts. Find out more
>>>>> .
>>>>> ==========================================================================
>>>>> =
>>>>> To unsubscribe, send email to listserv@java.sun.com and include in the
>>>>> body
>>>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>>>> listserv@java.sun.com and include in the body of the message "help".
>>>>
>>>> ________________________________________________________________________
>>>> E-mail is an informal method of communication and may be subject to data
>>>> corruption, interception and unauthorised amendment for which I-play, a
>>>> trading name of Digital Bridges Ltd will accept no liability. Therefore, it
>>>> will normally be inappropriate to rely on information contained on e-mail
>>>> without obtaining written confirmation.
>>>>
>>>> This e-mail may contain confidential and/or privileged information. If you
>>>> are not the intended recipient (or have received this e-mail in error)
>>>> please notify the sender immediately and destroy this e-mail. Any
>>>> unauthorized copying, disclosure or distribution of the material in this
>>>> e-mail is strictly forbidden.
>>>>
>>>> (C) 2005. I-play is a trademark and trading name of Digital Bridges
>>>> Limited.
>>>> All Rights Reserved.
>>>> ________________________________________________________________________
>>>> This message has been checked for all known viruses by the
>>>> MessageLabs Virus Scanning Service. For further information visit
>>>> http://www.messagelabs.com/stats.asp
>>>>
>>>>
>>>> --------------------------------
>>>>
>>>> Spam/Virus scanning by CanIt Pro
>>>>
>>>> For more information see http://www.kgbinternet.com/SpamFilter.htm
>>>>
>>>>
>>>> To control your spam filter, log in at http://filter.kgbinternet.com
>>>> ===========================================================================
>>>> To unsubscribe, send email to listserv@java.sun.com and include in the body
>>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>>> listserv@java.sun.com and include in the body of the message "help".
>>>
>>> ===========================================================================
>>> To unsubscribe, send email to listserv@java.sun.com and include in the body
>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>> listserv@java.sun.com and include in the body of the message "help".
>> ===========================================================================
>> To
>> unsubscribe, send email to listserv@java.sun.com and include in the body of
>> the message "signoff KVM-INTEREST". For general help, send email to
>> listserv@java.sun.com and include in the body of the message "help".
>
>
> ________________________________________________________________________
> E-mail is an informal method of communication and may be subject to data
> corruption, interception and unauthorised amendment for which I-play, a
> trading name of Digital Bridges Ltd will accept no liability. Therefore, it
> will normally be inappropriate to rely on information contained on e-mail
> without obtaining written confirmation.
>
> This e-mail may contain confidential and/or privileged information. If you are
> not the intended recipient (or have received this e-mail in error) please
> notify the sender immediately and destroy this e-mail. Any unauthorized
> copying, disclosure or distribution of the material in this e-mail is strictly
> forbidden.
>
> (C) 2005. I-play is a trademark and trading name of Digital Bridges Limited.
> All Rights Reserved.
> ________________________________________________________________________
> This message has been checked for all known viruses by the
> MessageLabs Virus Scanning Service. For further information visit
> http://www.messagelabs.com/stats.asp
> =========================================================================== To
> unsubscribe, send email to listserv@java.sun.com and include in the body of
> the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Fly Home

While I understand that this is the goal I am currently employed porting j2me games and in my experience the biggest hurdle to reducing porting in this area is not depreciating pauseApp() although this would not matter for j2me games much as most if not all of the games that i have ported just call hidenotify() in the pauseApp() method.

The biggest hurdle in this area is the implementation of the KVM on the handset, so until this is solved any modification in the specification will have little or no effect to the amount of porting required. A recent example was that for a game that I was porting to the Nokia N73 is that the audio was actually deing stopped before letting the j2me game know what it was doing so that the code the developer had written in hidenotify() never got executed as the state of the player had already changed.
And that is mild compared to stopping the KVM entirely like some manufacturers and not telling the KVM anything that's going on.

So from a software engineer who ports j2me applications daily it may be of some help but will have no great effect on reducing the incompatibilities between handsets, the quality of the KVM on the device and the design of the Application itself are the major factors that determine how much an application needs to be ported.

----- Original Message ----
From: Robin Chaddock
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, 15 June, 2007 8:55:58 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

DIV {
MARGIN:0px;}

I think you are missing the point of this thread;
the impetus behind deprecating pauseApp() is to *reduce* handset
incompatabilities, and consequently *simplify* porting.

----- Original Message -----

From:
Fly
Home

To: KVM-INTEREST@JAVA.SUN.COM

Sent: Friday, June 15, 2007 11:03
AM

Subject: Re: MIDP3 Proposal to remove the
MIDlet pauseApp() lifecycle method

99%
of applications will be ported any way so any lack of compatibility can be
easily solved then and i don't see the need to do porting being reduced until
there is a consistent j2me application platform across all devices that is
strictly adhered to.

BREW allows for different events to be sent to the
application and this functionality when interacting with the phone os would
possibly make it easier to work around j2me implementations that do not play
nice.

-----
Original Message ----
From: Robin Chaddock

To: KVM-INTEREST@JAVA.SUN.COM
Sent:
Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove the
MIDlet pauseApp() lifecycle method

If their aim is reduce fragmentation, I think that is exactly what
they
shouldn't do!

By all means deprecate functionality, but as soon
as you start adding a
different mechanism for achieving the same result,
you will break
compatability between midp1/2 and midp3.

Tbh I don't
think any enhancements to the api should be considered, until
the cause of
the platforms fragmentation has been isolated, and the
appropriate action
taken. (e.g. shooting some of the people responsible!
=D )

-----
Original Message -----
From:

To:

Sent: Friday, June 15, 2007 12:43
AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle
method

Granted I have not researched this issue, but here are my
first thoughts.

We need something smarter here. I think it should be
deprecated and replaced
with a new more informative method, or reduced in
scope to a set of well
defined events to provide consistency across
implementations and
complemented with a new method for handling the more
general non-life cycle
events.

PauseApp does not provide enough
information about why it was called for the
developer to make smart
implementation decisions.

In addition, there is not a hard definition
for the “Paused” state and the
application developer has no reliable way of
differentiating what the device
implementation considers an actively shared
resource, a resource that can be
shared, resources that is intended to be
shared, or resources that cannot be
shared.

In addition there is no
way to negotiate which resources are “nice to have”,
“must haves”, or if
the MIDlet should have precedence or exclusive access to
a
resource.

Reducing resource usage is not something that can be done
intelligently,
partly because of the lack of information that is provided
by pauseApp, but
more so because hardware and resource management vary
across devices.

Consider playing a multiplayer/networked game or
streaming/downloading a
relatively large file from a server. A
pause and resume may not be viable
in this case. How do I decide
that I would rather continue playing my game
or listening to my stream
rather than taking a call from a vendor?

I think we should have
something more informative in its place. I think Kim’s
idea is a good
approach.
[Message sent by forum member 'astrientlabs'
(astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To
unsubscribe, send email to listserv@java.sun.com and include in the body
of
the message "signoff KVM-INTEREST". For general help, send email
to
listserv@java.sun.com and include in the body of the message
"help".

________________________________________________________________________
E-mail
is an informal method of communication and may be subject to data corruption,
interception and unauthorised amendment for which I-play, a trading name of
Digital Bridges Ltd will accept no liability. Therefore, it will normally be
inappropriate to rely on information contained on e-mail without obtaining
written confirmation.

This e-mail may contain confidential and/or
privileged information. If you are not the intended recipient (or have
received this e-mail in error) please notify the sender immediately and
destroy this e-mail. Any unauthorized copying, disclosure or distribution of
the material in this e-mail is strictly forbidden.

(C) 2005. I-play is
a trademark and trading name of Digital Bridges Limited. All Rights
Reserved.
________________________________________________________________________
This
message has been checked for all known viruses by the
MessageLabs Virus
Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To
unsubscribe, send email to listserv@java.sun.com and include in the body
of
the message "signoff KVM-INTEREST". For general help, send email
to
listserv@java.sun.com and include in the body of the message
"help".

Yahoo!7 Mail has just got even bigger and better with unlimited storage on all
webmail accounts. Find
out more.
=========================================================================== To
unsubscribe, send email to listserv@java.sun.com and include in the body of
the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message
"help".

________________________________________________________________________

E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.

________________________________________________________________________

This message has been checked for all known viruses by the

MessageLabs Virus Scanning Service. For further information visit

http://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Send instant messages to your online friends http://au.messenger.yahoo.com

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

Fly Home

99% of applications will be ported any way so any lack of compatibility can be easily solved then and i don't see the need to do porting being reduced until there is a consistent j2me application platform across all devices that is strictly adhered to.

BREW allows for different events to be sent to the application and this functionality when interacting with the phone os would possibly make it easier to work around j2me implementations that do not play nice.

----- Original Message ----
From: Robin Chaddock
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

If their aim is reduce fragmentation, I think that is exactly what they
shouldn't do!

By all means deprecate functionality, but as soon as you start adding a
different mechanism for achieving the same result, you will break
compatability between midp1/2 and midp3.

Tbh I don't think any enhancements to the api should be considered, until
the cause of the platforms fragmentation has been isolated, and the
appropriate action taken. (e.g. shooting some of the people responsible!
=D )

----- Original Message -----
From:
To:
Sent: Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Granted I have not researched this issue, but here are my first thoughts.

We need something smarter here. I think it should be deprecated and replaced
with a new more informative method, or reduced in scope to a set of well
defined events to provide consistency across implementations and
complemented with a new method for handling the more general non-life cycle
events.

PauseApp does not provide enough information about why it was called for the
developer to make smart implementation decisions.

In addition, there is not a hard definition for the “Paused” state and the
application developer has no reliable way of differentiating what the device
implementation considers an actively shared resource, a resource that can be
shared, resources that is intended to be shared, or resources that cannot be
shared.

In addition there is no way to negotiate which resources are “nice to have”,
“must haves”, or if the MIDlet should have precedence or exclusive access to
a resource.

Reducing resource usage is not something that can be done intelligently,
partly because of the lack of information that is provided by pauseApp, but
more so because hardware and resource management vary across devices.

Consider playing a multiplayer/networked game or streaming/downloading a
relatively large file from a server. A pause and resume may not be viable
in this case. How do I decide that I would rather continue playing my game
or listening to my stream rather than taking a call from a vendor?

I think we should have something more informative in its place. I think Kim’s
idea is a good approach.
[Message sent by forum member 'astrientlabs' (astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

_________________________________________________________________________________

Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts.
http://au.docs.yahoo.com/mail/unlimitedstorage.html

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

Robin Chaddock

I think you are missing the point of this thread; the impetus behind deprecating pauseApp() is to *reduce* handset incompatabilities, and consequently *simplify* porting.

----- Original Message -----
From: Fly Home
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, June 15, 2007 11:03 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

99% of applications will be ported any way so any lack of compatibility can be easily solved then and i don't see the need to do porting being reduced until there is a consistent j2me application platform across all devices that is strictly adhered to.

BREW allows for different events to be sent to the application and this functionality when interacting with the phone os would possibly make it easier to work around j2me implementations that do not play nice.

----- Original Message ----
From: Robin Chaddock
To: KVM-INTEREST@JAVA.SUN.COM
Sent: Friday, 15 June, 2007 7:07:07 PM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

If their aim is reduce fragmentation, I think that is exactly what they
shouldn't do!

By all means deprecate functionality, but as soon as you start adding a
different mechanism for achieving the same result, you will break
compatability between midp1/2 and midp3.

Tbh I don't think any enhancements to the api should be considered, until
the cause of the platforms fragmentation has been isolated, and the
appropriate action taken. (e.g. shooting some of the people responsible!
=D )

----- Original Message -----
From:
To:
Sent: Friday, June 15, 2007 12:43 AM
Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp() lifecycle method

Granted I have not researched this issue, but here are my first thoughts.

We need something smarter here. I think it should be deprecated and replaced
with a new more informative method, or reduced in scope to a set of well
defined events to provide consistency across implementations and
complemented with a new method for handling the more general non-life cycle
events.

PauseApp does not provide enough information about why it was called for the
developer to make smart implementation decisions.

In addition, there is not a hard definition for the “Paused” state and the
application developer has no reliable way of differentiating what the device
implementation considers an actively shared resource, a resource that can be
shared, resources that is intended to be shared, or resources that cannot be
shared.

In addition there is no way to negotiate which resources are “nice to have”,
“must haves”, or if the MIDlet should have precedence or exclusive access to
a resource.

Reducing resource usage is not something that can be done intelligently,
partly because of the lack of information that is provided by pauseApp, but
more so because hardware and resource management vary across devices.

Consider playing a multiplayer/networked game or streaming/downloading a
relatively large file from a server. A pause and resume may not be viable
in this case. How do I decide that I would rather continue playing my game
or listening to my stream rather than taking a call from a vendor?

I think we should have something more informative in its place. I think Kim’s
idea is a good approach.
[Message sent by forum member 'astrientlabs' (astrientlabs)]

http://forums.java.net/jive/thread.jspa?messageID=222292

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

------------------------------------------------------------------------------
Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts. Find out more. =========================================================================== To unsubscribe, send email to listserv@java.sun.com and include in the body of the message "signoff KVM-INTEREST". For general help, send email to listserv@java.sun.com and include in the body of the message "help".

________________________________________________________________________
E-mail is an informal method of communication and may be subject to data corruption, interception and unauthorised amendment for which I-play, a trading name of Digital Bridges Ltd will accept no liability. Therefore, it will normally be inappropriate to rely on information contained on e-mail without obtaining written confirmation.

This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.

(C) 2005. I-play is a trademark and trading name of Digital Bridges Limited. All Rights Reserved.
________________________________________________________________________
This message has been checked for all known viruses by the
MessageLabs Virus Scanning Service. For further information visit
http://www.messagelabs.com/stats.asp

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

C. Enrique Ortiz

pauseApp is just a life-cycle signal that the application will go
passive, with a suggested behavior to release resources.

From the MIDP spec:
"The application management software wants the MIDlet to significantly
reduce the amount of resources it is consuming, so that they may
temporarily be used by other functions on the device such as a phone
call or running another MIDlet. The AMS will signal this request to the
MIDlet by calling the MIDlet.pauseApp method. The MIDlet should then
reduce its resource consumption as much as possible."

Handset capabilities will continue to increase, but not all platforms
are created equal: some will continue to be
embedded/resource-constrained platforms, and we should not remove this
primitive signal.

The problem w/ pauseApp is not pauseApp, but all those definitions and
assumptions that have evolved over the years. If you treat pauseApp as
just that, a life-cycle signal, there is no source of issues or
fragmentation.

While MIDP3 is defining a system event/state API, the primitive
life-cycle methods should be kept.

Instead, let's address the interpretation issue. pauseApp is just one
of many interpretation issues. pauseApp is the trivial one (in my opinion).

ceo

Robin Chaddock wrote:
> I think you are missing the point of this thread; the impetus behind
> deprecating pauseApp() is to *reduce* handset incompatabilities,
> and consequently *simplify* porting.
>
>
> ----- Original Message -----
> *From:* Fly Home
> *To:* KVM-INTEREST@JAVA.SUN.COM
> *Sent:* Friday, June 15, 2007 11:03 AM
> *Subject:* Re: MIDP3 Proposal to remove the MIDlet pauseApp()
> lifecycle method
>
> 99% of applications will be ported any way so any lack of
> compatibility can be easily solved then and i don't see the need
> to do porting being reduced until there is a consistent j2me
> application platform across all devices that is strictly adhered to.
>
> BREW allows for different events to be sent to the application and
> this functionality when interacting with the phone os would
> possibly make it easier to work around j2me implementations that
> do not play nice.
>
> ----- Original Message ----
> From: Robin Chaddock
> To: KVM-INTEREST@JAVA.SUN.COM
> Sent: Friday, 15 June, 2007 7:07:07 PM
> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
> lifecycle method
>
> If their aim is reduce fragmentation, I think that is exactly what
> they
> shouldn't do!
>
> By all means deprecate functionality, but as soon as you start
> adding a
> different mechanism for achieving the same result, you will break
> compatability between midp1/2 and midp3.
>
> Tbh I don't think any enhancements to the api should be
> considered, until
> the cause of the platforms fragmentation has been isolated, and the
> appropriate action taken. (e.g. shooting some of the people
> responsible!
> =D )
>
>
> ----- Original Message -----
> From:
> To:
> Sent: Friday, June 15, 2007 12:43 AM
> Subject: Re: MIDP3 Proposal to remove the MIDlet pauseApp()
> lifecycle method
>
>
> Granted I have not researched this issue, but here are my first
> thoughts.
>
> We need something smarter here. I think it should be deprecated
> and replaced
> with a new more informative method, or reduced in scope to a set
> of well
> defined events to provide consistency across implementations and
> complemented with a new method for handling the more general
> non-life cycle
> events.
>
> PauseApp does not provide enough information about why it was
> called for the
> developer to make smart implementation decisions.
>
> In addition, there is not a hard definition for the “Paused” state
> and the
> application developer has no reliable way of differentiating what
> the device
> implementation considers an actively shared resource, a resource
> that can be
> shared, resources that is intended to be shared, or resources that
> cannot be
> shared.
>
> In addition there is no way to negotiate which resources are “nice
> to have”,
> “must haves”, or if the MIDlet should have precedence or exclusive
> access to
> a resource.
>
> Reducing resource usage is not something that can be done
> intelligently,
> partly because of the lack of information that is provided by
> pauseApp, but
> more so because hardware and resource management vary across devices.
>
> Consider playing a multiplayer/networked game or
> streaming/downloading a
> relatively large file from a server. A pause and resume may not
> be viable
> in this case. How do I decide that I would rather continue
> playing my game
> or listening to my stream rather than taking a call from a vendor?
>
> I think we should have something more informative in its place. I
> think Kim’s
> idea is a good approach.
> [Message sent by forum member 'astrientlabs' (astrientlabs)]
>
> http://forums.java.net/jive/thread.jspa?messageID=222292
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in
> the body
> of the message "signoff KVM-INTEREST". For general help, send
> email to
> listserv@java.sun.com and include in the body of the message "help".
>
>
>
> ________________________________________________________________________
> E-mail is an informal method of communication and may be subject
> to data corruption, interception and unauthorised amendment for
> which I-play, a trading name of Digital Bridges Ltd will accept no
> liability. Therefore, it will normally be inappropriate to rely on
> information contained on e-mail without obtaining written
> confirmation.
>
> This e-mail may contain confidential and/or privileged
> information. If you are not the intended recipient (or have
> received this e-mail in error) please notify the sender
> immediately and destroy this e-mail. Any unauthorized copying,
> disclosure or distribution of the material in this e-mail is
> strictly forbidden.
>
> (C) 2005. I-play is a trademark and trading name of Digital
> Bridges Limited. All Rights Reserved.
> ________________________________________________________________________
> This message has been checked for all known viruses by the
> MessageLabs Virus Scanning Service. For further information visit
> http://www.messagelabs.com/stats.asp
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in
> the body
> of the message "signoff KVM-INTEREST". For general help, send
> email to
> listserv@java.sun.com and include in the body of the message "help".
>
>
> ------------------------------------------------------------------------
> Yahoo!7 Mail has just got even bigger and better with unlimited
> storage on all webmail accounts. Find out more
> .
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in
> the body of the message "signoff KVM-INTEREST". For general help,
> send email to listserv@java.sun.com and include in the body of the
> message "help".
>
>
> ________________________________________________________________________
> E-mail is an informal method of communication and may be subject to
> data corruption, interception and unauthorised amendment for which
> I-play, a trading name of Digital Bridges Ltd will accept no
> liability. Therefore, it will normally be inappropriate to rely on
> information contained on e-mail without obtaining written confirmation.
>
> This e-mail may contain confidential and/or privileged information. If
> you are not the intended recipient (or have received this e-mail in
> error) please notify the sender immediately and destroy this e-mail.
> Any unauthorized copying, disclosure or distribution of the material
> in this e-mail is strictly forbidden.
>
> (C) 2005. I-play is a trademark and trading name of Digital Bridges
> Limited. All Rights Reserved.
> ________________________________________________________________________
> This message has been checked for all known viruses by the
> MessageLabs Virus Scanning Service. For further information visit
> http://www.messagelabs.com/stats.asp
>
> --------------------------------
>
>
> Spam/Virus scanning by CanIt Pro
>
> For more information see http://www.kgbinternet.com/SpamFilter.htm
>
> To control your spam filter, log in at http://filter.kgbinternet.com
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the
> body of the message "signoff KVM-INTEREST". For general help, send
> email to listserv@java.sun.com and include in the body of the message
> "help".

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".
[att1.html]

astrientlabs
Offline
Joined: 2006-09-14
Points: 0

Granted I have not researched this issue, but here are my first thoughts.

We need something smarter here. I think it should be deprecated and replaced with a new more informative method, or reduced in scope to a set of well defined events to provide consistency across implementations and complemented with a new method for handling the more general non-life cycle events.

PauseApp does not provide enough information about why it was called for the developer to make smart implementation decisions.

In addition, there is not a hard definition for the “Paused” state and the application developer has no reliable way of differentiating what the device implementation considers an actively shared resource, a resource that can be shared, resources that is intended to be shared, or resources that cannot be shared.

In addition there is no way to negotiate which resources are “nice to have”, “must haves”, or if the MIDlet should have precedence or exclusive access to a resource.

Reducing resource usage is not something that can be done intelligently, partly because of the lack of information that is provided by pauseApp, but more so because hardware and resource management vary across devices.

Consider playing a multiplayer/networked game or streaming/downloading a relatively large file from a server. A pause and resume may not be viable in this case. How do I decide that I would rather continue playing my game or listening to my stream rather than taking a call from a vendor?

I think we should have something more informative in its place. I think Kim’s idea is a good approach.

captainfreedom
Offline
Joined: 2007-01-10
Points: 0

It's also possible that the new KVMs that support MIDP3 are smart enough to handle all the resource allocation themselves without any intervention required by the midlet. Maybe that's why they are getting rid of it?

captainfreedom
Offline
Joined: 2007-01-10
Points: 0

>I think there needs to be a more granulated communication from the os to the...

Actually, there is an infinite list of things that could cause the midlet to be interrupted... for example, incoming bluetooth connection, switch to mp3 player, switch to browser (possible in se phones), etc.

Also, while we're on the topic I notice that some SE phones call hideNotify when you change the volume. Rather annoying when you play a game, each time you turn down the music it pops up with the interrupt menu.

Adrian Valentin Dan

One way to go around this is to allow for a time to pass since the
hideNotify is called before starting releasing resources, to avoid
situations where some minor event interfeers, and the showNotify is
called shortly after hideNotify.

meinterest@MOBILEANDEMBEDDED.ORG wrote:
>> I think there needs to be a more granulated communication from the os to the...
>>
>
> Actually, there is an infinite list of things that could cause the midlet to be interrupted... for example, incoming bluetooth connection, switch to mp3 player, switch to browser (possible in se phones), etc.
>
> Also, while we're on the topic I notice that some SE phones call hideNotify when you change the volume. Rather annoying when you play a game, each time you turn down the music it pops up with the interrupt menu.
> [Message sent by forum member 'captainfreedom' (captainfreedom)]
>
> http://forums.java.net/jive/thread.jspa?messageID=222160
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>
>
>

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

captainfreedom
Offline
Joined: 2007-01-10
Points: 0

That wouldn't work. The time for the volume control interrupt to return could be longer than a phone call (it's possible to have very short phone calls)

captainfreedom
Offline
Joined: 2007-01-10
Points: 0

so what would they replace it with?

C. Enrique Ortiz

With nada... It would be deprecated.

ceo

meinterest@mobileandembedded.org wrote:
> so what would they replace it with?
> [Message sent by forum member 'captainfreedom' (captainfreedom)]
>
> http://forums.java.net/jive/thread.jspa?messageID=222067
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>
> --------------------------------
> Spam/Virus scanning by CanIt Pro
>
> For more information see
> http://www.kgbinternet.com/SpamFilter.htm
>
> To control your spam filter, log in at
> http://filter.kgbinternet.com
>
>

--
C. Enrique Ortiz
eortiz@j2medeveloper.com
512-635-4225
http://www.CEnriqueOrtiz.com
http://www.CEnriqueOrtiz.com/weblog
http://www.MobileMondayAustin.org
http://www.AustinWirelessAlliance.org

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Adrian Valentin Dan

AFAIK, the Canvas.showNotify /Canvas.hideNotify mechanism has a much
better moniker.

C. Enrique Ortiz wrote:
> With nada... It would be deprecated.
>
> ceo
>
> meinterest@mobileandembedded.org wrote:
>> so what would they replace it with?
>> [Message sent by forum member 'captainfreedom' (captainfreedom)]
>>
>> http://forums.java.net/jive/thread.jspa?messageID=222067
>>
>> ===========================================================================
>>
>> To unsubscribe, send email to listserv@java.sun.com and include in
>> the body
>> of the message "signoff KVM-INTEREST". For general help, send email to
>> listserv@java.sun.com and include in the body of the message "help".
>>
>> --------------------------------
>> Spam/Virus scanning by CanIt Pro
>>
>> For more information see
>> http://www.kgbinternet.com/SpamFilter.htm
>>
>> To control your spam filter, log in at
>> http://filter.kgbinternet.com
>>
>>
>
> --
> C. Enrique Ortiz
> eortiz@j2medeveloper.com
> 512-635-4225
> http://www.CEnriqueOrtiz.com
> http://www.CEnriqueOrtiz.com/weblog
> http://www.MobileMondayAustin.org
> http://www.AustinWirelessAlliance.org
>
> ===========================================================================
>
> To unsubscribe, send email to listserv@java.sun.com and include in the
> body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>
>

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

Kim Daniel Arthur

I think there needs to be a more granulated communication from the os to the
vm,

public static MIDlet.externalEvent( String event, String parameter )
{
switch ( event )
{
case MIDlet.INCOMING_CALL:
break;

case MIDlet.INCOMING_SMS:
break;

case MIDlet.LOW_BATTERY_WARNING:
int batteryLevel = Integer.parseInt( paramenter );
break;

case.AND_SO_ON:
break;
}
}

This way you have more control of how your app should behave on any type of
external event. There should also be a strict TCK to ensure that each
implementation respects this...

At the same time hide/shownotfy should remain as they do, however you cannot
be 100% sure that these are triggered by an external event or by your apps
behaviour itself.

On 14/6/07 22:01, "Adrian Valentin Dan" wrote:

> AFAIK, the Canvas.showNotify /Canvas.hideNotify mechanism has a much
> better moniker.
>
>
>
> C. Enrique Ortiz wrote:
>> With nada... It would be deprecated.
>>
>> ceo
>>
>> meinterest@mobileandembedded.org wrote:
>>> so what would they replace it with?
>>> [Message sent by forum member 'captainfreedom' (captainfreedom)]
>>>
>>> http://forums.java.net/jive/thread.jspa?messageID=222067
>>>
>>> ===========================================================================
>>>
>>> To unsubscribe, send email to listserv@java.sun.com and include in
>>> the body
>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>> listserv@java.sun.com and include in the body of the message "help".
>>>
>>> --------------------------------
>>> Spam/Virus scanning by CanIt Pro
>>>
>>> For more information see
>>> http://www.kgbinternet.com/SpamFilter.htm
>>>
>>> To control your spam filter, log in at
>>> http://filter.kgbinternet.com
>>>
>>>
>>
>> --
>> C. Enrique Ortiz
>> eortiz@j2medeveloper.com
>> 512-635-4225
>> http://www.CEnriqueOrtiz.com
>> http://www.CEnriqueOrtiz.com/weblog
>> http://www.MobileMondayAustin.org
>> http://www.AustinWirelessAlliance.org
>>
>> ===========================================================================
>>
>> To unsubscribe, send email to listserv@java.sun.com and include in the
>> body
>> of the message "signoff KVM-INTEREST". For general help, send email to
>> listserv@java.sun.com and include in the body of the message "help".
>>
>>
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".

C. Enrique Ortiz

Kim -

MIDP3 supports system events such as the low battery one -- I don't
think the incoming call one.. One thing is primitive life-cycle
methods, and one thing are more elaborated events, in my opinion.

ceo

Kim Daniel Arthur wrote:
> I think there needs to be a more granulated communication from the os to the
> vm,
>
> public static MIDlet.externalEvent( String event, String parameter )
> {
> switch ( event )
> {
> case MIDlet.INCOMING_CALL:
> break;
>
> case MIDlet.INCOMING_SMS:
> break;
>
> case MIDlet.LOW_BATTERY_WARNING:
> int batteryLevel = Integer.parseInt( paramenter );
> break;
>
> case.AND_SO_ON:
> break;
> }
> }
>
> This way you have more control of how your app should behave on any type of
> external event. There should also be a strict TCK to ensure that each
> implementation respects this...
>
> At the same time hide/shownotfy should remain as they do, however you cannot
> be 100% sure that these are triggered by an external event or by your apps
> behaviour itself.
>
>
> On 14/6/07 22:01, "Adrian Valentin Dan" wrote:
>
>
>> AFAIK, the Canvas.showNotify /Canvas.hideNotify mechanism has a much
>> better moniker.
>>
>>
>>
>> C. Enrique Ortiz wrote:
>>
>>> With nada... It would be deprecated.
>>>
>>> ceo
>>>
>>> meinterest@mobileandembedded.org wrote:
>>>
>>>> so what would they replace it with?
>>>> [Message sent by forum member 'captainfreedom' (captainfreedom)]
>>>>
>>>> http://forums.java.net/jive/thread.jspa?messageID=222067
>>>>
>>>> ===========================================================================
>>>>
>>>> To unsubscribe, send email to listserv@java.sun.com and include in
>>>> the body
>>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>>> listserv@java.sun.com and include in the body of the message "help".
>>>>
>>>> --------------------------------
>>>> Spam/Virus scanning by CanIt Pro
>>>>
>>>> For more information see
>>>> http://www.kgbinternet.com/SpamFilter.htm
>>>>
>>>> To control your spam filter, log in at
>>>> http://filter.kgbinternet.com
>>>>
>>>>
>>>>
>>> --
>>> C. Enrique Ortiz
>>> eortiz@j2medeveloper.com
>>> 512-635-4225
>>> http://www.CEnriqueOrtiz.com
>>> http://www.CEnriqueOrtiz.com/weblog
>>> http://www.MobileMondayAustin.org
>>> http://www.AustinWirelessAlliance.org
>>>
>>> ===========================================================================
>>>
>>> To unsubscribe, send email to listserv@java.sun.com and include in the
>>> body
>>> of the message "signoff KVM-INTEREST". For general help, send email to
>>> listserv@java.sun.com and include in the body of the message "help".
>>>
>>>
>>>
>> ===========================================================================
>> To unsubscribe, send email to listserv@java.sun.com and include in the body
>> of the message "signoff KVM-INTEREST". For general help, send email to
>> listserv@java.sun.com and include in the body of the message "help".
>>
>>
>
> ===========================================================================
> To unsubscribe, send email to listserv@java.sun.com and include in the body
> of the message "signoff KVM-INTEREST". For general help, send email to
> listserv@java.sun.com and include in the body of the message "help".
>
> --------------------------------
> Spam/Virus scanning by CanIt Pro
>
> For more information see
> http://www.kgbinternet.com/SpamFilter.htm
>
> To control your spam filter, log in at
> http://filter.kgbinternet.com
>
>

--
C. Enrique Ortiz
eortiz@j2medeveloper.com
512-635-4225
http://www.CEnriqueOrtiz.com
http://www.CEnriqueOrtiz.com/weblog
http://www.MobileMondayAustin.org
http://www.AustinWirelessAlliance.org

===========================================================================
To unsubscribe, send email to listserv@java.sun.com and include in the body
of the message "signoff KVM-INTEREST". For general help, send email to
listserv@java.sun.com and include in the body of the message "help".