IAP Erros in Unity 2019.2.9f

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> member:(null) signature:<none>

2)

Code (CSharp):

Assembly 'Assets/Plugins/UnityPurchasing/Bin/Editor.dll' will not be loaded due to errors:

Reference has errors 'Stores'.

3)

Code (CSharp):

Assembly 'Assets/Plugins/UnityPurchasing/Bin/Stores.dll' will not be loaded due to errors:

Unable to resolve reference 'UnityEngine.UI'.Is the assembly missing or incompatible with the current platform?

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. assembly:UnityEngine.UI,

and

error CS1704: An assembly with the same simple name 'Editor' has already been imported. Try removing one of the references (e.g. '[..]\Library\ScriptAssemblies\Editor.dll') or sign them to enable side-by-side.

Unity Technologies

Update: in my case, I had to remove the Xiaomi SDK from the package manager. (Unity 2019.2.9)
On brand new projects I wasn't having this error, so that's what indicated that something with this specific project could be the culprit.

I've been encountering this as well as I'm trouble-shooting the 1.23 update

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> membernull) signature:<none>

Click to expand...

My repro scenario involves two machines and switching platforms, using Git in between. While a 2 machine scenario may sound exotic, I think it's pretty common to have a Mac setup for iOS builds and a Windows machine setup for Android builds.

I get a stable plugin import for Android on my Windows machine. All good

I push that commit from my Windows machine to my repo

I pull that commit to my Mac and get that error

I re-import the plugin from the Asset Store onto my Mac, and all is good again.

I push that commit from my Mac to my repo

I pull that commit back to my Windows machine and get that error again

Unity Technologies

I've been encountering this as well as I'm trouble-shooting the 1.23 update

My repro scenario involves two machines and switching platforms, using Git in between. While a 2 machine scenario may sound exotic, I think it's pretty common to have a Mac setup for iOS builds and a Windows machine setup for Android builds.

I get a stable plugin import for Android on my Windows machine. All good

I push that commit from my Windows machine to my repo

I pull that commit to my Mac and get that error

I re-import the plugin from the Asset Store onto my Mac, and all is good again.

I push that commit from my Mac to my repo

I pull that commit back to my Windows machine and get that error again

rinse and repeat

Click to expand...

Would be good to test first without Git involved to see where the issue may be. One thing you might want to test without Git is to make a back up and delete the /Library folder and test. Source control systems often ignore and don't include the /Library folder.

I'm using Unity Cloud Build, and had no issues with IAP in Unity 2018.x. I'm using Bitbucket as source control, and auto-build. This issue has occurred in every upgraded version of Unity since 2019.2.3f1 that I've tried, up through 2019.3.9f1 and the latest Unity IAP version available.

In earlier of versions of Unity 2019.x I was getting IAP errors in the Unity Editor console. But not in the newer versions.

If you have trouble reproducing this, let me know if looking at my cloud build setup or repo would help.

Would be good to test first without Git involved to see where the issue may be. One thing you might want to test without Git is to make a back up and delete the /Library folder and test. Source control systems often ignore and don't include the /Library folder.

Click to expand...

Gave this a try and it did not pop the error. So looks like it has to do with a 2nd machine or the platform switch between iOS and Android

I just updated my project from 2019.2.9f1 to 2019.2.10f1 and the same error appeared in the console:

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> member:(null) signature:<none>

I also get the error when I Cloud Build. I completely wiped out everything except for the Assets folder, rebuilt, and pushed to source control for Cloud Build here's the error I'm getting:

Unity Technologies

I just updated my project from 2019.2.9f1 to 2019.2.10f1 and the same error appeared in the console:

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> member:(null) signature:<none>

I also get the error when I Cloud Build. I completely wiped out everything except for the Assets folder, rebuilt, and pushed to source control for Cloud Build here's the error I'm getting:

I'm still experiencing this problem, and I haven't received any response on the Unity Cloud Build forum.

When I upgrade my project from 2019.2.10f1 to 2019.2.11f1 I get this error at the top of my console when I open the project in the editor.

Code (CSharp):

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> member:(null) signature:<none>

It happens again when I upgrade my project from 2019.2.11f1 to 2019.2.12f1, it doesn't seem to me like the fix that was implemented fully resolved the issue, and some sort of local build workaround was put in place that didn't correct the underlying problem with the project (in the editor). This error is manifesting in the editor when the project is upgraded, and is also carrying over to Unity Cloud Build. It seems like IAP is (and has been) completely broken in Unity Cloud Build for all 2019.x versions.

Is there anyone using Unity 2019.x and the Unity IAP plugin not receiving this error when they upgrade their project?

Unity Technologies

I'm still experiencing this problem, and I haven't received any response on the Unity Cloud Build forum.

When I upgrade my project from 2019.2.10f1 to 2019.2.11f1 I get this error at the top of my console when I open the project in the editor.

Code (CSharp):

Error: Could not load signature of UnityEngine.Purchasing.UIFakeStore:GetOkayButton due to: Could not load file or assembly 'UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies.assembly:UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null type:<unknown type> member:(null) signature:<none>

It happens again when I upgrade my project from 2019.2.11f1 to 2019.2.12f1, it doesn't seem to me like the fix that was implemented fully resolved the issue, and some sort of local build workaround was put in place that didn't correct the underlying problem with the project (in the editor). This error is manifesting in the editor when the project is upgraded, and is also carrying over to Unity Cloud Build. It seems like IAP is (and has been) completely broken in Unity Cloud Build for all 2019.x versions.

Is there anyone using Unity 2019.x and the Unity IAP plugin not receiving this error when they upgrade their project?

Click to expand...

Can you still build your project? I've seen that message too, but I can still build my project.

Yes, I can build locally last time I tried, but I don't have all my iOS and Google certs / signing set up locally, as I've been relying on Unity Cloud Build for that.

I know that there are different Unity dev teams and it seems the implication is that the (unresponsive) Unity Cloud Build Team should be fixing this problem on their end, but this appears to be a problem with the underlying project. And, it doesn't seem like that problem was "properly" fixed as the error is still appearing in the editor console when upgrading a project, and that problem seems like it's propagating over to Unity Cloud Build.

Unity Technologies

Yes, I can build locally last time I tried, but I don't have all my iOS and Google certs / signing set up locally, as I've been relying on Unity Cloud Build for that.

I know that there are different Unity dev teams and it seems the implication is that the (unresponsive) Unity Cloud Build Team should be fixing this problem on their end, but this appears to be a problem with the underlying project. And, it doesn't seem like that problem was "properly" fixed as the error is still appearing in the editor console when upgrading a project, and that problem seems like it's propagating over to Unity Cloud Build.

Click to expand...

So for clarity, it does build locally but not on Cloud Build? This is an IAP issue

It builds locally with no errors for Android, but the console does give an error when I upgrade the project to a new version of Unity. Cloud Build for Android gives the error twice if I do a normal build, or once if I do a clean build.

Unity Technologies

It builds locally with no errors for Android, but the console does give an error when I upgrade the project to a new version of Unity. Cloud Build for Android gives the error twice if I do a normal build, or once if I do a clean build.

Click to expand...

But does the build complete, even if you see the errors? Trying to get a sense of proper priority.

The cloud build completes, but the IAP components do not seem to work when I test them in the Google Play Store.

It may be that I'm not implementing the IAP components correctly though. I had it working properly in 2018.x, but the way the plugin worked seemed to have some substantial updates, and I modified my codebase for 2019.x, when I started getting the error. I tried uploading the Android package to the Google Play Store for testing, but the IAP did not work with 2019.x build and my code changes.

Unity Technologies

The cloud build completes, but the IAP components do not seem to work when I test them in the Google Play Store.

It may be that I'm not implementing the IAP components correctly though. I had it working properly in 2018.x, but the way the plugin worked seemed to have some substantial updates, and I modified my codebase for 2019.x, when I started getting the error. I tried uploading the Android package to the Google Play Store for testing, but the IAP did not work with 2019.x build and my code changes.

This happen to me... UCB gave this error but build seems complete, and on the other side, my client got the collab project and he got the same error on the Editor Console. Could it be related with Receipt Validation Obfuscator?

Can you elaborate, "commit the obfuscated receipt validation" and the solution you provided for your client?

Click to expand...

My client downloaded all the changes from Collab... and was getting that error in the Editor console, so the only thing I thought to try is to set the "license key" into the Window -> Unity IAP -> Receipt Validation Obfuscator and that fixed the error, So I assume that for some reason collab didn't synced that part from my computer to the cloud... maybe Collab doesn't cover that part?

Unity Technologies

My client downloaded all the changes from Collab... and was getting that error in the Editor console, so the only thing I thought to try is to set the "license key" into the Window -> Unity IAP -> Receipt Validation Obfuscator and that fixed the error, So I assume that for some reason collab didn't synced that part from my computer to the cloud... maybe Collab doesn't cover that part?

Click to expand...

Are you able to see the list of file changes after they performed your suggestion?

"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.