This guide explains how to sign, build, and test your app on Android devices.
You do not need to install the Android SDK. However, you will need to install the proper version of the Java Development Kit if you’re using Windows. See the Java Development Kit section for details.
The Android build process generates two files: an .apk
and an .aab
file. You can build and test apps on Android devices without creating a Google developer account, but you will need an account if you wish to publish to the Google Play marketplace.
The Android App Bundle file, .aab
, is automatically generated when you build for Android. You can use this file to submit your apps or games to Google Play.
We only support Android devices that run
When you build an Android app using Solar2D, you must specify a package name. In general, you can specify any package name you like, but it must be chosen carefully because it should be unique to your application.
The traditional Java scheme is to use the com.acme
, then append the name of a division/product, and finally append the name of the app. For example, com.acme.games.catchafish
would be a good package name, assuming you own the acme.com
domain name.
In some cases, the package name that results from using
The package name contains a hyphen or other special character (com.three-amigos
for example). In this case, convert the special character to an underscore: com.three_amigos
.
One of the name components contains a digit or other invalid character at the beginning of an identifier (com.3amigos
for example). In this case, try to convert the package name to something like com.threeamigos
.
One of the name components contains a keyword, for example com.private.idaho
. In this case, suffix that part of the package name with an underscore: com.private_.idaho
.
If you aren’t familiar with the available build settings for an app, please review them before proceeding with this section.
Make sure that your Android device is enabled as a development device.
From the Solar2D Simulator, select File → Open… to load the project you wish to build.
Select File → Build → Android….
Fill in the information:
Application Name — by default, this will match your project folder; keep this name or specify another.
Version Code — this value must be an integer. Each time you update your app, you must increase the version code. It corresponds to the versionCode
item detailed here. It is not visible to users.
Version Name — specify a version name for your app.
Package — see Java Package Name above.
Target App Store — select Google Play from the pull-down list.
Keystore / Key Alias — in order to build for Android devices, you must digitally sign your app using a keystore. Please refer to either Signing for Debug Build or Signing for Release Build below.
Save to Folder — specify where to save the compiled app.
After Build — select which action should be performed after the app is successfully built.
Create Live Build — check this box to create a live build for
Click Build and Solar2D will compile the app into a standard .apk
file.
For debug builds, Solar2D includes a debug.keystore
for testing your app on devices. To use it, follow these steps:
Select Debug from the Keystore menu.
Directly to the right, Browse… to the keystore file in the Solar2D SDK application folder:
Windows — C:\Program Files (x86)\Corona Labs\Corona\Resources\debug.keystore
macOS — /Applications/Corona/Resources/Resource Library/Android/debug.keystore
Select the file and enter android
as the password.
In the Key Alias menu, select androiddebugkey
.
For release builds, you must sign with your private key. You can generate this key using the command line program Keytool. Please follow these simple steps:
Open the Command Prompt in Windows or the Terminal in macOS. Once there, use the cd
command to change to the directory where you’ll keep your keystores.
Type the following command at the prompt, replacing mykeystore
with the name of your application and aliasname
with a similar or equal alias name.
keytool -genkey -v -keystore mykeystore.keystore -alias aliasname -keyalg RSA -validity 999999 -deststoretype JKS
There are four methods to install an app on an Android device. You can not simply copy the .apk
file over to the device.
If you’re using the Solar2D Simulator for macOS, you can copy the app directly to a connected device. This feature is not supported on Windows.
Connect your device.
Follow the steps outlined in Build Process above, ensuring that you select
If you have already installed the Android SDK, use adb install -r your-app.apk
.
Upload the .apk
to a web server. Next, point your Android device’s web browser to the file’s URL to download the app to the device. Finally, click on the file in the Download History to install it.
If this method fails, and the application downloads as a text file, you may need to add the following configuration line to a .htaccess
file in the application’s directory on the web server:
AddType application/vnd.android.package-archive .apk
Also, you should set your device to install non-Market applications if you are using debug.keystore
. Click the Settings icon on the device, select Applications, then check the box next to Unknown Sources.
Obtain an app installer from Google Play to assist with the process.
Google’s Android SDK provides a set of tools known as Android Debug Bridge or adb. These tools let you look at the device’s console log, install, and replace existing apps on your device. You can execute the adb
command from the macOS Terminal or from the Windows Command Prompt. A GUI tool called monitor is also installed; it can be used to examine the log file and capture screen shots from your device.
For more details on Android debugging, see the Debugging Guide.