2013-03-25 2 views
2

저는 MvvmCross를 시작하기를 정말로 열망합니다. 이것은 크로스 플랫폼 솔루션을위한 매우 유망한 프레임 워크처럼 보입니다. 어쨌든 튜토리얼 https://github.com/slodge/MvvmCross/wiki/Tutorial-Part-1을 통해 갈 때 빌드 오류가 발생합니다. Android 프로젝트 구성 요소를 빌드 할 때 오류가 발생합니다. 이 오류입니다 : MvvmCross Tutorial - 휴대용 클래스 라이브러리 어셈블리 참조 오류 - MonoDroid

Error 1 The type 'Android.App.Activity' is defined in an assembly that is not referenced. You must add a reference to assembly 'Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=c4c4237547e4b6cd'. C:\Users\Steven\documents\visual studio 2010\Projects\Tutorial\Tutorial.UI.Droid\Views\MainMenuView.cs

내가 ( Portable Class Library strong assembly reference problems in MonoTouch/MonoDroid)에 게시 된 몇 가지 비슷한 질문을보고와 제안 된 솔루션을 따라하지만 성공하지. 이것은 VS2012에서, 그래서 VS2010에서 그것을 시도하고 동일한 문제가 발생했습니다. 이 오류를 발견 한 사람이 있습니까? PCL 부분 (Tutorial.Core)은 자체적으로 잘 만듭니다. PCL csproj 파일을 검사하여 Profile 104를 사용하고 있고 해당 디렉토리에있는 MonoAndroid xml 파일을 이미 만들었습니다.

C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework.NETPortable \ v4.0 \ Profile \ Profile104 \ SupportedFrameworks \ MonoAndroid, 버전 = v1.6 + .xml

Tutorial.UI.Droid 프로젝트의 Mono.Android에 대한 참조가 정상적으로 나타납니다. dll에 대한 경로는 C : \ Program Files (x86) \ Reference Assemblies \ Microsoft \ Framework \ MonoAndroid \ v2.2 \ Mono.Android.dll이고 VS는이 참조에서 Resolved = True 및 Strong Name = True를보고합니다.

도움을 주시면 감사하겠습니다.

답변

2

문제는 PCL과 관련이 없습니다. 버전 4.2를 시작하면 Android 어셈블리 용 Mono는 강력한 이름을 갖습니다. 즉, Xamarin에 의해 선적 된 어셈블리는 Xamarin 키로 서명됩니다. 이전에는 어셈블리가 서명되지 않았거나 지연 서명되었습니다. 이 변경은 일부 Xamarin 어셈블리의 strongname에 영향을줍니다. 강력한 이름입니다

Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=c4c4237547e4b6cd 

: 귀하의 경우처럼

,에 대한 참조를 추가하도록 요구한다. 현재 당신이 사용하는 것 : 입니다

Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null 

하지 강력한 이름.

MVVMCross뿐 아니라 Mono.Android를 새로운 강력한 이름의 어셈블리로 참조하는 모든 어셈블리를 다시 빌드하기 만하면됩니다.

이렇게하면 문제가 해결됩니다.

+0

http://slodge.blogspot.co.uk/p/mvvmcross-binaries_7.html의 'Experimental'빌드에 일부 Xam2.0 컴파일 된 Mvx 드로이드 어셈블리가 있습니다. – Stuart

+0

Thanks MiHiR! 너 돈 맞았 어. 스튜어트가 새로운 컴파일 된 어셈블리를 지적 해 주신 것에 대해 감사드립니다. – steven6174

+0

steven ... 새 프로젝트를 진행중인 경우 v3 사용을 고려하십시오 ... 수요일 베타를 치게 될 것입니다. – Stuart

관련 문제