1)判断程序是否是第一次执行
首先Sharedferences是实现Android读写外部数据的方法了。
SharedPreferences sharedPreferences = this.getSharedPreferences("share", MODE_PRIVATE);
boolean isFirstRun = sharedPreferences.getBoolean("isFirstRun", true);
editor = sharedPreferences.edit();
if (isFirstRun)
{
showToast("第一次点击");
$.util.threadDelayed(1500, new SNThreadDelayedListener() {
@Override
public void onFinish() {
gotoActivity(GuideActivity.class,false);
editor.putBoolean("isFirstRun", false);
editor.commit();
}
});
} else
{
$.util.threadDelayed(1500, new SNThreadDelayedListener() {
@Override
public void onFinish() {
showToast("不是第一次点击");
gotoActivity(MainActivity.class,true);
}
});
}
实现的逻辑就是当我们是第一次启动app应用的时候,此时我们就创建SharedPreferences对象,并创建一个SharedPreferences对象,而在这个对象中设置一个boolean变量,并且第一次的时候设置成true,那么此时就表示的是我们第一次进入应用程序,而且是当我们第一次进入到应用程序时,将该boolean变量设置成false,那么,此时就将SharedPreferences中的boolean类型的变量改为了false,那么就表示的是不是第一次启动应用程序。
SharedPreferences的作用就是类似于sqlite数据库的作用,只是比sqlite数据库更加的轻量级。
2) 用来保存临时数据
注意点:
1)在进行保存临时数据时,使用SharedPreferences时,先要创建SharedPreferences对象和SharedPreferences.Editor对象,在保存对象时,就是使用editor利用键值对的形式进行保存的,但是在保存完对象后,要使用editor对象的commit()方法进行提交;
2)当要从SharedPrefences对象中取出相应的对象时,还是要先创建SharedPrefences对象,利用sharedPrefences对象进行取出相关数据。
3)删除SharedPreferences中已经缓存的数据
editor.clear();
editor.commit();
使用editor.clear()方法后,此时缓存在SharedPreferences中的数据就全部清除了,但是在要清除数据,也就是使用editor.clear()方法后,还是要进行提交的,就是使用editor.commit()方法,否则清除数据是无效的。