「Xamarin.Androidでアプリを完全に終了させる」の版間の差分

提供:MonoBook
ページの作成:「Xamarin.Androidでアプリを完全に終了させる == Android 5.0 (API 21) から == * FinishAndRemoveTaskメソッドを呼ぶだけ == Android 4.4 (API 20) まで...」
 
imported>Administrator
編集の要約なし
 
(他の1人の利用者による、間の1版が非表示)
9行目: 9行目:


== 実装例 ==
== 実装例 ==
<source>
<source lang="csharp">
     using Android.App;
     using Android.App;
     using Android.Widget;
     using Android.Widget;
50行目: 50行目:


== 関連項目 ==
== 関連項目 ==
* [[Xamarin.AndroidでGoogle Playからアプリ情報をブッコ抜く‎]]
* [[Xamarin.AndroidのIntentで外部アプリを起動する]]
* [[Xamarin.AndroidのIntentで外部アプリを起動する]]


[[category: Xamarin.Android]]
[[category: Xamarin.Android]]

2018年10月3日 (水) 04:30時点における最新版

Xamarin.Androidでアプリを完全に終了させる

Android 5.0 (API 21) から[編集 | ソースを編集]

  • FinishAndRemoveTaskメソッドを呼ぶだけ

Android 4.4 (API 20) まで[編集 | ソースを編集]

  • Activity属性に「ExcludeFromRecents = true」を設定する
  • Finishメソッドを呼ぶ

実装例[編集 | ソースを編集]

    using Android.App;
    using Android.Widget;
    using Android.OS;

    [Activity(Label = "finish", 
              MainLauncher = true, 
              Icon = "@mipmap/icon",
              ExcludeFromRecents = true)]
    public class MainActivity : Activity
    {
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            
            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);

            // Get our button from the layout resource,
            // and attach an event to it
            Button button = FindViewById<Button>(Resource.Id.myButton);

            button.Click += (s, e) => 
            {
                try
                {// Android5.0(API21)から
                    // FinishAndRemoveTaskメソッドを呼ぶだけでよい
                    this.FinishAndRemoveTask();
                }
                catch(Java.Lang.NoSuchMethodError)
                {// Android4.4(API20)まで
                    // Activityの属性に「ExcludeFromRecents = true」を設定した状態で
                    // Finishメソッドを呼ぶとFinishAndRemoveTaskメソッドと同じ挙動になる。
                    this.Finish();
                }
            };
        }
    }

関連項目[編集 | ソースを編集]