Switching development from PC to Mac, missing assembly references related to UnityPurchasing
Hi all,
I'm having trouble opening a Unity project that I've been developing on my PC now that I'm switching over to a Mac to finalise the iOS build. I just need to test in app purchases, and build for iOS and then I can ship this game, so it's infuriatingly close to being finished :) Any help or ideas would be greatfully received!
The issue I get is 7 missing assembly references in the format:
Assets/Plugins/UnityPurchasing/script/IAPDemo.cs(28,10): error CS0246: The type or namespace name 'IAppleExtensions' could not be found. Are you missing an assembly reference?
The missing references are: ProductCatalog
, IAppleExtensions
, IMoolahExtension
, ISamsungAppsExtensions
, IMicrosoftExtensions
, LoginResultState
, FastRegisterError
.
My current guess it that these are related to the Unity In App Purchasing Services integrated 'plugin', but I may be wrong.
Basic setup info:
I'm running Unity 5.3.3f1 on both machines
Source control is using Git, and ignores
Library
andTemp
This is what I've tried so far:
Switching between build targets, Android, iOS, desktop
-
When I disable the IAP service I get a 9 additional missing references in the same
IAPDemo.cs
file but these dissappear when I re-enable Re-importing Unity IAP via the services menu ("Unity IAP is up to date")
Disabling and enabling Unity Ads via Services
Assets > Reimport All
Various things discussed here: https://forum.unity3d.com/threads/services-menu-under-services-tab-is-not-loading.401419/
Updating MacOS (currently running Sierra 10.12.4)
Logging out of my Unity Account, switching to offline mode, reconnecting to the project ID
Turning it off and on again
I'm out of ideas... have you seen anything like this before?
It turns out this issue is not due to running on a $$anonymous$$ac, it's something more generic about opening the project on a new machine. I've been able to recreate the issue on another PC following the same steps above.
Still, if anyone has clues about those missing references I'd be really grateful :)
Answer by adamlofting · Apr 28, 2017 at 08:36 PM
I was sick this week but finally got back to this issue tonight and managed to solve it.
It wasn't anything to do with this being on a mac. It was Unity nuking a number of DLLs from my project during the initial project import process after cloning to a new machine / location. These DLLs in `\Assets\Plugins\UnityPurchasing\Bin` are part of my project in Git but for some reason they get deleted by the initial project import.
I've managed to fix this by reimporting the Unity IAP Services/Billing package from the Asset Store (not just via the services menu).
And after that, everything works again. Phew.
Answer by gcrozariol · Feb 05, 2019 at 07:30 PM
Unfortunately, that solution did not work for me.
However, I found out that if you go to IAPButton under Assets/Plugins/UnityPurchasing/script/IAPButton and comment the very first and the very last line of the class, Unity finds the button and it starts to work again.
Also, when I commented the same lines for the IAPListener class under the same folder, this listener started to work again.
Let me know if this helps too!
Your answer

Follow this Question
Related Questions
Build crashes or screen goes black after configuration screen 1 Answer
Mac Build doesn't open after download 0 Answers
Build error: Couldn't open unitypurchasing error, no suitable image found 0 Answers
HELPPPPP Please :( CommandInvolkationFailure 0 Answers
What are the possible reasons behind my Build Failing? 0 Answers