Jude Melton-Houghton d0a118f5b1 Add `minetest.get_game_info` and allow reading `game.conf` (#12989) 1 year ago
..
mkdocs cae7ec1eb4 Cut back on Gitlab-ci & misc pipeline updates 2 years ago
Doxyfile.in 76dbd0d2d0 Fully remove bitmap font support (#11863) 2 years ago
README.android a7143c2a8c Move build/android directory to root of project (#11283) 3 years ago
breakages.md 8817af07fb Deprecate special handling of `${key}` syntax in metadata values (#12970) 1 year ago
builtin_entities.txt 02c293ec63 Fix some outdated stuff about falling node docs 2 years ago
client_lua_api.txt 7e11b8eb72 Fix typos and en_US/en_GB inconsistency in files inside doc directory (#12882) 2 years ago
direction.md 7e11b8eb72 Fix typos and en_US/en_GB inconsistency in files inside doc directory (#12882) 2 years ago
fst_api.txt 7e11b8eb72 Fix typos and en_US/en_GB inconsistency in files inside doc directory (#12882) 2 years ago
lgpl-2.1.txt 7993909fab Spacing fixes 2 years ago
lua_api.txt d0a118f5b1 Add `minetest.get_game_info` and allow reading `game.conf` (#12989) 1 year ago
main_page.dox 711808343d Actually add Doxygen main page 8 years ago
menu_lua_api.txt dac05a500e Fix `menu_lua_api.txt` formatting (#12971) 1 year ago
minetest.6 19e936362a Add support for MINETEST_USERDATA environment variable (#12639) 2 years ago
minetestserver.6 93fcab952b Clean up and tweak build system 9 years ago
mod_channels.png 6f1c907204 Implement mod communication channels (#6351) 7 years ago
protocol.txt 23ea02c79c Protocol Docs: Python check bump to Python 3 5 years ago
texture_packs.txt 7e11b8eb72 Fix typos and en_US/en_GB inconsistency in files inside doc directory (#12882) 2 years ago
world_format.txt 7e11b8eb72 Fix typos and en_US/en_GB inconsistency in files inside doc directory (#12882) 2 years ago

README.android

Minetest: Android version
=========================

Controls
--------
The Android port doesn't support everything you can do on PC due to the
limited capabilities of common devices. What can be done is described
below:

While you're playing the game normally (that is, no menu or inventory is
shown), the following controls are available:
* Look around: touch screen and slide finger
* double tap: place a node or use selected item
* long tap: dig node
* touch shown buttons: press button
* Buttons:
** left upper corner: chat
** right lower corner: jump
** right lower corner: crouch
** left lower corner: walk/step...
left up right
down
** left lower corner: display inventory

When a menu or inventory is displayed:
* double tap outside menu area: close menu
* tap on an item stack: select that stack
* tap on an empty slot: if you selected a stack already, that stack is placed here
* drag and drop: touch stack and hold finger down, move the stack to another
slot, tap another finger while keeping first finger on screen
--> places a single item from dragged stack into current (first touched) slot

Special settings
----------------
There are some settings especially useful for Android users. Minetest's config
file can usually be found at /mnt/sdcard/Minetest.

* gui_scaling: this is a user-specified scaling factor for the GUI- In case
main menu is too big or small on your device, try changing this
value.

Requirements
------------

In order to build, your PC has to be set up to build Minetest in the usual
manner (see the regular Minetest documentation for how to get this done).
In addition to what is required for Minetest in general, you will need the
following software packages. The version number in parenthesis denotes the
version that was tested at the time this README was drafted; newer/older
versions may or may not work.

* Android SDK 29
* Android NDK r21
* Android Studio 3 [optional]

Additionally, you'll need to have an Internet connection available on the
build system, as the Android build will download some source packages.

Build
-----

The new build system Minetest Android is fully functional and is designed to
speed up and simplify the work, as well as adding the possibility of
cross-platform build.
You can use `./gradlew assemblerelease` or `./gradlew assembledebug` from the
command line or use Android Studio and click the build button.

When using gradlew, the newest NDK will be downloaded and installed
automatically. Or you can create a `local.properties` file and specify
`sdk.dir` and `ndk.dir` yourself.

* In order to make a release build you'll have to have a keystore setup to sign
the resulting apk package. How this is done is not part of this README. There
are different tutorials on the web explaining how to do it
- choose one yourself.

* Once your keystore is setup, enter the android subdirectory and create a new
file "ant.properties" there. Add following lines to that file:

> key.store=
> key.alias=Minetest