I changed in the imageworker class these methods
public void clearCache() {
new CacheAsyncTask().execute(MESSAGE_CLEAR);
}
public void flushCache() {
new CacheAsyncTask().execute(MESSAGE_FLUSH);
}
public void closeCache() {
new CacheAsyncTask().execute(MESSAGE_CLOSE);
}
to these
public void clearCache() {
clearCacheInternal();
}
public void flushCache() {
flushCacheInternal();
}
public void closeCache() {
closeCacheInternal();
}
in order to test your code. I think is the same with what you sent me.
As for the onDestroy you can check if it is being called with a
log.d(TAG,"onDestroy called); in the onDestroy and you can then check it in
the logcat while you are testing the app. You can also call the clearcache
to be more sure that it will always be called with the override of the
onBackPressed. Inside this you can call the clearcache. Another solution is
to chec isfinishing in the onPause method. If it is true you can call the
clearcache.
In order to implement the last two clearcache cases you have to call them
inside the imageGridActivity. In order to do this implement these methods
in this activity
private String gridFragmentTag;
public void setGridFragmentTag(String tag){
gridFragmentTag = tag;
}
public String getGridFragmentTag(){
return gridFragmentTag;
}
@Override
protected void onPause() {
super.onPause();
Log.i(TAG, "On Pause executed");
if (isFinishing()) {
Log.i(TAG, "isFinishing executed");
if(getGridFragmentTag() != null)
((ImageGridFragment)getSupportFragmentManager().findFragmentByTag(getGridFragmentTag())).clearCachesWhenExit();
}
}
or
//
onBackPressed(){
if(getGridFragmentTag() != null)
((ImageGridFragment)getSupportFragmentManager().findFragmentByTag(getGridFragmentTag())).clearCachesWhenExit();
}
and set the fragment tag from the imageGridFragment like this in the
onCreatview
((ImageGridActivity)getActivity()).setGridFragmentTag(getTag());
and implement this method in this fragment
public void clearCachesWhenExit(){
if(mImageFetcher != null){
mImageFetcher.clearCache();
}
}
By the way have you import the app and you are testing it? Have you succeed
to reproduce the problem?
--
--
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.