9

NuGet 2.5 バージョンを使用して MVVMCross NuGet パッケージをインストールしようとしています。モノアンドロイドとタッチファイルを Profile104 フォルダーに追加しました。それでも次の例外が発生します:

Attempting to resolve dependency 'MvvmCross.HotTuna.StarterPack (≥ 3.0.6)'.
Attempting to resolve dependency 'MvvmCross.HotTuna.CrossCore (≥ 3.0.6)'.
Attempting to resolve dependency 'MvvmCross.PortableSupport (≥ 3.0.6)'.
Installing 'MvvmCross.PortableSupport 3.0.6'.
Successfully installed 'MvvmCross.PortableSupport 3.0.6'.
Installing 'MvvmCross.HotTuna.CrossCore 3.0.6'.
Successfully installed 'MvvmCross.HotTuna.CrossCore 3.0.6'.
Installing 'MvvmCross.HotTuna.StarterPack 3.0.6'.
Successfully installed 'MvvmCross.HotTuna.StarterPack 3.0.6'.
Installing 'MvvmCross 3.0.6'.
Successfully installed 'MvvmCross 3.0.6'.
Adding 'MvvmCross.PortableSupport 3.0.6' to PortableClassLibrary1.
Uninstalling 'MvvmCross.PortableSupport 3.0.6'.
Successfully uninstalled 'MvvmCross.PortableSupport 3.0.6'.
Install failed. Rolling back...
Could not install package 'MvvmCross.PortableSupport 3.0.6'. 

このパッケージを 'portable-win+net45+MonoAndroid16+MonoTouch40+sl40+wp' をターゲットとするプロジェクトにインストールしようとしていますが、パッケージにはそのフレームワークと互換性のあるアセンブリ参照またはコンテンツ ファイルが含まれていません。詳細については、パッケージの作成者にお問い合わせください。

新しい PCL ライブラリ プロジェクトを作成するときに、次のオプションを選択しました。

ここに画像の説明を入力

以下は、C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework.NETPortable\v4.0\Profile\Profile104\SupportedFrameworks フォルダーの xml ファイルの内容です。

.NET for Windows ストア apps.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework
    Identifier=".NETCore"
    Profile="*"
    MinimumVersion="4.5"
    DisplayName=".NET for Windows Store apps"
    MinimumVersionDisplayName="" />

.NET フレームワーク 4.5

<?xml version="1.0" encoding="utf-8"?>
<Framework
    Identifier=".NETFramework"
    Profile="*"
    MinimumVersion="4.5"
    DisplayName=".NET Framework"
    MinimumVersionDisplayName="4.5" />

MonoAndroid.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework DisplayName="Mono for Android"
  Identifier="MonoAndroid"
  Profile="*"
  MinimumVersion="1.6"
  MaximumVersion="*" />

MonoTouch.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework
    DisplayName="MonoTouch"
    Identifier="MonoTouch"
    Profile="*"
    MaximumVersion="*" 
    MinimumVersion="4.0" />

シルバーライト 4.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework
    Identifier="Silverlight"
    Profile=""
    MinimumVersion="4.0"
    DisplayName="Silverlight"
    MinimumVersionDisplayName="4" />

VSMonoTouch.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework DisplayName="VS MonoTouch"
  Identifier=".NETFramework"
  Profile="*"
  MinimumVersion="1.0"
  MaximumVersion="1.0" />

Windows Phone 7.5.xml

<?xml version="1.0" encoding="utf-8"?>
<Framework
    Identifier="Silverlight"
    Profile="WindowsPhone7*"
    MinimumVersion="4.0"
    DisplayName="Windows Phone"
    MinimumVersionDisplayName="7.5" />

Windows Server 2012 64 ビット版で Visual Studio 2012 Ultimate Update 2 を使用しています。誰かが私を正しい方向に向けることができますか.

4

6 に答える 6

5

ポータブル クラス ライブラリで Windows Phone 7.0 をターゲットにしているようです。Windows Phone 7.5 に切り替えてみて、問題が解決するかどうかを確認してください。そうでない場合は、PCL の「ターゲットの選択」画面のスクリーンショットと、「SupportedFrameworks」フォルダーに追加したすべての XML ファイルの内容を投稿してみてください。


編集:VSMonoTouch.xml を削除してみてください (その後、Visual Studio を再起動してください)。

于 2013-05-13T23:10:11.097 に答える
2

Stuart のブログ ( http://slodge.blogspot.co.uk/2013/04/n0-first-mvvmcross-application-n1-days.html ) のコメントに記載されている回避策は、私にとってはうまくいきました。

コア プロジェクト プロパティのターゲット フレームワークから、Android、MonoTouch、VS MonoTouch、および Windows Phone 用の Mono を削除します。MvvmCross NuGet パッケージをインストールします。ターゲット フレームワークを再度追加します。

于 2013-05-21T15:21:26.950 に答える
1

同じ問題があります

パッケージ 'MvvmCross.PortableSupport 3.0.6' をインストールできませんでした。このパッケージを 'portable-win+net45+MonoAndroid16+MonoTouch40+sl40+wp71' をターゲットとするプロジェクトにインストールしようとしていますが、パッケージにはそのフレームワークと互換性のあるアセンブリ参照またはコンテンツ ファイルが含まれていません。詳細については、パッケージの作成者にお問い合わせください。

http://slodge.blogspot.co.uk/2013/04/my-current-pcl-setup-in-visual-studio.htmlによると、 VSMonoTouchはなく、2 つのファイル (MonoAndroid,Version=v1. 6+.xml および MonoTouch,Version=v1.0+.xml)

私もしようとしました

「Core プロジェクト プロパティのターゲット フレームワークから Mono for Android、MonoTouch、VS MonoTouch、および Windows Phone を削除します。MvvmCross NuGet パッケージをインストールします。ターゲット フレームワークを再度追加します。」

しかし、コンパイルしようとすると、次のエラーが発生します。

エラー 1 アセンブリの読み込み中の例外: System.IO.FileNotFoundException: アセンブリ 'System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e' を読み込めませんでした。Mono for Android プロファイルには存在しないのでしょうか? 1 assemblies, AssemblyDefinition assembly) at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(Listファイル名: Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(リスト1 アセンブリ、AssemblyDefinition アセンブリ)の Xamarin.Android.Android.Tuner.DirectoryAssemblyResolver.Resolve(AssemblyNameReference 参照、ReaderParameters パラメーター) の 'System.Windows.dll' 。 Xamarin.Android.Tasks.ResolveAssemblies.Execute() MyProject の Tasks.ResolveAssemblies.AddAssemblyReferences (List`1 アセンブリ、AssemblyDefinition アセンブリ)

于 2013-05-21T20:34:55.200 に答える
1

私もこの問題に直面しています。グーグルで解決策を見つけた後、Nuget バージョン 2.4 を使用していることがわかりました。Nuget を 2.6 にアップグレードすると、スムーズに動作します。Nuget 2.6 はここからダウンロードできます: Nuget 2.6

于 2013-07-17T17:51:21.033 に答える
0

PCL を使用してゼロから簡単な Android アプリを作成するための段階的な投稿を書きました

http://enginecore.blogspot.ro/2013/05/first-app-with-xamarin-android-and.html

于 2013-05-22T09:42:11.700 に答える