Skip to content Skip to sidebar Skip to footer

One-time Alertdialog Showing On Every Run

I am trying to have a disclaimer pop up when the app is first run, and after each update. I did a bunch of googling and reviewed some questions here as well, and this is what my c

Solution 1:

Comparing Strings with .equals() is the correct way (see: How do I compare strings in Java? for a good explanation) , although because I'm not sure how the android internals work and you said it worked before, that isn't your problem. Your problem is that your check

if (accepted == true) {/** code */}

isn't run on the on click listener. Because it isn't, that thread (I'm assuming it spawns a new thread to show the dialog) keeps running.

I'm also assuming before you moved this code, you had declared a

booleanaccepted=true; //or initialized it to true somewhere

But when you moved it you didn't reinitialize it. Now, because the default value of a primitive is false, in your new code it gets to the check before you press a dialog button, and never commit the new version.

My advice would be put what's in the

accepted == true

block simply into your listener for the positive button click.

Post a Comment for "One-time Alertdialog Showing On Every Run"