Difference between revisions of "Game Packaging/Android"
Jump to navigation
Jump to search
Ankushdutt (talk | contribs) |
Ankushdutt (talk | contribs) m |
||
Line 11: | Line 11: | ||
# Create the base AAB (containing only base ScummVM APK) by <code>make -j8 androidbundlerelease</code> or <code>make -j8 androidbundledebug</code>. | # Create the base AAB (containing only base ScummVM APK) by <code>make -j8 androidbundlerelease</code> or <code>make -j8 androidbundledebug</code>. | ||
# If applicable, hardcode a new game entry with required metadata in <code>PlayStore::getAllDLCs()</code> function. And also, add new entry to <code>packaging/dlc-games.json</code>. | # If applicable, hardcode a new game entry with required metadata in <code>PlayStore::getAllDLCs()</code> function. And also, add new entry to <code>packaging/dlc-games.json</code>. | ||
# For each game, run the <code>packaging/package.py</code> with <code>--export-platform android --game [game key as per dlc-games.json] --game-location [directory for the extracted game folder] --binary-location [directory for the AAB]</code>. You can find the | # For each game, run the <code>packaging/package.py</code> with <code>--export-platform android --game [game key as per dlc-games.json] --game-location [directory for the extracted game folder] --binary-location [directory for the AAB]</code>. You can find the ready-to-upload AAB (with all games) in <code>packaging/output/android</code>. |
Latest revision as of 16:09, 27 August 2023
Play Store Distribution
Android Play Store is one of the target platforms to allow downloading DLC from Play Store's server. For Play Store, the base ScummVM APK must be bundled together with games in an AAB (Android App Bundle) format.
The following metadata is required to package games:
id
(Required): It could be any string to uniquely identify the game. To start the download, id is required. Also, the download key for the game entry in ScummVM configuration file will equal to id.name
(Required): Name of the game visible on DLC dialogs.- The detection data for ScummVM config game entries:
description
,engineid
,extra
,gameid
,guioptions
,language
,platform
. For the data not available leave them as empty string. You might need to run the game detection code by adding a game to get these values.
The current temporary workflow for creating the ready-to-upload Play Store AAB distribution with DLC support is:
- Enable DLC support by using
--enable-dlc
with./configure
. It is disabled by default. - Create the base AAB (containing only base ScummVM APK) by
make -j8 androidbundlerelease
ormake -j8 androidbundledebug
. - If applicable, hardcode a new game entry with required metadata in
PlayStore::getAllDLCs()
function. And also, add new entry topackaging/dlc-games.json
. - For each game, run the
packaging/package.py
with--export-platform android --game [game key as per dlc-games.json] --game-location [directory for the extracted game folder] --binary-location [directory for the AAB]
. You can find the ready-to-upload AAB (with all games) inpackaging/output/android
.