毕加索未从网络服务加载最新图像

时间:2019-12-28 09:06:20

标签: php android web-services picasso

我正在使用Picasso将图像加载到Android应用中,但是从本地主机迁移到Web服务后,图像没有加载最新图像(每次更改图像时,我都使用相同的URL),然后我尝试使用log.d显示我的URL,当我打开它时,它显示旧图像,然后尝试刷新它,将其更改为新图像,而我的Android应用也更改为新图像(第一个活动)

当我尝试从Web服务下载图像时,它已经在下载最新的图像

我还有另一个活动,该活动具有从数据库中删除图像的方法(只是删除URL),因此,当我想显示最新图像时,我需要先删除它,然后更改图像,我的应用程序将显示最新图像,但是如果我不首先删除它,它也不会显示最新图像

但是我不需要在第一次活动中删除图像,因此我需要找到一种方法来立即将图像更改为最新图像

这就是我在Android中显示图片的方式

 public void F0_getPhoto(String UserId){
        Call<UserDataResponse> getPhoto = mApiService.getImage(
                UserId);
        getPhoto.enqueue(new Callback<UserDataResponse>() {
            @Override
            public void onResponse(Call<UserDataResponse> call, Response<UserDataResponse>response) {
                List<Image> list = new ArrayList<>();
                list = response.body().getImages();
                String iserror = response.body().getIserror();

                if (iserror.equals("false")) {
                    String[] url = new String[list.size()];
                    url[0] = list.get(0).getImage_url();
                    // url[i] = userDatalist.get(i).getImages().geImage_url();
                    Log.d("Url ", String.valueOf(url[0]));
                    showPhoto(url[0]);
                }
            }
            @Override
            public void onFailure(Call<UserDataResponse> call, Throwable t){
                Log.d("url TEST 2 ", "FAIL");
                Log.e("debug", "onFailure: ERROR > " + t.toString());
            }
        });
    }

showimage()


public void showPhoto(String url){
        Picasso.get()
                .load(url)
                .fit()
                .centerCrop()
                .networkPolicy(NetworkPolicy.NO_CACHE)
                .memoryPolicy(MemoryPolicy.NO_CACHE)
                .transform(new Form_Mhs_Menu.CircleTransform())
                .into(IV_mhs);
    }

这是我用于保存图像并获取图像的api

 public function saveFile($file, $extension, $no_user_id)
    {
       // $name = round(microtime(true) * 1000) . '.' . $extension;
       $name = $no_user_id . '.' . $extension;
        $filedest = dirname(__FILE__) . UPLOAD_PATH . $name;
        move_uploaded_file($file, $filedest);

        $url = $server_ip = gethostbyname(gethostname());

        $stmt = $this->conn->prepare("UPDATE user_data SET image=? WHERE no_user_id=?");
        $stmt->bind_param("ss", $name, $no_user_id);
        if ($stmt->execute())
            return true;
        return false;
    }

    public function getPhoto($no_user_id)
    {
        $stmt = $this->conn->prepare("SELECT image FROM user_data WHERE no_user_id=?");
        $stmt->bind_param("s", $no_user_id);
        $stmt->execute();
        $stmt->bind_result($url);

        $images = array();
        while ($stmt->fetch()) {

            $temp = array();
            $absurl = 'http://topsisfhj.xyz/BimbinganPA_JSI/include/'.UPLOAD_PATH.$url ;
            $temp['id'] = $no_user_id;
            $temp['url'] = $absurl;
            array_push($images, $temp);

        }

        return $images;
    }

0 个答案:

没有答案