Open pelya opened 2 years ago
And now that I have transferred Android app, implementing all this stuff is someone else's headache 👍 sorry Semphriss
It is practically guaranteed that Android TV app will be rejected after the first review, sometimes doing some trivial change and submitting the same app would allow me to pass the review, and they usually explain why they rejected the app.
Android TV section in Play Console can be found here: https://i.stack.imgur.com/ACigj.jpg
SuperTux version: 0.6.3 System information: Android
Expected behavior
SuperTux was published for Android TV up to version 0.5.1
Actual behavior
SuperTux 0.6.3 is not available for Android TV
Steps to reproduce actual behavior
Try to install SuperTux onto any smart TV with Android
Additional debugging information
Android TV apps are manually reviewed. SuperTux mostly satisfies TV requirements, but following changes should be implemented:
Right now Back button opens and closes the Pause menu, but does not close the level or the worldmap. Back button generates keypress SDL_SCANCODE_AC_BACK on SDL2, and you need to call SDL_SetHint(SDL_HINT_ANDROID_TRAP_BACK_BUTTON, "1"); to receive the keypress.
The required margin is 5% for all screen edges, that is, shrink the game screen to 90% size and add borders to the edges. My app was rejected when I've added plain black borders, but it was accepted with this border graphics: https://github.com/pelya/commandergenius/blob/sdl_android/project/res/drawable/tv_border_top.jpg
You can check whether the app is running on Android TV like this: if (getenv("ANDROID_TV")) { ... }
You will also need to add following lines to your AndroidManifest.xml:
Beware, it is overwritten each time you run changeAppSettings.sh. You can add these changes to the patch project/jni/application/supertux/project.diff which is applied by changeAppSettings.sh automatically. The default AndroidManifest.xml comes directly from SDL2 repository, and it is missing all this stuff and also INTERNET permission, go open an issue in their github repo so they stop slacking with Android support.
More info about Android TV: https://developer.android.com/training/tv