[Xamarin] Xamarin.Forms Previewer 오류

2017. 9. 21. 02:14Mobile/Xamarin

Xamarin.Forms Previewer를 실행 했을 때 아래와 같은 오류가 발생하였을 때 대처 사례 입니다.

오류설명

An Android Application project must reference the project contaning this xaml file in order to render in the previewer

이 오류는 XAML파일이 포함된 Xamarin.Forms Project를 인식하지 못하는 경우로서 Xamarin.Forms 프로젝트와 Android 프로젝트 간의 참조 문제입니다.

해결방법

Android Project와 Xamarin.Forms 프로젝트 간의 참조를 확인해야 합니다. Android Project의 .csproj 파일을 에디터로 열어보시고 아래를 수정해주세요.

Before

  <ItemGroup>
    <Reference Include="FormsViewGroup, Version=2.0.0.0, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>..\..\packages\Xamarin.Forms.2.3.4.270\lib\MonoAndroid10\FormsViewGroup.dll</HintPath>
    </Reference>
    <Reference Include="Mono.Android.Export" />
    <Reference Include="mscorlib" />
    <!-- PCL 프로젝트의 DLL이 참조된 형태로 되어있음. 이 경우 Xamarin Previewer 오류가 발생함 -->
    <Reference Include="XamarinPCL">
      <HintPath>..\XamarinPCL\bin\Debug\XamarinPCL.dll</HintPath>
    </Reference>

After

  <ItemGroup>
    <Reference Include="FormsViewGroup, Version=2.0.0.0, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>..\..\packages\Xamarin.Forms.2.3.4.270\lib\MonoAndroid10\FormsViewGroup.dll</HintPath>
    </Reference>
    <Reference Include="Mono.Android.Export" />
    <Reference Include="mscorlib" />
     ...
  </ItemGroup>
  <!-- PCL 프로젝트의 DLL을 참조하는 것이 아니라, PCL 프로젝트를 참조하는 형태로 변경 -->
  <ItemGroup>
    <ProjectReference Include="..\XamarinPCL\XamarinPCL.csproj">
      <Name>XamarinPCL</Name>
    </ProjectReference>
  </ItemGroup>