Search code examples
androidparse-platformonresumeonbackpressedandroid-sharedpreferences

An Image Downloaded From Parse Stay On Screen Even After You Exit And Reopen App?


I have an app that downloads an image from Parse.com and displays that image in an Image View

The problem is that whenever I exit the app (with the back button) and return the image is gone.

How can I make the image stay?

(For example: when you update your profile pic on Twitter and leave the app and return your profile pic will still be displayed)

Any help would be greatly appreciated this is very important.

MainActivity:

public class MainActivity extends Activity {
    Button button;
    private ProgressDialog progressDialog;

    /** Called when the activity is first created. */
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Get the view from main.xml
        setContentView(R.layout.activity_main);
        // Show progress dialog

        // Locate the button in main.xml
        button = (Button) findViewById(R.id.button);

        // Capture button clicks
        button.setOnClickListener(new OnClickListener() {
            public void onClick(View arg0) {

                progressDialog = ProgressDialog.show(MainActivity.this, "",
                        "Downloading Image...", true);

                // Locate the class table named "ImageUpload" in Parse.com
                ParseQuery<ParseObject> query = new ParseQuery<ParseObject>(
                        "ImageUploads");

                // Locate the objectId from the class
                query.getInBackground("h3FvFzrHPr",
                        new GetCallback<ParseObject>() {

                            public void done(ParseObject object,
                                    ParseException e) {
                                // TODO Auto-generated method stub

                                // Locate the column named "ImageName" and set
                                // the string
                                ParseFile fileObject = (ParseFile) object
                                        .get("imageContent");
                                fileObject
                                        .getDataInBackground(new GetDataCallback() {

                                            public void done(byte[] data,
                                                    ParseException e) {
                                                if (e == null) {
                                                    Log.d("test",
                                                            "We've got data in data.");
                                                    // Decode the Byte[] into
                                                    // Bitmap
                                                    Bitmap bmp = BitmapFactory
                                                            .decodeByteArray(
                                                                    data, 0,
                                                                    data.length);

                                                    // Get the ImageView from
                                                    // main.xml
                                                    ImageView image = (ImageView) findViewById(R.id.image);

                                                    // Set the Bitmap into the
                                                    // ImageView
                                                    image.setImageBitmap(bmp);

                                                    // Close progress dialog
                                                    progressDialog.dismiss();

                                                } else {
                                                    Log.d("test",
                                                            "There was a problem downloading the data.");
                                                }
                                            }
                                        });
                            }
                        });
            }

        });
    }
}

Solution

  • The answer to this question is here: How To Create An App That Allows For Profile Picture Upload/Change?

    I have resolved the problems I have been facing