Deployment to Device
This document will discuss the build and deployment processes of Gideros Player and your application to mobile/tablet devices.
When you press start button, your codes and asset files are transferred to your device via WiFi and your application starts.
Gideros includes support for Android, that is, you can write your code in Gideros Studio and deploy to both iOS and Android using same set of code. In order to have a working Android environment, you need to follow these steps:
- Install Android Studio for your operating system (see: https://developer.android.com/studio/ ).
- Deploy Gideros Player to your Android device (this is explained below).
- Deploy your application to your Android device (this is also explained below).
After installing Android Studio, follow these steps to deploy your Player and application to Android.
Deploying Gideros Player to Android devices
Gideros Studio comes with GiderosAndroidPlayer.apk, which is on the root directory of the installation folder. This apk file is used to "run" your application on a real device, so you can test your application thoroughly.
There are multiple easy methods to install an APK file to your device. For all methods make sure that you set the options in your device to allow the installation of non-market apps. This options has to be activated in your phone under
- Using adb install command: adb command comes with Android SDK, and can be used to automatize some actions (e.g installing or removing packages) on your device. Go to the GiderosAndroidPlayer.apk folder and run the following on a command line :
adb install GiderosAndroidPlayer.apk
In order to perform the command above, your computer and your Android device should be connected, and you should have installed necessary Android drivers to your computer before.
- Installing from device: Connect your Android device to your computer and copy GiderosAndroidPlayer.apk file to your device's internal disk. Then, using an internal file manager, click on the APK file and install.
- Install from cloud/Internet: Copy the player to a cloud service such as Dropbox or copy it to the Internet. Now click on the file in the services Android app or from the URL you copied it to. Android will install it.
After you install Gideros Player on a real device, you can immediately start testing your applications on your Android, by clicking on the GiderosAndroidPlayer icon and observing the IP address of your device. Then go to Gideros Studio → Player → Player Settings and enter the IP here. As you click OK, Gideros Studio will connect to your Android device and the play button will go green.
Deploying your application to Android devices
- Open your application with Gideros Studio.
- Export your application for Android (File → Export Project).
Apple requires developers to subscribe to Apple Developer Program. This allows programmers the ability to run their application on real devices. If you haven't done so, click http://developer.apple.com/ to join the iOS Developer Program either as an individual or a company.
These are the steps you need to follow before going on for iOS deployment. If you have already completed these steps, go to "Deploying Gideros Player to iOS devices" section.
- Obtaining your Certificate: https://developer.apple.com/ios/manage/certificates/team/howto.action
- Assigning devices: https://developer.apple.com/ios/manage/devices/howto.action
- Creating your App IDs: https://developer.apple.com/ios/manage/bundles/howto.action
- Creating Provisioning Profiles: https://developer.apple.com/ios/manage/provisioningprofiles/howto.action
Deploying your application to iOS devices
To deploy your application to iPhone/iPad you need to:
- Export your application as Xcode project
- Build and deploy Xcode project to actual device
First step is done through "File → Export Project" menu:
For the second step, you need Intel-based Mac running Snow Leopard and Apple Developer License.
Deploying Gideros Player to iOS Devices
For your iOS device, you need to build and sign the player application yourself. Like everything for iOS, this has to be done within XCode. Please unzip the GiderosiPhonePlayer.zip archive to a location of your choice. Start XCode and load:
Inside XCode, browse to the resource section in the “Groups and Files” list box and there open the GiderosiPhonePlayer-Info.plist. Here you need to set the bundle identifier to the app ID you have used to create a provisioning profile in the iOS Provisioning Portal.
After you have made your changes, save it and open the project settings. There you need to set the code signing identity to the one of your provisioning profile. If it doesn’t show up, then you have forgotten to actually install it. And make sure that you set the code signing identity in the configuration you want to use when you build the player. Close the settings and then Build and Run the player. If everything was set right, you will see the icon for the player show up in your device which should look like this:
You will need Visual Studio 2017, there is a free version (community edition): https://visualstudio.microsoft.com/downloads/
You will also need (installed whilst VS2017 is closed):
The latest Windows SDK: https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk
The latest advertising SDK: https://marketplace.visualstudio.com/items?itemName=AdMediator.MicrosoftAdvertisingSDK
Export your Gideros app/game like you would any other platform. Select the UWP tab in export.
Once exported, go to the export folder, look in the app/games sub-folder and double-click the .sln file.
Visual Studio 2017 should open, make sure that the build type is set to 'Release' (not 'Debug'), then click the Build menu item and click 'Build solution'.
Export your Gideros app/game as usual, selecting Html5 tab.
Most options are pretty much self explanatory, however a few of them deserve explanation:
- Facebook Instant Game: tick here if you are targeting Facebook instant game platform. If you do so, you will have to select a preload amount, which correspond to how much gideros loading (the time before your lua code is executed) weight in your app loading. You will typically leave it to 100%, unless your code takes a significant amount of time to init. In the latter case, set preload amount to whatever is suitable for you then call FBInstant.setLoadingProgress to update loading bar within your app.
- Host name: lock your app to this hostname. Your app will refuse to run if hosted/accessed from a non matching url.
- Crash reporting URL: You can indicate here an endpoint where crash reports will posted to. A basic PHP receiver script may be:
<?php header("Content-Type: text/plain"); $json = file_get_contents('php://input'); error_log("JSCRASH:".$json); ?>