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. SDK,NDK,ADT工具下载常用地址
  2. Android(安卓)各种工具类 图片下载工具类:BitmapUtil
  3. android异步操作AsyncTask编写文件查看器
  4. android一个简单的线程实例
  5. Android之针对webview的缓存
  6. Android(安卓)可選文件格式瀏覽器
  7. android(6)(读数据的一些权限)
  8. Android(安卓)http文件上传-本地+服务器一条龙分析
  9. NPM 和webpack 的基础使用

随机推荐

  1. Android中定时器的使用(Timer)
  2. Android中简单调用图片、视频、音频、录
  3. unity 代码安装Android(安卓)apk
  4. android 布局之RelativeLayout(相对布局)
  5. ButterKnife 8.4添加使用
  6. Android(安卓)Dialog和AlertDialog的一些
  7. android SeekBar双滑块
  8. RxJava 链式调用流程源码记录分析(以map()
  9. Android之监听View的两个指头是放大和缩
  10. Spatialite for Android编译及测试