Does MegaFrog run on a native iOS device?

Has anyone else been able to run the MegaFrog example on a native iOS device? (not in the unity player, not on mac, but actually on an iOS device) It builds and links just fine for me, but at runtime it spits out errors that look like the right assemblies aren’t included. It appears to get hung up immediately after the very first call to AWS services.


(Filename: ./Runtime/Export/Debug.bindings.h Line: 45)
NullReferenceException: Object reference not set to an instance of an object.
at Amazon.Runtime.Internal.UnityWebRequestWrapper..cctor () [0x00000] in <00000000000000000000000000000000>:0 at Amazon.AWSConfigs.set_HttpClient (Amazon.AWSConfigs+HttpClientOption value) [0x00000] in <00000000000000000000000000000000>:0 at RTSClient.ConnectToGameLiftServer () [0x00000] in <00000000000000000000000000000000>:0 Rethrow as TypeInitializationException: The type initializer for 'Amazon.Runtime.Internal.UnityWebRequestWrapper' threw an exception.
at Amazon.AWSConfigs.set_HttpClient (Amazon.AWSConfigs+HttpClientOption value) [0x00000] in <00000000000000000000000000000000>:0 at RTSClient.ConnectToGameLiftServer () [0x00000] in <00000000000000000000000000000000>:0 (Filename: currently not available on il2cpp Line: -1)

I got this to work. The issue is that it’s having a hard time with AWSSDK, not GameLift.

At that point, you can follow the users guide for integrating AWSSDK into your unity game, here.

HOWEVER! As of the writing of this document, I’m not sure their example link.xml works. Fortunately they provide a unity example game, and the link.xml there does work.

Here’s the link.xml I used:

  <linker>
<assembly fullname="UnityEngine">
<type fullname="UnityEngine.Networking.UnityWebRequest" preserve="all" />
<type fullname="UnityEngine.Networking.UploadHandlerRaw" preserve="all" />
<type fullname="UnityEngine.Networking.UploadHandler" preserve="all" />
<type fullname="UnityEngine.Networking.DownloadHandler" preserve="all" />
<type fullname="UnityEngine.Networking.DownloadHandlerBuffer" preserve="all" />
</assembly>
<assembly fullname="AWSSDK.Core" preserve="all"/>
<assembly fullname="AWSSDK.CognitoIdentity" preserve="all"/>
<assembly fullname="AWSSDK.CognitoSync" preserve="all"/>
<assembly fullname="AWSSDK.DynamoDBv2" preserve="all"/>
<assembly fullname="AWSSDK.Kinesis" preserve="all"/>
<assembly fullname="AWSSDK.KinesisFirehose" preserve="all"/>
<assembly fullname="AWSSDK.Lambda" preserve="all"/>
<assembly fullname="AWSSDK.MobileAnalytics" preserve="all"/>
<assembly fullname="AWSSDK.S3" preserve="all"/>
<assembly fullname="AWSSDK.SecurityToken" preserve="all"/>
<assembly fullname="AWSSDK.SimpleEmail" preserve="all"/>
<assembly fullname="AWSSDK.SimpleNotificationService" preserve="all"/>
<assembly fullname="AWSSDK.SQS" preserve="all"/>
<assembly fullname="AWSSDK.IdentityManagement" preserve="all"/>
</linker>