In recent development game that I am working in, we are usually making 2 different build, one for QA and the other for release candidate.
In QA build, we set GameSparks to be preview.
In Release build, we set GameSparks to not be preview.
But after running several QAs, we found it's tedious to maintain 2 different builds as QA and Release.
In past, when I worked with a publisher, they asked to use their platform and the platform had similar feature like Unity Remote Setting that allowed to receive values that have been set in their platform server. By using the remove setting feature, I managed to switch QA setting to Release setting such as changing server url address and etc.
Since I am using GameSparks, I wonder how to implement the Unity Remote Setting like feature within GameSpark. For example, I am currently playing with Properties, but it's not easy because of separation of Live DB and Preview DB. Am I right?
Any tips will be very appreciated.
If you would like to have a look, we have documentation on multi-stage publishing here. I believe you might find this useful as preview should only be used to test and implement new features etc to your game, and when you are happy with your code then publish it to live.
Thanks for the quick response. I read the link you gave and it looks interesting way to manage project.
However, what I want to achieve is using only one build for Test and Live.
If I change Game in GameSparks, the GameSparks api and secret will be changed and those have to be hard coded(or set) in client build which requires one client build for each stage. That causes maintain issue and could lead QAs not believing the equality between Test build and Live build.
I confirmed that Properties can be retrieved without Authentication request, however it is differed for each snapshots.
Would you be able to tell me what exactly is it that would like to have persist throughout LIVE and PREVIEW without having to publish a new snapshot or having multi stage publishing?
With persisted setting, it can give ability to change setting without making different builds for different settings.
In my case, I am making 3 different builds for each OS.
1st one is the development build, 2nd one is the QA build, and 3rd one is the Release build.
1st and 2nd builds are set as Preview Build on GameSparksSetting, but 3rd build is not.
Each three builds pass different segment to separate users to get different data and properties.
For example, I don't want to mix QA users with Real users on same leaderboards since QA users have access to cheat functions.
As you can expect, I make the development builds time to time. But I make QA and Release builds when those are required, for example by Publishers. But preparing 2 different builds have some downside. First of all, maintaining 2 builds. Also if we test it by uploading GooglePlay, we have to uploaded 2 times, first time with QA build and second time with Release build.
So, if you have solution like persist property for LIVE and PREVIEW, we can easily(?) change setting WITH ON ONE BUILD. We can even set/unset PreviewBuild property in GameSparkSetting.
It was bit long but it can give you understanding of what I need.