2017-02-17 13 views
1

プロジェクトでMvvmCrossとXamarin Supportライブラリを使用しています.MvvmCrossをバージョン4.2.0から4.4.0に、Xamarin Support Packagesをバージョン23.3.0から25.1.1に更新した後私はプロジェクトを実行できません。 SplashScreenでエラーが発生してアプリがクラッシュする:MvvmCross.Platform.IoC.MvxPropertyInjector型のデフォルトのコンストラクタが見つかりません。デバッグモードとリリースモードでエラーが発生します。デフォルトのコンストラクタがMvxPropertyInjectorタイプで見つかりません

マイスプラッシュ:

[Activity(Icon = "@drawable/ic_launcher", 
     Theme = "@style/InflorTheme.Splash", 
     NoHistory = true, 
     MainLauncher = true, 
     ScreenOrientation = ScreenOrientation.Portrait)] 
    public class SplashScreen : MvxSplashScreenActivity 
    { 
     protected override void OnCreate(Bundle bundle) 
     { 

       base.OnCreate(bundle); 
     } 
    } 

答えて

1

あなたLinkerPleaseIncludeファイルに以下を追加します。あなたが唯一のリフレクションを通じて呼び出されるコードを捨てていないしていないリンカのための他のヒントが必要な場合があります

public void Include(MvvmCross.Platform.IoC.MvxPropertyInjector injector) 
{ 
    injector = new MvvmCross.Platform.IoC.MvxPropertyInjector(); 
} 

+0

私は現在、同じ問題を抱えています。これは、JavaとAndroidのapiをアップグレードした後に起こりました。初心者の方にはLinkerPleaseInclude.csファイルがなく(mvvmcrossを追加しても追加されませんでした)、手動でこのコードを追加すると何もしないように見えます(これは2年前と同じ問題の解決策でした)。試みた[this](http://stackoverflow.com/questions/23581846/xamarin-linker-default-constructor-not-found-for-type-cirrious-crosscore-ioc-m/)。私は問題がアセンブリのリンクにあることは知っていますが、たとえそれをnoneに設定しても、同じ問題はそのままです。 – SilentStorm

+0

[changelog](https://developer.android.com/about/versions/nougat/android-7.0-changes.html)から:「Android 7.0以降、システムはアプリが非NDKライブラリと動的にリンクするのを防ぎますが、これにより、アプリがクラッシュする可能性があります。この動作の変更は、プラットフォームのアップデートやデバイス間で一貫性のあるアプリエクスペリエンスを作成することを目指しています。コードがプライベートライブラリとリンクしていない場合でも、そうしている可能性があります。これについて何かを得ましたか? – SilentStorm

+0

これは、_mono_リンカーによってリンクされているC#コードです。 – Cheesebaron

関連する問題