My game works just fine on Windows RT tablet (and on Windows 8 PC). However, it fails Windows certification kit API test:
“◦API System.Collections.Hashtable in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.
◦API System.Collections.ArrayList in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.
◦API System.IO.DirectoryInfo in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.
◦API System.IO.FileInfo in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.” etc.
Is this because I use “None” as compilation override? Should I use “Use Net Core” instead?
Using that options fails to build as numerous APIs are missing (FileStream, FileInfo, DirectoryInfo, etc.). Do I need to rewrite my code not to use these APIs, or is there a way around it?
Now with 4.3, I’ve managed to shrink down the list to just one error:
API System.Type.op_Equality(System.Type,System.Type) in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.
I’d assume that’s caused by something like:
Type t = object.GetType();
if (t == anotherType.GetType())
But the codebase I’m working on is tens of thousands of lines of code, so finding a codeline like that is next to impossible with any help from tools. Any ideas how find the offending piece of code? Also, I wonder why Unity let’s me use methods and types that are not allowed for Windows Store Apps…
Solved it myself, it seems. I removed whole bunch of references to System.Type, but I’m quite sure that it’s actually caused by testing Master-build, rather than Release-build (it’s 8.1 version). When building with 8.0, there’s no Master-configuration.
It remains to be seen if the Master-build is going to pass the real certification test or not…
I did not get what u r telling hebba84…even i am getting same problem…please tell me how i can fix that
“API System.Type.op_Equality(System.Type,System.Type) in MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089 is not supported for this application type. Assembly-CSharp-firstpass.dll calls this API.”