2

アプリケーションに Google Play Services を追加した後、次のエラーが表示されます。Link SDK Assms Only を有効にしており、有効にしておくことが重要です。

サンプルはこちら: https://dl.dropboxusercontent.com/u/19503836/so_googlemaptest.droid.zip

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(5,5): Error MSB4018: The "LinkAssemblies" task failed unexpectedly.
Mono.Cecil.ResolutionException: Failed to resolve Android.App.Fragment
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference)
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference)
   at Mono.Linker.Steps.MarkStep.InitializeType(TypeDefinition type)
   at Mono.Linker.Steps.MarkStep.InitializeAssembly(AssemblyDefinition assembly)
   at Mono.Linker.Steps.MarkStep.Initialize()
   at Mono.Linker.Steps.MarkStep.Process(LinkContext context)
   at Mono.Linker.Pipeline.Process(LinkContext context)
   at MonoDroid.Tuner.Linker.Process(LinkerOptions options, LinkContext& context)
   at Xamarin.Android.Tasks.LinkAssemblies.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__20.MoveNext() (MSB4018) (googlemaptest.droid)

リンカーがフラグメントを解決できるようにするにはどうすればよいですか?

4

1 に答える 1

1

これは GooglePlayServicesFroyo の問題であり、修正は 10 月 19 日から Xamarin コンポーネント ストアで入手できます。MapFragment タイプはもう存在しません! Xamarin コンポーネント ストアから直接 GooglePlayServicesFroyo 12.0.1 コンポーネントを使用でき、SDK のみのリンカー オプションで正常に動作します。

リンカーを有効にしたバージョンを Google Play に提出できました。

ここに Xamarin フォーラムのディスカッションがあります: http://forums.xamarin.com/discussion/8428/google-play-services-froyo-xamarin-component-doesn-t-work-in-release-mode/p2

于 2013-10-28T16:20:53.037 に答える