android学習-androidがappを終了する機能を簡単に実現し、restartPackageではない
2.1ではrestartPackageというメソッドを使用できますが、2.2ではサポートされていません.sdk levはappを終了したが再起動できないと判断した.2.1シミュレータ2.2でテストしたhtcマシン
アプリケーションを終了し、再ログイン、クラスログアウト、アカウントの切り替え、サイトなどを実現
この方法はIActivityでそのクラスを実現するために使用できることを書くことができる.
他のActivityを作成するときは、addをallActivitylistに格納します.
int currentVersion = android.os.Build.VERSION.SDK_INT;
if (currentVersion > android.os.Build.VERSION_CODES.ECLAIR_MR1) {
// MainActivity app
Thinksns.exitApp();
/*
* Intent startMain = new Intent();
* startMain.setClass(ThinksnsSiteList.this,
* ThinksnsActivity.class);
* startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
* startActivity(startMain);
* System.exit(0);
*/
} else {
// android2.1 restartPackage app
ActivityManager activityManager = (ActivityManager)
getSystemService(Context.ACTIVITY_SERVICE);
activityManager.restartPackage("com.thinksns.android");
IActivity.exitApp();
}
アプリケーションを終了し、再ログイン、クラスログアウト、アカウントの切り替え、サイトなどを実現
public static ArrayList<Activity> allActivity=new ArrayList<Activity>();// Activity
public static int lastActivityId;
// name Activity
public static Activity getActivityByName(String name){ Activity getac=null;
for(Activity ac:allActivity)
{
if(ac.getClass().getName().indexOf(name)>=0)
{
getac=ac;
}
}
return getac;
}
//
public static void exitApp(){
((MainActivitye)Thinksns.getActivityByName("MainActivitye")).exitApp();
}
この方法はIActivityでそのクラスを実現するために使用できることを書くことができる.
public void exitApp() {
// TODO Auto-generated method stub
this.finish();
}
他のActivityを作成するときは、addをallActivitylistに格納します.