Thanks for the advice, but the counter is a display mechanism. If the
UI is not showing then it means the user has cancelled the action

Skooter

On Dec 30, 10:42 pm, brnzn <[email protected]> wrote:
> You might also want to consider moving the countdown out to a
> service.  That would allow it to keep running even when your UI is not
> active.
>
> On Dec 31, 2:15 pm, Skooter Columbo <[email protected]> wrote:
>
>
>
> > I finally figured out why the screen was turning black. It did not
> > have anything to do with the Dialog option I picked. It was because I
> > had a long running process and I was running it on the UI thread. I
> > moved the long running process out to a seperate thread and this
> > sperate thread updated the UI thread as need. This allowed the screen
> > to display, and to show the count like it was designed too. If you
> > need to know more about how do this then read this link. It helped me
> > very much.
>
> >http://code.google.com/android/kb/commontasks.html#threading
>
> > It is amazing what a 4 hour nap can produce.
>
> > Skooter :-)
>
> > On Dec 30, 10:57 am, Skooter Columbo <[email protected]>
> > wrote:
>
> > > I got rid of the AlertDialog, and modified my code to use the
> > > ThemeDialog approach. I made sure that I added the attribute
> > > android:theme="@android:style/Theme.Dialog"  to the Android Manifest
> > > file for my application. However I get the same problem. If I comment
> > > out the code in the onWindowFocusChanged then the CountDown Activity
> > > display, but of course it does not change. A couple of times the
> > > screen displayed correctly when the code was uncommented. However it
> > > only displayed for screen that showed up before when the code was
> > > commented out. I think is some sort of cached screen for faster
> > > access, so I don't get my hopes up.
>
> > > Do you guys have any other ideas? On a lighter note, The display of
> > > the dialog is much fast now than before when I was callling
> > > AlertDialog.Builder.
>
> > > Thanks,
>
> > > Skooer
>
> > > On Dec 30, 5:00 am,SkooterColumbo<[email protected]> wrote:
>
> > > > yea, i was using the AlertDialog, and I used the AlertDialog.Builder
> > > > to create it. I will try what you suggested.
>
> > > > Thanks,
>
> > > >Skooter:-)
>
> > > > On Dec 30, 3:38 am, "RAJENDIRAN SUNDARRAJAN-CPB738"
>
> > > > <[email protected]> wrote:
> > > > >  Hi..
>
> > > > > Yes you are correct that the Launch timeout expiry gives the wake 
> > > > > lock.
> > > > > In AlertDialogs the "screen becoming black" depends on the way you
> > > > > create it ..
> > > > > Please refer the topic "Opening a New Screen"  
> > > > > fromhttp://code.google.com/android/kb/commontasks.html. Make sure if 
> > > > > you
> > > > > are using the third option of creating a dialog then the attribute
> > > > > android:theme="@android:style/Theme.Dialog" need to be added in the
> > > > > manifest xml of that activity using the dialog.
>
> > > > > - Sundar
>
> > > > > -----Original Message-----
> > > > > From: [email protected]
>
> > > > > [mailto:[email protected]] On Behalf OfSkooter
> > > > >Columbo
> > > > > Sent: Tuesday, December 30, 2008 2:47 PM
> > > > > To: Android Developers
> > > > > Subject: [android-developers] Screen Goes Black Between Activities, 
> > > > > and
> > > > > Next Activity never shows up.
>
> > > > > From my MainActivity the user can click a button that shows a dialog.
> > > > > From this dialog the user can set the number of minutes and number of
> > > > > seconds from a custom Timer component, and click a start button. When
> > > > > they click start, this is the OnClickListener that gets invoked.
>
> > > > >    public void onClick(DialogInterface dialog, int whichButton) {
> > > > >         AlertDialog alertDialog = (AlertDialog)dialog;
> > > > >         Timer timer = (Timer)alertDialog.getWindow().findViewById
> > > > > (R.id.timer);
>
> > > > >         Intent intent = new Intent(MainActivity.this,CountDown.class);
> > > > >         intent.putExtra(KEY_MINUTES, timer.getMinutes());
> > > > >         intent.putExtra(KEY_SECONDS, timer.getSeconds());
> > > > >         startActivity(intent);
> > > > >         //startActivityForResult(intent, ACTIVITY_COUNT_DOWN);
> > > > >    }
>
> > > > > As you can see it is sent to the CountDown activity. What is supposed 
> > > > > to
> > > > > happen is the minutes and seconds that the user selected from the 
> > > > > dialog
> > > > > are displayed on the CountDown screen, and they begin to count down 
> > > > > and
> > > > > an explosion sound is played when zero is reached. What is really
> > > > > happening, For some reason the screen goes black, and nothing is
> > > > > displayed, however the explosion is played 30 seconds later if user
> > > > > selected 30 seconds. The CountDown Activity has two methods onCreate 
> > > > > and
> > > > > onWindowFocusChanged. OnCreate is used to set up the view and
> > > > > onWindowFocusChanged is used to count down and update the view as each
> > > > > second pasts. I put the count down code in the  onWindowFocusChanged
> > > > > because it there is no user intervention except to watch the time 
> > > > > count
> > > > > down, and according to the android documentation this is the best
> > > > > indicator that the activity is visible to the user.http://
> > > > > code.google.com/android/reference/android/app/
> > > > > Activity.html#onWindowFocusChanged(boolean). See my code below.
>
> > > > >    protected void onCreate(Bundle savedInstanceState) {
> > > > >        super.onCreate(savedInstanceState);
> > > > >        setContentView(R.layout.count_down);
>
> > > > >        //instantiate the components
> > > > >        mMinutesText = (TextView)findViewById(R.id.count_down_minutes);
> > > > >        mSecondsText = (TextView)findViewById(R.id.count_down_seconds);
> > > > >        cancelButton = (Button)findViewById(R.id.count_down_cancel);
>
> > > > >        Bundle extras = getIntent().getExtras();
> > > > >        mMinutes = extras.getInt(KEY_MINUTES);
> > > > >        mMinutesText.setText(mMinutes);
>
> > > > >        mSeconds = extras.getInt(KEY_SECONDS);
> > > > >        mSecondsText.setText(mSeconds);
>
> > > > >        cancelButton.setOnClickListener(new View.OnClickListener() {
> > > > >             public void onClick(View view) {
> > > > >                 mIsCountingDown = false;
> > > > >         setResult(RESULT_OK,new Intent());
> > > > >         finish();
> > > > >             }
> > > > >         });
> > > > > }
>
> > > > > @Override
> > > > > public void onWindowFocusChanged(boolean hasFocus){
> > > > >     super.onWindowFocusChanged(hasFocus);
> > > > >     if(hasFocus){
> > > > >         countDown(mMinutes,mSeconds);
> > > > >         if(mMinutes == 0 && mSeconds == 0){
> > > > >         MediaPlayer mp = MediaPlayer.create(this, mSound);
> > > > >         mp.start();
> > > > >         }
>
> > > > >         Intent mIntent = new Intent();
> > > > >         setResult(RESULT_OK,mIntent);
> > > > >         finish();
> > > > >      }
> > > > > }
>
> > > > > Here are logs from LogCat. I am wondering if this "Launch timeout has
> > > > > expired, giving up wake lock!" is the problem. If this is the problem
> > > > > then what is causing it
>
> > > > > 12-30 02:40:31.926: INFO/ActivityManager(53): Displayed activity
> > > > > com.android.myapp/.CountDown: 14992 ms
> > > > > 12-30 02:41:40.408: INFO/ActivityManager(53): Starting activity:
> > > > > Intent { comp={com.android.myapp/com.android.myapp.CountDown} (has
> > > > > extras) }
> > > > > 12-30 02:41:50.454: WARN/ActivityManager(53): Launch timeout has
> > > > > expired, giving up wake lock!
> > > > > 12-30 02:41:50.549: WARN/ActivityManager(53): Activity idle timeout 
> > > > > for
> > > > > HistoryRecord{43524f10 {com.android.myapp/ 
> > > > > com.android.myapp.CountDown}}
> > > > > 12-30 02:42:00.166: INFO/ActivityManager(53): Displayed activity
> > > > > com.android.myapp/.CountDown: 19743 ms
>
> > > > > Any guidance someone can provide would be very helpful.
>
> > > > >Skooter:)- Hide quoted text -
>
> > > > > - Show quoted text -- Hide quoted text -
>
> > > > - Show quoted text -- Hide quoted text -
>
> > > - Show quoted text -- Hide quoted text -
>
> - Show quoted text -
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---

Reply via email to