2017-04-12 4 views
0

私はサーバーに画像を保存しましたが、今はアンドロイドコードからその画像をダウンロードしたいと思います。私はサーバーから画像を読み込むためにピカソライブラリを使用しています。アンドロイドのピカソライブラリを使ってURLから画像を保存するには?

しかし、私はSDCardにダウンロードして保存する方法が分かりません(Picassoライブラリまたは他のライブラリのみを使用しています)。 だから誰も私には何か作業コードを提案!

私はこのコード

あなたの動的な権限とマニフェストファイルがこれを辿るproperly.Pleaseを設定されていることを確認してください..Pleaseあなたの外部ストレージにビットマップを保存するためのコードの上
Picasso.with(this).load("server url").fetch(new Callback() { 
     @Override 
     public void onSuccess() { 

     } 

     @Override 
     public void onError() { 

     } 
    }); 
+0

特定のフォルダに保存したい場合は、_Target_でpicassoをコールバックするとビットマップが返され、そのビットマップを特定のフォルダに保存することができます – Piyush

+0

コールバックも使用していますが、私はイマを得ることができますge。 – Mehul

+1

_onBitmapLoaded_メソッドでは、イメージになるビットマップを取得できます。 – Piyush

答えて

0
//save image 
    public static void imageDownload(Context ctx, String url){ 
     Picasso.with(ctx) 
       .load("http://blog.concretesolutions.com.br/wp-content/uploads/2015/04/Android1.png") 
       .into(getTarget(url)); 
    } 

    //target to save 
    private static Target getTarget(final String url){ 
     Target target = new Target(){ 

      @Override 
      public void onBitmapLoaded(final Bitmap bitmap, Picasso.LoadedFrom from) { 
       new Thread(new Runnable() { 

        @Override 
        public void run() { 

         File file = new File(Environment.getExternalStorageDirectory().getPath() + "/" + url); 
         try { 
          file.createNewFile(); 
          FileOutputStream ostream = new FileOutputStream(file); 
          bitmap.compress(Bitmap.CompressFormat.JPEG, 80, ostream); 
          ostream.flush(); 
          ostream.close(); 
         } catch (IOException e) { 
          Log.e("IOException", e.getLocalizedMessage()); 
         } 
        } 
       }).start(); 

      } 

      @Override 
      public void onBitmapFailed(Drawable errorDrawable) { 

      } 

使用を使用していますディスカッションSaving image from url using Picasso?

+0

はい次回は、あなたが解決策を見つけたURLを与えます。 [http://stackoverflow.com/a/32799659/3763848](http://stackoverflow.com/a/32799659/3763848) –

+0

@VassilisPallas私はすでにそれをした –

+0

あなたはピカソでうまくいくのですか?ピカソがjpgファイルをビットマップに変換するのはかなり奇妙です。またはpngファイル。かなり奇妙。それは単にファイルのバイトを送ってください。または、受け取ったバイトをファイルに直接保存してください。それはできますか? – greenapps

関連する問題