package com.nsmss.scuol.start; import java.util.Calendar; import com.nsmss.scuol.R; import com.nsmss.scuol.bean.GlobalInfo; import com.nsmss.scuol.dao.GlobalInfoDao; import com.nsmss.scuol.login.LoginActivity; import android.app.Activity; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; import android.os.Bundle; import android.os.Handler; public class StartActivity extends Activity { /** * 静态成员变量 */ private static Context context; private final int SPLASH_DISPLAY_LENGHT = 0; // TODO 改为延迟的毫秒数2000 /** * UI相关成员变量 */ /** * View相关成员变量 */ /** * Dao成员变量 */ private GlobalInfoDao gInfoDao; /** * 数据模型变量 */ private GlobalInfo gInfo; /** * 数据存储变量 */ /** * 状态变量 */ /** * 临时变量 */ private long timeStart; /** * Activity回调函数 */ @Override public void onCreate(Bundle savedInstanceState) { timeStart = System.currentTimeMillis(); // 继承父类方法,绑定View super.onCreate(savedInstanceState); setContentView(R.layout.activity_start); // 初始化context context = getApplicationContext(); // 初始化View成员变量 // 初始化Dao成员变量 gInfoDao = new GlobalInfoDao(context); // 初始化数据模型变量 gInfo = gInfoDao.query(); // 自定义函数 initGInfo(context); // 如果初始化消耗的时间小于预定时间 long timeInit = System.currentTimeMillis()-timeStart; if (timeInit < SPLASH_DISPLAY_LENGHT) { new Handler().postDelayed(new Runnable(){ @Override public void run() { jumpToLogin(); } }, SPLASH_DISPLAY_LENGHT-timeInit); } else { jumpToLogin(); } } @Override protected void onPause() { super.onPause(); } @Override protected void onStop() { super.onStop(); } @Override protected void onResume() { super.onResume(); } /** * 线程对象 */ /** * 自定义成员对象 */ /** * 自定义方法 */ private void initGInfo(Context context) { if (gInfo == null) { int version = 0; String vsersionStr = ""; try { PackageInfo pi=context.getPackageManager().getPackageInfo(context.getPackageName(), 0); version = pi.versionCode; vsersionStr = pi.versionName; } catch (Exception e) { version = 1; vsersionStr = "1.0"; } Calendar calendar = Calendar.getInstance(); int month = calendar.get(Calendar.MONTH)+1; int year = calendar.get(Calendar.YEAR); gInfo = new GlobalInfo(); gInfo.setVersion(version); gInfo.setVersionStr(vsersionStr); // TODO 改为相应学期开学时间 gInfo.setTermBegin("2013-09-08"); // 下半学期 if (month < 8) { gInfo.setYearFrom(year-1); gInfo.setYearTo(year); gInfo.setTerm(2); } // 上半学期 else { gInfo.setYearFrom(year); gInfo.setYearTo(year+1); gInfo.setTerm(1); } gInfo.setFirstUse(1); gInfo.setActiveUserUid(0); gInfoDao.insert(gInfo); } } private void jumpToLogin() { Intent intent = new Intent(StartActivity.this, LoginActivity.class); startActivity(intent); overridePendingTransition(R.anim.slide_right_in, R.anim.slide_left_out); finish(); } }