这里是简单的使用方法
参考了http://blog.csdn.net/skyunicorn/article/details/51802724 感谢
首先是AndroidManifest 增加权限 因为我为了测试网络请求
<!--使用网络的权限-->
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<!--读写文件的权限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<!--在sdcard中创建/删除文件的权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
我的网络请求类
public class Network {
public static int download(String path, String save_path){
int code = 0;
try{
URL url = new URL(path);
URLConnection urlConnection = url.openConnection();
InputStream iStream = urlConnection.getInputStream();
FileOutputStream fileOutputStream = new FileOutputStream(save_path);
byte[] buffer = new byte[1024];
int byteread = 0;
while ((byteread = iStream.read(buffer)) != -1) {
fileOutputStream.write(buffer, 0, byteread);
}
fileOutputStream.close();
}catch(IOException e)
{
}
return code;
}
}
我的activity
public class ReflushGoogle extends Activity implements SwipeRefreshLayout.OnRefreshListener {
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (msg.what == 7)
{
//使下拉的动画消失,就是加载完毕的意思
swipeRefreshLayout.setRefreshing(false);
}
}
};
private SwipeRefreshLayout swipeRefreshLayout = null;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.reflush_google);
swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.reflush);
swipeRefreshLayout.setOnRefreshListener(this);
File file = new File(Environment.getExternalStorageDirectory().getPath() + "/android/demo/relushGoogle");
if (!file.exists())
{
file.mkdirs();
Log.i("xjxu", "创建文件夹");
}
}
//松开执行了刷新之后
@Override
public void onRefresh() {
new Thread()
{
@Override
public void run() {
super.run();
Network.download("https://img-blog.csdn.net/20160701164218499", Environment.getExternalStorageDirectory().getPath() + "/android/demo/relushGoogle/test.gif");
Log.i("xjxu", Environment.getExternalStorageDirectory().getPath() + "/android/demo/relushGoogle/test.gif");
handler.sendEmptyMessage(7);
}
}.start();
}
}
如果想要进行网络加载 必须是不同的线程
线程进行结束之后发送消息 进行处理