Sign In Register

How can we help you today?

Start a new topic
Answered

Unity Free with GameSparks

Using Unity Free 4.5.4f


Using GameSparks for Unity in my project, and in the editor it works great, however when building my project to Android, i get this nice little error message which stops the build altogether:


Error building Player: SystemException: 'System.Net.Sockets' are supported only with Unity Android Pro. Referenced from assembly 'GameSparks'.


Is there anyway around this? Or am i now forced to get Unity Pro AND Unity Android Pro module?



Best Answer

Steve,


What version of the SDK are you using? 


With later versions of our SDK (3,x) , the following plugin on the Unity Asset Store should work to get around this:


https://www.assetstore.unity3d.com/en/#!/content/13166


Best,



John.




Answer

Steve,


What version of the SDK are you using? 


With later versions of our SDK (3,x) , the following plugin on the Unity Asset Store should work to get around this:


https://www.assetstore.unity3d.com/en/#!/content/13166


Best,



John.



In unity 4.6 beta it is working without the "good ol sockets" plugin

I think with beta versions of Unity they allow use of the pro features. This may not be the case with the 4.6 official release so just be careful of that.

 

nevermind my last comment . It seams that unity 4.6 free allows sockets for the 'desktop versions' but for  Android/Ios you still need the pro license.

I've managed to use Good Ol Sockets with Unity Free on Android and iOS devices, the latest SDK added support for this. I just let GoS convert what it needed to (some of the files needed reverting again, I can't remember which, but were likely Facebook related)

 

After some testing, good ole sockets seems to work well, thank you

Good Ol' Sockets 1.4.4 used to work well to patch my project in Unity 4.6.1 and export to Xcode.


Since Feb 2015, Apple requires iOS apps to support Arm64,

which requires to upgrade to Unity 4.6.6 (with IL2CPP and Arm64)

which requires to upgrade to Good Ol' Sockets 2.0.0 (had to purchase a new $24.95 license for it (no free upgrade?))

which fails to patch GameSparks SDK.  

Before and after running Good Ol Sockets patch, I still get the same error message when trying to build:


Error building Player: SystemException: System.Net.Sockets are supported only on Unity iOS Pro. Referenced from assembly 'GameSparks'.


The script GameSparksEditorFormUpload.cs gets modified by Good Ol' Sockets but that does not seem to be sufficient.


Has anyone run into the same problem?  

Any solution?

I found the solution for the problem with Gamesparks, Unity free, GoodOldSocket and Xcode. It was due to a poor upgrade mechanism from GoodOldSocket 1.4.4 to 2.0.0:


Good Ol Sockets 1.4.4 creates a copy of Assets > Plugins > GameSparks.dll and names it GameSparks.dll.bak.

It fails to remove it when reverting the patch.

After upgrading, GoodOldSockets 2.0.0 sees the .bak and assumes that GameSparks.dll does not need to be patched, so it skips it.

Deleting GameSparks.dll.bak and running the patch again solves it.


Have a nice day.


Hello, I'm back with another build problem related to GameSparks and IL2CPP,

and I was able to replicate it easily using the Unity project from GameSparks-Unity-SDK tutorial : GameSparksTappyBirdFinished


1. Download and open GameSparksTappyBirdFinished in Unity 4.6.6


2. In File > Build Settings, set iOS as the default platform


3. Asset > Import Package > Custom Package ...  and import Gamesparks_Unity_5.0.0.rc46.unitypackage


4. Wndow > Asset Store

and import Good Ol' Sockets 2.0.0 ( $24.95)


5. File > Build Settings > Player Settings > Other Settings > Scripting Backend > Mono (2.x)


6. File > Build Settings > Build => Success, it builds fine!


7. File > Build Settings > Player Settings > Other Settings > Scripting Backend > IL2CPP


8. File > Build Settings > Build => Compiler gets stuck with progress popup at "Postprocessing Player".


9. Force-Quit Unity.


10. Look at ~/Library/Logs/Unity/Editor.log 

It ends with: 

(Filename: Assets/GameSparks/Editor/GameSparksPostprocessScript.cs Line: 20)

Traceback (most recent call last):
  File "Assets/GameSparks/Editor/post_process.py", line 30, in <module>
    print '{} {} {} {}'.format(name, isa, path, fileref)
IOError: [Errno 32] Broken pipe

 

Has anyone run into the same problem?

Any solution?


Oh, I forgot in my post above:


1.  Using Unity 4.6.6 Free edition


4. Run the Good Old Socket Patch

Tools > Lost Polygon > Good Ol' Sockets > Patch all System.Net.Sockets usages in project



Login to post a comment