Windows Phone Certification failed

Options
Hello guys i have this problem when submitting app to windows store :

Error Found: The supported APIs test detected the following errors:
This API is not supported for this application type - Api=System.Threading.ThreadStart. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.AesManaged. Module=SYSTEM.CORE, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SHA256. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SHA256Managed. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Console. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.ThreadStart.#ctor(System.Object,System.IntPtr). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.Thread.#ctor(System.Threading.ThreadStart). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.Thread.set_IsBackground(System.Boolean). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.Thread.set_Name(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.Thread.Start. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Threading.Thread.Sleep(System.Int32). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SHA256Managed.#ctor. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.AesManaged.#ctor. Module=SYSTEM.CORE, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.set_Key(System.Byte[]). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.set_IV(System.Byte[]). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.CreateEncryptor. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.CreateDecryptor. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Console.WriteLine(System.Int32). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Console.WriteLine(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Console.Write(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
This API is not supported for this application type - Api=System.Console.WriteLine. Module=MSCORLIB, PUBLICKEYTOKEN=B77A5C561934E089. File=Photon3Unity3D.dll.
Impact if not fixed: Using an API that is not part of the Windows SDK for Windows Phone Store apps violates the Windows Phone Store certification requirements.
How to fix: Review the error messages to identify the API that is not part of the Windows SDK for Windows Phone Store app. Please note, C++ apps that are built in a debug configuration will fail this test even if they only use APIs from the Windows SDK for Windows Phone Store apps.

Photon V1.67 on 1.66 its working with no error

@Tobias @vadim

«1

Comments

  • Grinch
    Grinch
    edited April 2016
    Options
    it's windows phone 8.1

  • Grinch
    Options
    Bump !
  • Grinch
    Options
    done anyone have this kind of problem with V1.67 on windows phone 8.1 project building ?
  • Tobias
    Options
    Bumping a thread within 24 hours won't help a lot. We monitor the forums but are not available 24/7...

    Which scripting backend do you use?
    Which Unity version?
    For "Mono" as scripting backend, the dll in \Assets\Plugins\WP8 should be used. In the inspector, make sure that said library is setup for "Mono" backend and has a placeholder set to the dll in: \Assets\Plugins\

    The setup should be correct, when you import v1.67 in a fresh, empty project. Did you try that?
  • Grinch
    Options
    Sorry for bumping :)

    here is project with only Photon it gets same error.just imported to unity.

    https://www.dropbox.com/s/5njpifu5czs36yj/WP8 Photon.zip?dl=0

    Unity 5.4.3p4
    .Net backend
  • Grinch
    Options
    @Tobias did you manage to test ?
  • Tobias
    Options
    The rewriter issues are a problem in-Unity only. As far as I can see, the generated project does work.
    The problem is most likely that Unity is trying to modify our assembly, which is in this case a Windows Phone specific build.

    To avoid the issue, select "Don't process" for the .dll in the Plugins\WP8\ folder.
    Let me know if this solved the issue in your case, too. Thanks.
  • Grinch
    Grinch
    edited April 2016
    Options
    Thanks @Tobias did the same and warning has gone :) the old V1.66 had no such kind of error strange :) thanks for the help
  • Grinch
    Options

    Supported APIs
    Error Found: The supported APIs test detected the following errors:
    This API is not supported for this application type - Api=System.Security.Cryptography.AesManaged. Module=SYSTEM.CORE, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SHA256. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.ICryptoTransform. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.ThreadStart. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SHA256Managed. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.HashAlgorithm. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Console. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.String.Format(System.String,System.Object,System.Object). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.String.Format(System.String,System.Object). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.String.Format(System.String,System.Object,System.Object,System.Object). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.ThreadStart.#ctor(System.Object,System.IntPtr). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.Thread.#ctor(System.Threading.ThreadStart). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.Thread.set_IsBackground(System.Boolean). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.Thread.set_Name(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.Thread.Start. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Threading.Thread.Sleep(System.Int32). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SHA256Managed.#ctor. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.HashAlgorithm.ComputeHash(System.Byte[]). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.AesManaged.#ctor. Module=SYSTEM.CORE, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.set_Key(System.Byte[]). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.set_IV(System.Byte[]). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.CreateEncryptor. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.ICryptoTransform.TransformFinalBlock(System.Byte[],System.Int32,System.Int32). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Security.Cryptography.SymmetricAlgorithm.CreateDecryptor. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Console.WriteLine(System.Int32). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Console.WriteLine(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Console.Write(System.String). Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    This API is not supported for this application type - Api=System.Console.WriteLine. Module=MSCORLIB, PUBLICKEYTOKEN=7CEC85D7BEA7798E. File=Photon3Unity3D.dll.
    Impact if not fixed: Using an API that is not part of the Windows SDK for Windows Phone Store apps violates the Windows Phone Store certification requirements.
    How to fix: Review the error messages to identify the API that is not part of the Windows SDK for Windows Phone Store app. Please note, apps that are built in a debug configuration can fail this test as these environments may pull in unsupported APIs. Retest your app in a release configuration.
  • Grinch
    Options
    Same rejected :(
  • Grinch
    Options
    @Tobias please check it i really need to submit game to windows phone :) thanks
  • Grinch
    Options
    as i guess i am only one to publish game on windows phone using photon ? :neutral:
  • Tobias
    Options
    I checked the libs and the one used is not suitable for WP8.1. This means: I can reproduce the issue and fix it in an update.

    Luckily, PUN includes another lib that's suitable for WP8.1 deployment, so you can work around this right now. You should be able to build by setting up the dll in the "Metro" folder:

    1) In the project, find the dll in the WP8 folder. Deselect every platform. It should not be used.

    2) Find the dll in the Metro folder. Select and set SDK to "Phone SDK 8.1". Apply and build.

    That worked for me just now.
    Sorry for the late reply.

    PS: You're not the only one who does WP8. But there are not a lot, who do.
  • Tobias
    Options
    @Grinch: Did you notice my reply? Does it work for you, too?
  • Grinch
    Options
    @Tobias Sorry for late reply yes its working like a charm :) will upload my game to windows phone next week. Thanks for help :)
  • Tobias
    Options
    No worries about late replies. I'm the one who's late, usually :)
    Thanks for letting me know.
  • Grinch
    Options
    Hello @Tobias i have download new 1.69 version and now on windows 8.1 i have this error from windows certification tool

    API egCryptorCreate in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorDecrypt in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorDeriveSharedKey in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorDispose in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorEncrypt in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorIsEncryptionAvailable in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
    API egCryptorPublicKey in photoncryptoplugin.dll is not supported for this application type. Photon3Unity3D.dll calls this API.
  • Grinch
    Options
    Also if i am building UWP 10 with .Net Scripting backend everything is working only in debug mode in Visual Studio if i switch to Master game is not connecting to Server. For testing i just imported in empty project photon asset and builded worker demo.
  • Tobias
    Options
    > API egCryptorCreate in photoncryptoplugin.dll is not supported for this application type.

    Dang. Another API we can't have in the dll, even though we're not using it.
    I know what's the issue. We will exclude this from the next build and find a solution.


    > everything is working only in debug mode in Visual Studio if i switch to Master game is not connecting to Server

    Did you set the "Internet" capabilities for the project?
    I don't know what "Master" does. Is that identical to Release?
    Are you building for a phone or UWP PC?
  • Grinch
    Options
    same on phone and UWP PC. for submitting build to MS you need to set master. yes Internet is checked.
  • Grinch
    Options
    have Tested Everything is working on Release and Debug mode. but in Master :(
  • Grinch
    Options
    @Tobias any updates ?
  • Tobias
    Options
    I am currently going through the whole process for this: From dll to Certification Kit for UWP.
    I still get a negative report for some APIs but from the looks, it's no longer our library. It seems my Unity 5.3.4p1 has some issues with the store, too.
    So I could use your input on this but you get access to the libs now instead of later.

    I think this lib should be fine:
    https://www.dropbox.com/s/vdnnbi1wiqc28j5/Photon3Unity3D-v4-1-0-5-UWP-b1.zip

    Replace your Assets\Plugins\UWP lib with this.
    Win 8.1 will follow suit.

  • Tobias
    Options
    This helped me through the API compatibility test in Unity 5.3.4p1 for the lib linked above:
    http://forum.unity3d.com/threads/windows-app-certification-kit-fails.360182/#post-2332583
  • Tobias
    Tobias admin
    edited May 2016
    Options
    This lib does work for 8.1 and goes through certification:
    https://www.dropbox.com/s/04hfsq90l5g2wgw/Photon3Unity3D-v4-1-0-5-Metro-b1.zip?dl=0

    I had some trouble setting it up for export in Unity: When I switched build platform to 8.1 Universal, Unity didn't any of our assemblies anymore. In the end, I used the inspector to set the Metro\*.dll as only WSA library for all SDKs temporarily. Placeholder and backend stay as is.

    I hope you confirm this working. Then we can update PUN in the week after next (after Unite Europe).
  • Grinch
    Options
    UWP 10 with .Net is working Perfect. Thanks @Tobias :) you can definitely push new update :)
  • Grinch
    Options
    Metro version should be placed directly in Plugins ?
  • Grinch
    Options
    I Have Chnaged .xml file to plugins and .dll to Metro and set Any SDK. switched platform in Build Settings to Windows phone 8.1 and got this error when buildin :

    UnityException: Failed to run serialization weaver with command "Temp\StagingArea\Data\Managed\Photon3Unity3D.dll" -pdb -verbose -unity-engine="Temp\StagingArea\Data\Managed\UnityEngine.dll" "Temp\StagingArea\TempSerializationWeaver" -additionalAssemblyPath="C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\WindowsPhoneApp\v8.1" -additionalAssemblyPath="Temp\StagingArea\Data\Managed".
    Symbols will be read from Temp\StagingArea\Data\Managed\UnityEngine.pdb
    Weaving assembly C:\SBS_P4\OutSource\Blocky Shooter\Project\Temp\StagingArea\Data\Managed\Photon3Unity3D.dll
    Symbols will be read from Temp\StagingArea\Data\Managed\Photon3Unity3D.pdb
    System.InvalidOperationException: Operation is not valid due to the current state of the object.
    at Mono.Cecil.ModuleDefinition.ProcessDebugHeader()
    at Mono.Cecil.ModuleReader.ReadSymbols(ModuleDefinition module, ReaderParameters parameters)
    at Mono.Cecil.ModuleReader.CreateModuleFrom(Image image, ReaderParameters parameters)
    at Mono.Cecil.ModuleDefinition.ReadModule(String fileName, ReaderParameters parameters)
    at usw.Weaver.WeaveAssembly(String assemblyPath, AssemblyDefinition unityEngineAssemblyDefinition)
    at usw.Weaver.Weave()
    at usw.Program.RunProgram(ConversionOptions options)
    at usw.Program.Main(String[] args)

    PostProcessWinRT.RunSerializationWeaver () (at C:/buildslave/unity/build/PlatformDependent/WinRT/SharedSources/CSharp/PostProcessWinRT.cs:442)
    PostProcessWinRT.Process () (at C:/buildslave/unity/build/PlatformDependent/WinRT/SharedSources/CSharp/PostProcessWinRT.cs:123)
    UnityEditor.Metro.BuildPostprocessor.PostProcess (BuildPostProcessArgs args) (at C:/buildslave/unity/build/PlatformDependent/MetroPlayer/Extensions/Managed/ExtensionModule.cs:133)
    UnityEditor.PostprocessBuildPlayer.Postprocess (BuildTarget target, System.String installPath, System.String companyName, System.String productName, Int32 width, Int32 height, System.String downloadWebplayerUrl, System.String manualDownloadWebplayerUrl, BuildOptions options, UnityEditor.RuntimeClassRegistry usedClassRegistry) (at C:/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:316)
    UnityEditor.HostView:OnGUI()

  • Grinch
    Grinch
    edited May 2016
    Options
    ..
  • Tobias
    Options
    I forget to say here: We've been at Unite and I was effectively offline this week.

    Metro version goes into a subfolder. In Unity 5, folder names don't matter so much, so just set it up correctly and you're fine.
    I guess in your build, it still tried to build with the wrong .dll.

    Next week, I'm back in the office.