判断是否第一次进入应用

   判断是否第一次进入应用,以决定是否启动引导页。

   这个都用常规方法,使用SharePreference进行保存变量,然后每次进入应用时首先先检测变量的值,来决定是否启动引导页

 代码如下:

public class SplashActivity extends Activity {  
   
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        //setContentView(R.layout.activity_splash);  
           
        boolean mFirst = isFirstEnter(SplashActivity.this,SplashActivity.this.getClass().getName());  
        Toast.makeText(this, mFirst+"", Toast.LENGTH_SHORT).show();  
        if(mFirst)  
            mHandler.sendEmptyMessageDelayed(SWITCH_GUIDACTIVITY,100);  
        else  
            mHandler.sendEmptyMessageDelayed(SWITCH_MAINACTIVITY,100);  
        SharedPreferences sharedPreferences= this.getSharedPreferences("my_pref", MODE_PRIVATE);  
        sharedPreferences.edit().putString("guide_activity", "false").commit();  
          
          
    }     
       
    private static final String SHAREDPREFERENCES_NAME = "my_pref";  
    private static final String KEY_GUIDE_ACTIVITY = "guide_activity";  
    private boolean isFirstEnter(Context context,String className){  
        if(context==null || className==null||"".equalsIgnoreCase(className))return false;  
        String mResultStr = context.getSharedPreferences(SHAREDPREFERENCES_NAME, Context.MODE_WORLD_READABLE)  
                 .getString(KEY_GUIDE_ACTIVITY, "");//取得所有类名 如 com.my.MainActivity  
        if(mResultStr.equalsIgnoreCase("false"))  
            return false;  
        else  
            return true;  
    }  
        
    private final static int SWITCH_MAINACTIVITY = 1000;  
    private final static int SWITCH_GUIDACTIVITY = 1001;  
    public Handler mHandler = new Handler(){  
        public void handleMessage(Message msg) {  
            switch(msg.what){  
            case SWITCH_MAINACTIVITY:  
                Intent mIntent = new Intent();  
                mIntent.setClass(SplashActivity.this, Welcome.class);  
                SplashActivity.this.startActivity(mIntent);  
                SplashActivity.this.finish();  
                break;  
            case SWITCH_GUIDACTIVITY:  
                mIntent = new Intent();  
                mIntent.setClass(SplashActivity.this, GuideActivity.class);  
                SplashActivity.this.startActivity(mIntent);  
                SplashActivity.this.finish();  
                break;  
            }  
            super.handleMessage(msg);  
        }  
    };  
}  


你可能感兴趣的:(android知识)