Magmic’s proprietary cross promotion network is a timed promotion wall that shows on fresh app launches. MoreFun supports user task switching and only shows every 60 minutes or on fresh launches. The cross promotion network is available in iOS native or as a stand alone Unity Plugin.
Images for the MoreFun dialog must exist for the application’s supported orientations and device resolutions. These are provided inside the more_fun_resources directory of the MoreFunTestApp.
All assets must have the “@2x”, “_iPad” and “_iPad@2x” for full device support.
Example Asset Kit - https://www.dropbox.com/s/w60jjt1o71tsuu9/Example%20Assets%20%280614%29.zip
Every application has a shortname for identification; this must be set within the MorefunData.plist –> main app –> shortname field (in the provided test app, it is currently set for “morefun-test-app”). This is required for serving of specific content to the host application (where morefun is integrated into). Magmic requires this unique name to be shorter than 20 characters and to be provided to us for content serving. Currently, you will see a default set of features being served if the shortname provided to the server by the client is not found. A shortname will be provided to you by a product manager during integration.
The majority of morefun’s assets are provided via the MorefunRes.bundle file, which must be included into the host application’s resources for it to work.
Required system libraries are:
Added libraries include:
- libGoogleAnalyticsServices.a (v3)
- libz.dylib (required GoogleAnalytics dependency)
Error: [UIDevice saltedMacAddress]: unrecognized selector
If you come across a [UIDevice saltedMacAddress]: unrecognized selector error, please add –ObjC to your Other Linker Flags under Build Settings.
Status bar being displayed on top of the MoreFun dialog even if status bar initially hidden is set to YES
Inside of the Info.plist file for your application, add the View controllerbased status barappearance and set it to NO.
Note: There have been instances where placing this property higher in the list was necessary to hide the statusbar overlay.
When linking with a cpp code base, please include the files found within the cpp directory as they allow for communication with the objc headers/binaries (also allows forlisteners to be registered)
Analytical events from MoreFun are sent to a production logging service unless the MoreFun library is initialized with useDebug = YES. Keep this in mind when testing the library and product hosting it; avoid situations where multiple runs/launches could skew performance metrics.
MoreFunTestApp demonstrates well the dependencies required to link to the library with
all of it’s functionality.
MoreFun’s intended behaviour is as follows:
- MoreFun will be shown to users before the main menu of a game.
- On first launch, MoreFun will not appear as to not influence the first gameplay experience
- Although assets are downloaded in the background to build up the local cache
- On subsequent launches, more fun will show if
- It has content to display
- An internet connection is available
- On application resume, morefun is shown if 1 hour has elapsed since the application was minimized and the above criteria still remains true
- A call to showMoreFunOfType: MorefunShowTypeAppResume is all that’s required since morefun manages it’s own timing-logic
MoreFun only requires initialization during the application’s startup process. However there exists two ways to handle the displaying of MoreFun once the Morefun->isDisplayable flag is verified and true
1. A ViewController is returned to the requester for display (animations and transitions permitting)
2. A call to showMoreFunOfType is made where a new window is pushed onto of the application’s existing one. Managing it’s own interactions, store views and dismissal.
Upsight (Formerly Playhaven)
We use Upsight interstitials as a channel for cross promoting to published content. In order to track the overall performance of this cross promotion channel, you will be required to initialize the upsight SDK in your game. A set of app keys will be provided to you by a product manager in the form of an:
Magmic uses a collection of analytics providers to track the performance of your game in an effort to work with developers on improving core metrics. We use high level intelligence gathering model called Pirate Metrics to produce monthly performance reports and suggest changes that will influence these core metrics.
Game Analytics SDK - https://github.com/GameAnalytics
A Product Manager will work directly with your team to identify custom events and hooks we require to produce these reports. Expected turn around on this process is 5 working days. An example integration doc can be found here: https://docs.google.com/spreadsheets/d/1YHGUz_H9TtHCyqtIa1PFkW0Rh2JPkV5cnf74KI4czGM/edit?usp=sharing
We require a Magmic splash screen on app boot-up. You can use the following asset:
Upsight (Advanced Features)
Upsight allows us to extend the benefit of it’s use through advanced features like:
Virtual Good Promotions:
Allow us to sell in app purchases through custom interstitials anywhere in the game we have set as a content break.
Allows us to reward the user with an undefined sum of virtual currency at anytime through an interstitial.
Server Fed Push Notifications:
Allows us to strategically set campaigns for improved retention and e-commerce conversion rates
iOS URL Schemes
We use URL Schemes to drive users to a direct in app experience through other apps, MoreFun, interstitials and email.
Here is a guide on implementing URL schemes for your app, ideally your URL scheme uses the same naming scheme as your MoreFun shortname.