Сохранить изображение с URL

Я хочу сохранить изображение из URL с помощью кнопки в моем коде. Я создал папку назначения, но я пробовал разные коды для сохранения изображения, но ничего не работает:

public class B_X extends Activity {   
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.bx);

        Button buttonSetWallpaper = (Button)findViewById(R.id.bSetWall);
        buttonSetWallpaper.setOnClickListener(new Button.OnClickListener(){

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                File folder = new File(Environment.getExternalStorageDirectory() + "/PerfectAss/");
                boolean success = false;
                if (!folder.exists()) {
                    success = folder.mkdirs();
                }

                if (!success) {
            } else {
            }

                 Toast.makeText(getApplicationContext(), "The image has been saved", Toast.LENGTH_LONG).show();
                    URL url = new URL ("http://bitsparrow.altervista.org/wp-content/uploads/2013/04/5.jpg");
                    InputStream input = url.openStream();
                     try {

                       File storagePath = Environment.getExternalStorageDirectory();
                       OutputStream output = new FileOutputStream (storagePath + "/myImage.png");
                       try {
                            byte[] buffer = new byte[1500];
                             int bytesRead = 0;
                             while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0) {
                             output.write(buffer, 0, bytesRead);
                             }
                             } finally {
                               output.close();
                              }
                              } finally {
                              input.close();
                              }

Пожалуйста, помогите мне исправить этот код.

 NaserShaikh28 мая 2013 г., 13:14
если бы вы искали в Google тот же вопрос, выполучу 100 ссылок.
 Sander van't Veer28 мая 2013 г., 13:14
Так что вы на самом деле пытались? Поскольку приведенный выше код не показывает ничего, что связано с загрузкой изображения и его сохранением.
 Gioele28 мая 2013 г., 13:30
Я отредактировал вопрос и ввел код, который использовал
 Gioele28 мая 2013 г., 13:17
Я положил то, что я чувствовал?
 JannGabriel28 мая 2013 г., 13:20
вы НИЧЕГО не сделали с загрузкой изображения, вы просто проверили, существует ли каталог (PerfectAss), и создали его, если нет. Поиск получить изображение с URL на Android. PS: Что, черт возьми, будет делать ваше приложение? Какое имя вы положили в каталог изображений. Помните о политике содержания Google Play

Ответы на вопрос(2)

Решение Вопроса

использовать его так просто: сохранить файл в"sdcard/dhaval_files/", просто замените имя вашей папки и дайте разрешениеwrite_external_storage в файле манифеста Android.

public void file_download(String uRl) {
        File direct = new File(Environment.getExternalStorageDirectory()
                + "/dhaval_files");

        if (!direct.exists()) {
            direct.mkdirs();
        }

        DownloadManager mgr = (DownloadManager) this.getSystemService(Context.DOWNLOAD_SERVICE);

        Uri downloadUri = Uri.parse(uRl);
        DownloadManager.Request request = new DownloadManager.Request(
                downloadUri);

        request.setAllowedNetworkTypes(
                DownloadManager.Request.NETWORK_WIFI
                        | DownloadManager.Request.NETWORK_MOBILE)
                .setAllowedOverRoaming(false).setTitle("Demo")
                .setDescription("Something useful. No, really.")
                .setDestinationInExternalPublicDir("/dhaval_files", "test.jpg");

        mgr.enqueue(request);

    }
 Dhawal Sodha Parmar28 мая 2013 г., 15:24
Вы должны просто вызвать этот метод. дон»положить весь код в onclick. просто сделайте как: public void onClick (View arg0) {file_download ("www.xyz/mobile/img/test.jpg»)}
 Gioele28 мая 2013 г., 15:21
большое спасибо, но я поставил его под, но я могу поставить его в публичном void onClick (View arg0)?
 ilovebali28 апр. 2015 г., 09:12
Этот код отлично работает для меня, большое спасибо :)
 Gioele28 мая 2013 г., 15:45
спасибо, но я хочу сохранить изображение с помощью кнопки, а затем сохраненное изображение, я должен использовать его для другой деятельности, как я могу это сделать?

Вы включили разрешение в свой файл манифеста


И попробуйте этот код

Или попробуйте этот код, он будет работать

URL url = new URL ("file://some/path/anImage.png");
InputStream input = url.openStream();

try {
    //The sdcard directory e.g. '/sdcard' can be used directly, or 
    //more safely abstracted with getExternalStorageDirectory()
    File storagePath = Environment.getExternalStorageDirectory();
    OutputStream output = new FileOutputStream (storagePath + "/myImage.png");

    try {
        byte[] buffer = new byte[aReasonableSize];
        int bytesRead = 0;

        while ((bytesRead = input.read(buffer, 0, buffer.length)) >= 0) {
            output.write(buffer, 0, bytesRead);
        }
    } finally { output.close(); }
} finally { input.close(); }
 Gioele28 мая 2013 г., 13:26
URL url = новый URL ("
 Gioele28 мая 2013 г., 13:18
да, у меня есть разрешение
 Zeeshan Chaudhry28 мая 2013 г., 13:21
хорошо, попробуйте этот код и подробности проверьте эту ссылкуandroid-example-code.blogspot.in/p/...

Ваш ответ на вопрос