مشکل برنامه Downloader
سلام دوستان ، در این پروژه داخل SD-CARD برام فولدر file-downloder رو می سازه ولی داخلش فایل sample-image.png رو نمی سازه . هیچ اروری ندارم . روی امولیتور جدید و روی گوشی هم امتحان کردم ولی همین مشکل رو دارم . تو انجمن هم سرچ کردم ولی مشکلم حل نشد. کدها رو میزارم به نظرتون مشکل از کجاست ؟. در manifest.xml هم پرمیشن اندروید و نوشتن رو External Storage رو زدم .
Main Activity///////////////////////////////////////////////
package hassan.mosavi.app.downlaoder;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
new MyAsynctask().execute();
}
public class MyAsynctask extends AsyncTask<Void, Void, Boolean> {
@Override
protected Boolean doInBackground(Void... params) {
FileDownloader.download("http://192.168.1.49/file-server/img-2.png", G.DIR_APP + "/sample-image.png");
return null;
}
@Override
protected void onPostExecute(Boolean result) {
Toast.makeText(G.context, "finish", Toast.LENGTH_SHORT).show();
}
}
}
Class G////////////////////////////////////////////////
package hassan.mosavi.app.downlaoder;
import java.io.File;
import android.app.Application;
import android.content.Context;
import android.os.Environment;
public class G extends Application {
public static Context context;
public static final String DIR_SDCARD = Environment.getExternalStorageDirectory().getAbsolutePath();
public static final String DIR_APP = DIR_SDCARD + "/file-downloader";
public static final int DONLOAD_BUFFER_SIZE = 8 * 1024;
@Override
public void onCreate() {
super.onCreate();
context = this.getApplicationContext();
new File(DIR_APP).mkdirs();
}
}
File Download///////////////////////////////////////////////////////////
package hassan.mosavi.app.downlaoder;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
public class FileDownloader {
public static void download(final String downloadpath, final String filepath) {
try {
URL url = new URL(downloadpath);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setDoOutput(true);
connection.connect();
FileOutputStream outputstream = new FileOutputStream(filepath);
InputStream inputStream = connection.getInputStream();
byte[] buffer = new byte[G.DONLOAD_BUFFER_SIZE];
int len = 0;
while ((len = inputStream.read(buffer)) != -1) {
outputstream.write(buffer, 0, len);
}
inputStream.close();
outputstream.close();
}
catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
باتشکر
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
