Android - Prevent onResume() function if Activity is loaded for the first time (without using SharedPreferences)
android, android-activity, android-lifecycle, onresume, sharedpreferences
Solution
Firstly, as RvdK says, you should not modify the Android Activity lifecycle, you probably have to re-design your activity behavior in order to be compliant with it.
Anyway, this is the best way that I see:
1.Create a boolean variable inside your Activity
public class MyActivity extends Activity{
boolean shouldExecuteOnResume;
// The rest of the code from here..
}
2.Set it as false inside your onCreate:
public void onCreate(){
shouldExecuteOnResume = false
}
3.Then in your onResume:
public void onResume(){
if(shouldExecuteOnResume){
// Your onResume Code Here
} else{
shouldExecuteOnResume = true;
}
}
In this way your `onResume` will not be executed the first time (`shouldExecuteOnResume` is false) but it will be instead executed all the other times that the activity is loaded (because `shouldExecuteOnResume` will be true). If the activity is then killed (by the user or the system) the next time it will be loaded the `onCreate` method will be called again so `onResume` will not be executed, etc..
Problem
In my current application the onResume function is triggered when I load an Activity for the first time . I looked into the Activity Lifecycle, but I didn't find a way to prevent this from happening. Can I prevent the onResume() function from loading when an Activity is loaded for the first time, without using SharedPreferences?