Xamarin で Android 向けにビルドしたところ、アプリケーションを実行してすぐに強制終了する現象に遭遇した。強制終了時の画面のスクリーンショットを撮るのを忘れてしまった。。
とくにデバッガーにメッセージなど表示されなかった為、コンソールより adb logcat から出力を眺めていると以下のようなエラーメッセージが出ている事に気づいた。
12-09 17:24:09.252 28845 28845 E AndroidRuntime: Java.lang.RuntimeException: Unable to get provider mono.MonoRuntimeProvider: java.lang.RuntimeException: Unable to find application Mono.Android.Platform.ApiLevel_24 or Xamarin.Android.Platform!
Mono.Android.Platform.ApiLevel_24 もしくは Xamarin.Android.Platform が無いらしい。それまでビルドして正常に動いていた他のプロジェクトもソースコードを何もいじっていないのにビルドをし直すと同様のメッセージが出る。
心当たりがあるとすればこの前の日ぐらいに Android SDK のアップデートを行った事ぐらいか。
よくわからないが、他のプロジェクトでも発生するということは Android SDK もしくはビルドの設定がおかしいのだろうと当たりをつけ、とりあえずビルドターゲットを明示的に指定してビルドし直したら動くようになった。
ビルドターゲットは Android プロジェクトをダブルクリックもしくは右クリックより Project Options を開き、Build 欄 General にある Target framework のセレクトボックスから選択できる。
ここで自分の場合は対象を Android 6.0 (Marshmallow) を指定する事でビルドしなおしたらちゃんと動くようになった。
コメント