java代码:

package com.sxt.day04_05;


import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;


import com.sxt.day04_05.R;


import android.app.Activity;
import android.os.Bundle;
import android.util.Log;


public class MainActivity extends Activity {
String mUsers;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("main","onCreate()");
if(savedInstanceState==null){// 若是第一次创建MainActivity
//从服务端下载users.json文件
downloadUsers();
}else{
mUsers=savedInstanceState.getString("users");
Log.i("main",mUsers);
}
}


//从服务端下载users.json文件
private void downloadUsers() {
new Thread(){//sdk从4.0开始要求下载数据必须在工作线程中执行
public void run() {
InputStream in =null;
try {
URL url=new URL("http://10.0.2.2/users.json");
URLConnection conn = url.openConnection();
in = conn.getInputStream();
byte[] buffer=new byte[1024];
int len = in.read(buffer);
mUsers=new String(buffer, 0, len);
Log.i("main",mUsers);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(in!=null){
try {
in.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
};
}.start();
}


@Override
protected void onStart() {
super.onStart();
Log.i("main","onStart()");
}

@Override
protected void onResume() {
super.onResume();
Log.i("main","onResume()");
}

@Override
protected void onPause() {
super.onPause();
Log.i("main", "onPause()");
}

@Override
protected void onStop() {
super.onStop();
Log.i("main","onStop()");
}

@Override
protected void onDestroy() {
super.onDestroy();
Log.i("main","onDestroy()");
}

@Override
protected void onRestart() {
super.onRestart();
Log.i("main","onRestatr()");
}

@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Log.i("main","onSaveInstanceState()");
outState.putString("users", mUsers);
}

@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Log.i("main","onRestoreInstanceState()");
}
}

本文出自 “追随心的彼岸” 博客,谢绝转载!

更多相关文章

  1. Android http文件上传-本地+服务器一条龙分析
  2. Android 可選文件格式瀏覽器
  3. android一个简单的线程实例
  4. Android操作SD卡文件
  5. Android强制在主线程进行网络请求
  6. Android 之 将RAW资源文件写入SD卡工具类
  7. Android 上传文件[转]
  8. 挂载android只读文件系统为可读写
  9. android 之 读取本地json文件返回string

随机推荐

  1. 传智播客成都java培训中心andriod实训班
  2. Android辅助功能
  3. Android(安卓)中进程、Activity、Boradca
  4. 【专家专栏】Android中的防缓冲区溢出技
  5. Android(安卓)动态设置TextView的drawabl
  6. 如何修改Android5.1系统音量大小
  7. Android中 Lottie库初步实践与应用场景分
  8. Android之——使用Android(安卓)studio创
  9. 这是一篇描述 Broadcasts 的文章
  10. Android(安卓)Application Digital Signa