4

내 앱이 내 컴퓨터에서 WACK을 전달하지만 지원되지 않는 API로 인해 인증 단계에서 저장소 제출이 실패하는 이상한 상황을 관찰하고 있습니다. 나는 2응용 프로그램이 WACK을 통과했지만 저장소 제출에 실패했습니다. 인증

솔루션으로 구성되어 MSVC 15 업데이트를 사용하고 있습니다 :

  1. 유니버설 APP
  2. 클래스 라이브러리 (범용 윈도우)
  3. EF 코어 RC2
  4. (휴대용)
  5. 클래스 라이브러리
  6. Syncfusion SfChart.UWP.dll

스토어 인증 출력 : 찾을 수

오류 : libc.dll에서

  • API sysctl을이 응용 프로그램 유형에 대해 지원되지 않습니다이 지원되는 API를 테스트는 다음과 같은 오류를 발견했습니다. Microsoft.Extensions.PlatformAbstractions.dll이이 API를 호출합니다.
  • libc.dll의 API uname은이 애플리케이션 유형에서 지원되지 않습니다. Microsoft.Extensions.PlatformAbstractions.dll이이 API를 호출합니다.
  • API ntdll.dll의 RtlGetVersion은이 응용 프로그램 유형에서 지원되지 않습니다. Microsoft.Extensions.PlatformAbstractions.dll 이이 API를 호출합니다.

언급 한 바와 같이, 오류는 내 컴퓨터에서 WACK에 의해 발견되지 않습니다. 나는 Visual Studio와 함께 제공되는 WACK과 별도로 설치된 WACK을 모두 시험해 보았습니다.

"클래스 라이브러리 (Portable)"가이 문제를 일으킬 수 있습니까?

업데이트 : 휴대용 클래스 라이브러리가 아니므로 제거하고 동일한 인증 실패가 발생합니다.

답변

3

이것은 entityFrameworkCore.Tools가 원인입니다. 그들은 여전히 ​​시험판이며 .net 네이티브를 제대로 지원하지 않습니다. 해결 방법이 있지만 .net 네이티브로 컴파일하고 저장소에 제출하기 전에 프로젝트에서 제거하면됩니다.

2

패키지에 Microsoft.Extensions.PlatformAbstractions.dll이 포함될 것으로 예상됩니까? 이 파일이 .appxupload 파일에 내장 된 패키지에는 포함될 수 있지만 테스트를 위해 로컬로 빌드하는 패키지에는 포함되지 않을 수 있습니다. 최근 프로젝트에서 패키지에 불필요하고 호환되지 않는 DLL에 대한 참조가 포함 된 사례를 보았습니다. 이 각도를 조사하고이 파일이 잘못 포함되어 있는지 확인할 수 있습니다.

왜 로컬인지 확인하는 한 가지 방법은 programinventory_*.xml 파일을 %localappdata%\Microsoft\appcertkit으로 확인하고 Microsoft.Extensions.PlatformAbstractions.dll에 대한 참조를 찾을 수 있는지 확인하는 것입니다. 파일을 로컬에서 테스트 할 때 파일을 찾을 수없는 경우 가장 좋은 방법은 프로젝트를 조사하는 것입니다. .appxupload 파일을 빌드 할 때 포함시켜야하는 이유는 무엇입니까?