After you have integrated the Skillz SDK into your game, and tested it thoroughly, you will reach a point when you are ready to release your game on the appropriate app store, and going live on Skillz. We'll will walk you through the process of getting your game live on Skillz, and submitting it to the appropriate app store(s).
Configure Unique Package and Bundle IDs
We recommend making your Android package name and iOS bundle ids unique in order to prevent potential issues when beginning user acquisition spend. As a general naming convention, we recommend using
Switch Your Game to Production
The first step in launching your game is to switch from using the Skillz Sandbox server environment(used for testing and development) to using the Skillz Production server environment.
For iOS, find your code which initializes Skillz and change the environment from SkillzSandbox to SkillzProduction. Your code will likely end up looking similar to:
[[Skillz skillzInstance] initWithGameId:@"156"
For iOS, find your code which initializes Skillz and change the environment from SkillzEnvironment.sandbox to SkillzEnvironment.production. Your code will likely end up looking similar to:
Skillz.skillzInstance().initWithGameId("156", for: self, with: SkillzEnvironment.production, allowExit: true)
For Android, find the
<meta-data android:name="skillz_production"> line in your
AndroidManifest.xml file and change the value to
true. That line of code in your manifest will look like:
<meta-data android:name="skillz_production" android:value="true" />
Open the Skillz Settings window (run the
Skillz > Settings menu item), change the
Skillz Environment to
Generate Binary For Skillz
After you have switched your game to Production, you need to upload a binary of the final version of your game to the Skillz Developer Console. This is done for security reasons. By uploading a binary of your game to our server, we can verify that only your game is attempting to access our production servers. If this step is not completed, the production game build will error out on Skillz initialization.
Within Xcode, click
Product > Archive. Select your build and click
Follow the prompts to upload to App Store Connect:
Export as the destination:
Make sure to deselect
Manage Version and Build Number in the distribution options. Deselecting this prevents Xcode from overwriting your set version and build numbers in the main app and in framework dependencies.
Further documentation on .ipa creation can be found in Apple’s documentation.
Upload Your Binary
Once you have your game binary, go to the
Games section in the Skillz Developer Console, choose your game and click on the
Deployments section. In the
Game Builds section choose Edit and then Add game build. You will be prompted to select your
.apk file. Enter a name for your build, the version number, and any build notes, then click Save once the file upload is complete. Please note that if you change your game in any way after uploading the game binary, you must upload a new version in order to play the updated version on the Skillz Production server. You may upload as many binaries as you want.
Make sure the game binary you upload to Skillz is the same exact build as the one you upload to the Apple App Store or Samsung Galaxy Store. If you upload different binaries, Skillz Production will not work as a security precaution against unauthorized software.
Note: The .ipa file created when building to a tethered device directly though Xcode is not always identical to the .ipa file created by exporting through App Store Connect. This may lead to your production build failing to launch Skillz. In this case we recommend using an alternative method to install your exported build, such as Xcode's Devices and Simulators, Testflight, or Apple Configurator.
Test Skillz in Production
After switching to the Production environment and uploading your binary, it is important to fully test all the functionality of your game again. We highly encourage you to test on as many different devices as possible.
Here is a list of the things you should test in Production:
- Verify you can launch Skillz from your game.
- Verify you can log in to a Skillz Production account.
- Verify you can play in all configured tournaments.
- Verify that scores and tournament results are being properly reported.
- Test that cash transactions work in Production.
- Verify that no Skillz operations cause your game to crash.
- Ensure that if players attempting to abort a game are asked to confirm that they want to forfeit the match.
- Verify that push notifications are working in Production.
- Don’t forget, in order to test a new binary in production, you must first upload that binary from the Skillz Developer Console, as mentioned in the previous step.
Production testing can only be done on an actual device, not through the simulator. You must load that binary on to a real device.
Submit to the Appropriate App Store(s)
At this point, you can release your game to the appropriate app stores.
Enroll with Apple as an Organization
For your iOS apps, please enroll as an organization (not as an individual) with Apple and submit your app under that organization. Apple requires competition skill-based games to be submitted by organizations. If you submit games as an individual, your app will be rejected.
Please refer to Apple's docs for enrollment information.
Become a Samsung Partner
Please note that if you don't register as a Samsung Partner, then you will be required to integrate the SDK and have in-app purchases within your game. Therefore, to simplify the submission process to the Samsung Galaxy Store, please enroll your Android apps as a Samsung partner.
Please refer to the Samsung docs for more details.
If your application has been rejected by Samsung for using real-world prizes please submit a request to Skillz Technical Support with each regional Samsung Galaxy Store that you are submitting your game to.
Sign Up for Skillz Games
To distribute your game on games.skillz.com, fill out all of the information in the "Publish on Skillz Games" page, which you can find in your game's Optimize tasks.
Add links to your Apple App Store and/or Samsung Galaxy Store listings so users on applicable devices are directed to those stores upon requesting to download. You can also select which of your Android game builds will be served to non-Samsung Android users to download directly from the page.
Refer to the appropriate app store submission article(s) that your game will be available on. If have a cross-platform game, this usually means you will be submitting to the iOS App Store, Samsung Galaxy Store, along with the Skillz Gamer Portal.
Once your game is live with Skillz, it's time to get paid.
Any game that is running cash tournaments is eligible for receiving payment. We pay our developers within 45 days of the close of the month.
The minimum amount that we will disburse is $250. If your earnings do not reach $250 in a single month, they will be rolled over until you accrue $250 or more in earnings.
Our developers located in the United States have the option of receiving disbursement either by check or payment. Skillz will charge a $30 fee for international wire-transfers to the developer if you are not located within the United States.
You will be paid based on the cash entry fees players pay in your game and will receive a 50% revenue share. The actual amount is broken down on your revenue statement each month.
Revenue Statements will be made available within 30 days of the close of the month in your developer console and sent via email.