5

我正在制作一个应用程序,我使用 ImageLoading Framework 从服务器下载图像并将 URL 放入缓存中。现在我想要更新用户的个人资料图片,但即使在服务器上更新了个人资料图片后,它也不会显示在应用程序中。

该应用程序正在显示用户的旧个人资料图片。为什么会出现这个问题,我该如何解决?

更新onclick的代码:

update_profile_pic.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        v.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
        String value_for_test="delete";
        Toast.makeText(getBaseContext(), "it works", Toast.LENGTH_SHORT).show();
        Intent i=new Intent(getApplicationContext(),ProfilePictureCaptureHomeActivity.class);
        i.putExtra("image",value_for_test);
        startActivity(i);

个人资料图片捕获首页

DBAdapter db = new DBAdapter(getApplicationContext()); 
db.open();
if (null == phoneNumber) 
{ 
    Cursor c = db.getUserInfo();
    phoneNumber = c.getString(0);
    imageUrl = c.getString(1);
    
    System.out.println("the imageUrl is"+imageUrl);
    c.close(); 
}
setContentView(R.layout.profilepic_capture); 
if (null == imageUrl) 
{ 
    Cursor imageUrlObj = db.getUserInfo();
    imageUrl = imageUrlObj.getString(1);
    System.out.println("the imageurl is"+imageUrl);
    
    imageUrlObj.close(); 
}
db.close();

用于更新个人资料图片:

if(image!=null){
    Toast.makeText(getApplicationContext(), "Redirected", Toast.LENGTH_LONG).show();
    imageUrl=null;   
}
if(imageUrl != null)
{
    Intent uploadimg = new Intent(ProfilePictureCaptureHomeActivity.this,ListeningAndSharingHomeActivity.class);
    uploadimg.putExtra("phoneNumber", phoneNumber);
    startActivity(uploadimg);
}
else
{
    Log.v("ProfilePictureCaptureHomeActivity", "Staying Here");
}

_gallerybutton = (ImageButton) findViewById(R.id.btn_gallery);
_photobutton = (ImageButton) findViewById(R.id.btn_photo); 
System.out.println("here in popup phoneeeeee" + phoneNumber); 
System.out.println("here in flag************" + firstUpload);

_gallerybutton.setOnClickListener(new OnClickListener() { 
    @Override
    public void onClick(View v) {
        v.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
        System.out.println("here in galleryyyyyyyyyy");
        Intent uploadimg = new Intent(ProfilePictureCaptureHomeActivity.this,ProfilePicFromGallery.class);
        uploadimg.putExtra("phoneNumber", phoneNumber); 
        startActivity(uploadimg);
    }
});

_photobutton.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        v.performHapticFeedback(HapticFeedbackConstants.KEYBOARD_TAP);
        System.out.println("here in take piccccc");
        Intent capIntent = new Intent(ProfilePictureCaptureHomeActivity.this,ProfilePicFromCamera.class);
        startActivity(capIntent);
    }
});
        
4

1 回答 1

0

看看这段代码。

private  String deleteExistingFile(String url , Context context) 
{


    String SaveFolderName = context.getFilesDir().getAbsolutePath()  + "/yourinternalmemoryfolder"; 

    String  str_randomnumber= url.substring(url.lastIndexOf("/") + 1);
    File wallpaperDirectory = new File(SaveFolderName);
        if (!wallpaperDirectory.exists())
        wallpaperDirectory.mkdirs();                
    String  Photo_ImagePath=SaveFolderName+"/" + str_randomnumber ;                 


    String result = "";
    System.out.println("file path to be deleted " + Photo_ImagePath);

         File f = new File(Photo_ImagePath);
          if (f.exists())
          {
              System.out.println(" EEEEEEEEEEXXXXXXXXIIIIISSSSSSSTTTTTTT ");
          try {
            if(f.delete() == true){
                result = "Success";
            }else{
                result = "Failure";
            }

          }

          catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();

            return "Error";
        }

          }

          System.out.println("deleting existing file " + result);
        return result;

}
于 2013-04-22T07:11:43.733 回答