MainActivity
里面用的是异步任务下载的图片
package com.jj.rikao_15;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
private ImageView iv;
//地址
private String path="http://ent.k618.cn/ylzx/201607/W020160718836443319007.jpeg";
private Context context;
private Bitmap bitmap=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iv=(ImageView)findViewById(R.id.iv);
context=this;
getDate();
}
//异步下载
private void getDate() {
new AsyncTask<String,Void,Bitmap>(){
@Override
protected Bitmap doInBackground(String... strings) {
byte[] bytes=HttpUtils.getDateFrom(path);
//保存图片到手机里面
Bitmap bitmap= BitmapFactory.decodeByteArray(bytes,0,bytes.length);
File file=new File(context.getExternalCacheDir(),"9007.jpg");
try {
FileOutputStream fos=new FileOutputStream(file);
fos.write(bytes);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return bitmap;
}
@Override
protected void onPostExecute(Bitmap bitmap) {
super.onPostExecute(bitmap);
if (bitmap!=null){
iv.setImageBitmap(bitmap);
}
}
}.execute();
}
}
HttpUtils--网上下载
package com.jj.rikao_15;
import android.graphics.Bitmap;
import android.util.Log;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
/**
* Created by jj on 2018/1/12.
*/
public class HttpUtils {
public static byte[] getDateFrom(String path){
try {
URL url=new URL(path);
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
//GET下载
conn.setRequestMethod("GET");
//提交
conn.connect();
//判断是否请求成功
if (conn.getResponseCode()==200){
Bitmap bitmap=null;
InputStream is=conn.getInputStream();
ByteArrayOutputStream os=new ByteArrayOutputStream();
int len=0;
byte[] b=new byte[1024];
while ((len=is.read(b))!=-1){
os.write(b,0,len);
}
return os.toByteArray();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
权限
<uses-permission android:name="android.permission.INTERNET"/>