android


Android restart app after clearing cache and data


I have an app which requires data cleaning to work better again.
I am clearing data using,
((ActivityManager)MainActivity.this.getSystemService(ACTIVITY_SERVICE))
.clearApplicationUserData();
But cannot restart the app. I tried adding intent after clearing data. But since the app closes after clearing data. I think that code is unreachable.
((ActivityManager)MainActivity.this.getSystemService(ACTIVITY_SERVICE)).clearApplicationUserData(); Toast.makeText(MainActivity.this,"Reloading...",Toast.LENGTH_SHORT).show();
startActivity(new Intent(MainActivity.this,MainActivity.class));
finish();
Create new ApplicationClass like below
public class ApplicationClass extends Application {
private static ApplicationClass instance;
#Override
public void onCreate() {
super.onCreate();
instance = this;
}
public static ApplicationClass getInstance() {
return instance;
}
}
Add Application class to Application tag of manifest
android:name=".ApplicationClass"
<application
android:allowBackup="true"
android:icon="#mipmap/ic_launcher"
android:label="#string/app_name"
android:roundIcon="#mipmap/ic_launcher_round"
android:name=".ApplicationClass"
android:supportsRtl="true"
android:theme="#style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
And use this code for clearing data
Intent intent = new Intent(MainActivity.this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_CLEAR_TASK
| Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pendingIntent = PendingIntent.getActivity(ApplicationClass.getInstance().getBaseContext(), 0, intent, PendingIntent.FLAG_ONE_SHOT);
AlarmManager mgr = (AlarmManager) ApplicationClass.getInstance().getBaseContext().getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 100, pendingIntent);
System.exit(2);
((ActivityManager)MainActivity.this.getSystemService(ACTIVITY_SERVICE)).clearApplicationUserData();
After calling clearApplication data, application is killed.Thats why MainActivity doesn't called.
For Clear cache try reference link
Try below code for restart app
Intent i = getBaseContext().getPackageManager()
.getLaunchIntentForPackage( getBaseContext().getPackageName() );
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
finish();
Note: If you use clear the app data app doesn't restart. You have to restart it again manually.

Related Links

Getting frequent AUTHENTICATIONFAILED while using Android AccountManager for a Gmail account
How to force draw over other apps permission in M
My setOnLongClickListner is not working
File explorer in sqlite database of android studio
android media player stops playing after some minutes
android studio version control can't ignore file
retrofit2/OkHttp3 cancel all API requests
Cannot move into data/data/package (RenameTo fails with ErrnoException EXDEV, Cross-device link)
onTouchListener and onClickListener on single widget
android emulator not showing the login page data
Open facebook page in App not the browser
Receiver receive long sms but showing it multiple times
Xamarin - No resource found that matches the given name (at 'theme' with value '#style/MyTheme')
How to make a third dependency or jar in Android studio?
How to resize Image to button?
The show method for fragment transactions isn't working

Categories

HOME
uml
django
gdb
c++11
android-studio-2.2
gradient
scripting
square
mapbox
iis-6
commonjs
google-chrome-app
vimdiff
enthought
distribution
pega
activecollab
tput
radgridview
gkturnbasedmatch
dynatrace
searchview
atlassian-stash
mvc-mini-profiler
chargify
soci
digital-signature
identity-management
pimcore
jasmine-node
send
mockjax
database-comparison
testbed
angularjs-material
playstation-portable
hreflang
installshield-le
dynamic-jasper
html-encode
imx6
apiary.io
filesystemwatcher
watchface
vmware-fusion
ssrs-2014
wc
plan-9
zenhub
type-theory
mongodb-php
installshield-2010
http-status-code-401
phpwebsocket
design-principles
user-management
jnlua
canalyzer
ember-cli-rails
vacuum
nsurlsessiondatatask
fail2ban
kubuntu
formview
cbind
kissfft
rcaller
mutual-authentication
fpdi
synapse
qscrollarea
drupal-nodes
cmmi
mantle
intersect
failing-tests
expression-blend-4
xui
http-daemon
timertask
object-database
wordprocessingml
technical-debt
cardspace
appliance
commercial-application

Resources

Encrypt Message