mono/SkiaSharp

SkiaSharp uses unsupported API in UWP application

slakul opened this issue · 7 comments

Description

Microsoft Store Application Review fails when using SkiaSharp in version 1.60.1, previous version (1.60.0)worked fine.

Expected Behavior

The application using SkiaSharp should be accepted by Microsoft Store. It worked with 1.60.0.

Actual Behavior

Microsoft Store Application Review result:

Supported API test

FAILED
Supported APIs
Error Found: The supported APIs test detected the following errors:
API _CxxThrowException in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __C_specific_handler in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __CxxFrameHandler3 in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __intrinsic_setjmp in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __std_exception_copy in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __std_exception_destroy in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __std_terminate in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __std_type_info_compare in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API __std_type_info_destroy_list in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API _purecall in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API longjmp in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API memcmp in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API memcpy in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API memmove in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API memset in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API strchr in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API strrchr in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API strstr in vcruntime140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??0?$basic_ios@DU?$char_traits@D@std@@@std@@IAA@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??0?$basic_iostream@DU?$char_traits@D@std@@@std@@QAA@PAV?$basic_streambuf@DU?$char_traits@D@std@@@1@@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??0?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAA@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??1?$basic_ios@DU?$char_traits@D@std@@@std@@UAA@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??1?$basic_iostream@DU?$char_traits@D@std@@@std@@UAA@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAA@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??5?$basic_istream@DU?$char_traits@D@std@@@std@@QAAAAV01@AAN@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAAAAV01@_J@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAAAAV01@_K@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_BADOFF@std@@3_JB in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_Lock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAAXXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_Pninc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAAPADXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_Unlock@?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAAXXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_Xbad_function_call@std@@YAXXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?_Xlength_error@std@@YAXPBD@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?classic@locale@std@@SAABV12@XZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?imbue@?$basic_ios@DU?$char_traits@D@std@@@std@@QAA?AVlocale@2@ABV32@@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?imbue@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAAXABVlocale@2@@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?setbuf@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAAPAV12@PAD_J@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?showmanyc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAA_JXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?sync@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAAHXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?uflow@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAAHXZ in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?xsgetn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAA_JPAD_J@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API ?xsputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAA_JPBD_J@Z in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API _Query_perf_counter in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.
API _Query_perf_frequency in msvcp140.dll is not supported for this application type. libSkiaSharp.dll calls this API.

Impact if not fixed: Using an API that is not part of the Windows SDK for Microsoft Store apps violates the Microsoft Store certification requirements. 

Basic Information

  • Version with issue: 1.60.1
  • Last known good version: 1.60.0
  • IDE: Visual Studio
  • Platform Target Frameworks:
    • UWP: 16299

This looks new... I can't believe that memcpy is an invalid API - this is the basis of all things. :) I also see "...is not supported for this application type.". Is there something different about this app?

Let me have a look...

Ok, I can see this error, let me determine the cause and resolution...

I found out what happened. During the upgrade of the build system, the incorrect libraries were linked (credits this this SO). I am testing my fix and I will try and get v1.60.2 ASAP.

1.60.2 doesn't seem to be in nuget yet.

Yeah... having the same issue. Any ideas when 1.60.2 will be out?

Same issue, I also need the update :)

@slakul @enghch @kyurkchyan @EEVblog I have just pushed out the release and should be available on NuGet. Here are the release notes and all the links: https://github.com/mono/SkiaSharp/releases/tag/v1.60.2