-2
この機能を実行すると、接続とファイルをダウンロードしてアプリをクラッシュさせたいと思っています。私はこの関数をデバッグしています。墜落した エラー:スレッドまたはインターネット用のAndroidエラー
FATAL EXCEPTION: main
Process: com.idegostaran.user.testqrsavedata, PID: 8500
android.os.NetworkOnMainThreadException
at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1273)
これを修正するにはどうすればよいですか?
public Bitmap download(String path){
try {
URL url=new URL(path);
HttpURLConnection connection=(HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.connect();
InputStream input=connection.getInputStream();
Bitmap bitmap= BitmapFactory.decodeStream(input);
String root= Environment.getExternalStorageDirectory().toString();
String fileName="test.jpg";
File file = new File(root,fileName);
if (file.exists()){
file.delete();
}
FileOutputStream out=new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG,90,out);
out.flush();
out.close();
return bitmap;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
答えは[this](https://stackoverflow.com/a/19941745/7413139)のリンクを参照できます – vaibhav