The Jami client for Android
App | CI |
---|---|
Download the project including the daemon submodule with:
git clone --recursive https://review.jami.net/jami-client-android
Or to download the daemon submodule from the existing project directory:
git submodule update --init --recursive
Make sure to have autotools, autopoint, swig, yasm, m4, ninja-build and cmake available on your system.
Warning
Jami needs at least swig 4.2 to work. Else it will raise errors at compilation. See if the package is available with this version from your package manager, else you will need to install it from sources.
apt install cmake build-essential swig yasm ninja-build m4 autotools-dev autopoint
pacman -S cmake ninja automake swig yasm m4 patch autoconf pkgconf
brew install cmake automake autotools libtool pkg-config yasm swig
When using brew on macOS, the 'libtoolize' binary might be available as 'glibtoolize'. In that case, the following command makes it avaialble to the build system:
ln -s /opt/homebrew/bin/glibtoolize /opt/homebrew/bin/libtoolize
Make sure to have the Android SDK and NDK available.
- Add 'jami-android' in Android Studio
- Click on build
- Enjoy!
cd jami-client-android/jami-android
./gradlew assembleDebug
Jami Android doesn't use the system's pkg-config
; it builds its own version with custom parameters to support cross-compilation. However, after cleaning the project, pkg-config
may not be rebuilt, which could result in falling back to the system's version, leading to errors when trying to locate shared libraries.
cd jami-client-android/daemon/extras/tools
./bootstrap && make
Update translations using the Transifex client (tx) :
./update-translations.sh
Generate a new release commit updating the version code and version string:
./update_version.py --commit
Report issues on Gitlab: https://git.jami.net/savoirfairelinux/jami-client-android