Posts

Showing posts with the label iOS

Remote desymbolication of iOS crash logs from Unreal Engine 4 games

Let's get straight to the point. You are developing an iOS game with Unreal Engine 4. Let's assume you are using a remote Mac machine to build the game (just like in this post ). And the game crashes for unknown reasons. How to deal with it?

Running Unreal Engine 4 Plugin’s code in didFinishLaunchingWithOptions on iOS

Now, that’s a long title! Some time ago I faced a very specific problem when implementing a third party iOS SDK into Unreal Engine 4. The SDK required to run its initializing function inside the didFinishLaunchingWithOptions method. Usually when handling application lifecycle events Unreal Engine 4 uses delegates from FCoreDelegates class like ApplicationWillEnterBackgroundDelegate or ApplicationWillTerminateDelegate . But didFinishLaunchingWithOptions is one of the first methods that runs after the app is launched and at this point Unreal Engine 4 is not initialized yet. Delegates and plugins will not work! We could modify the engine’s source code and paste the SDK’s code into the ApplicationCore module but this would be a terrible solution as all third party SDKs should be handled by plugins. Here I’d like to show a solution to this problem. The idea is to create a static observer which will be initialized before the app launch and that can react to the didFinishLaunchingWithOp...

Building iOS game in Unreal Engine 4 via remote machine

Image
In Unreal Engine 4 to build a source code for the iOS the Mac computer with installed Xcode is needed. If you are working for other platforms too, having two machines with separate projects might be troublesome. Or maybe you cannot afford buying a Mac for every working station? You can start a building process on the PC with Windows which will send the source code to the Mac computer, compile the code there, get the results and finish cooking and packaging the ipa on PC. How to do this? Here are the instructions!