I should have been more clear about distinguishing between Activity and ``app'' here..., but I think you get the idea :-)
kris On Sat, Oct 8, 2011 at 6:37 PM, Kristopher Micinski <[email protected]> wrote: > If you download the source tree (if it ever comes back up again), I > think you might find an interesting read in the code that starts up an > application, I think ActivityThread. It's not too much code, mostly > calling instrumentation in the right places, and provides a nice read > for any systems experienced android hacker, if only to convince you > that there's not something much more complex happening under the > covers :-) > > Kris > > On Sat, Oct 8, 2011 at 6:30 PM, DraganA <[email protected]> wrote: >> My bad, I just realised I do call finish in onCreate and return before >> the variable is initialised. Kostya explained most of it. Thanks. >> >> On Oct 8, 6:30 pm, Kostya Vasilyev <[email protected]> wrote: >>> Calling finish() from onCreate still results in onDestroy getting called. >>> >>> So if your onCreate calls finish() and returns -- before you initialize >>> the list -- perhaps as part of displaying the license agreement, or >>> something else along those lines -- then in onDestroy the list will >>> still be null. Kaboom! >>> >>> So, +1 to Studio's advice of an if(!null) check. Or else create the list >>> as a member initializer: >>> >>> class MyActivity { >>> private List<String> list = new ArrayList<String>(); >>> .... >>> >>> } >>> >>> -- Kostya >>> >>> 08.10.2011 21:12, Studio LFP ?????: >>> >>> >>> >>> >>> >>> >>> >>> >>> >>> > Without code samples, I don't think anyone is going to be able to help >>> > you find your issue. I use this all the time and the only time I have >>> > seen it not work was when I made a mistake somewhere else in the code. >>> >>> > I do usually do a null check on things in the onDestory before I use >>> > them because my code can get more complicated as it goes. I end up >>> > changing variables along the way forgetting I'm cleaning them up at >>> > the end. >>> >>> > If you do find a serious bug like this, you'd definitely want to go >>> > through the steps to reproduce it and post a bug reports in the >>> > Android Issue Tracker if someone else hasn't found it already. >>> >>> >http://code.google.com/p/android/issues/list >>> >>> > Steven >>> > Studio LFP >>> >http://www.studio-lfp.com >>> >>> > On Saturday, October 8, 2011 11:53:05 AM UTC-5, DraganA wrote: >>> >>> > That's the problem, the list is created in onCreate() method and is >>> > not reassigned or set to null anywhere. I forgot to say, the null >>> > pointer happens in onDestroy() method in list.clear() line. From that >>> > I can only deduce that onDestroy() is called before onCreate() >>> >>> > On Oct 8, 5:42 pm, Studio LFP <[email protected]> wrote: >>> > > Based on that, you shouldn't get a crash, but obviously that's >>> > not the full >>> > > code you are using. >>> >>> > > Are you changing that variable at any other point in the code? >>> >>> > > Steven >>> > > Studio LFPhttp://www.studio-lfp.com<http://www.studio-lfp.com> >>> >>> > > On Saturday, October 8, 2011 3:34:15 AM UTC-5, DraganA wrote: >>> >>> > > > I'm puzzled as to why I'm getting Null pointer exception in the >>> > > > construct below, knowing the Activity life cycle, it shouldn't >>> > happen. >>> > > > Could the clue be in TabActivity?? >>> >>> > > > public class Main extends TabActivity { >>> >>> > > > private List<String> list; >>> >>> > > > public void onCreate(Bundle savedInstanceState) { >>> > > > list = new ArrayList<String>(); >>> > > > } >>> >>> > > > protected void onDestroy() { >>> > > > list.clear(); >>> > > > } >>> > > > } >>> >>> > -- >>> > You received this message because you are subscribed to the Google >>> > Groups "Android Developers" group. >>> > To post to this group, send email to [email protected] >>> > To unsubscribe from this group, send email to >>> > [email protected] >>> > For more options, visit this group at >>> >http://groups.google.com/group/android-developers?hl=en >>> >>> -- >>> Kostya Vasilyev >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Android Developers" group. >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected] >> For more options, visit this group at >> http://groups.google.com/group/android-developers?hl=en > -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en

