Skip to main content

Console

Description

This demo app offers a basic example of setting up simple console applications using Ocean, designed to operate across multiple platforms. In this context, "console" refers to the absence of complex UI elements, focusing instead on displaying Ocean's log messages.

Image: Screenshot of console app on iOSImage: Screenshot of console app on AndroidImage: Screenshot of console app on Desktop

The app is available on all platforms and represents Ocean's simplest demonstration application. Despite its simplicity, it serves as an excellent starting point for quick debugging and prototyping.

The code for desktop platforms can be found in Console.cpp. Platform-dependent code is located in sub-directories that match the name of the corresponding platform.

Building

Ensure the third-party libraries have been built for Android for all of the required Android ABIs. Let's assume the base location for third-party libraries is ${HOME}/install_ocean_thirdparty, i.e., the Android versions will be located in ${HOME}/install_ocean_thirdparty/android_${ANDROID_ABI}....

# Define this so that Gradle (and CMake) can find the third-party libraries.
export OCEAN_THIRDPARTY_PATH="${HOME}/install_ocean_thirdparty"

# Change into the directory with the Gradle config of this project
cd ${OCEAN_DEVELOPMENT_PATH}/build/gradle/application/ocean/demo/base/console/android

# In ./app/build.gradle.kts, ensure that only those Android ABIs are enabled for which the corresponding third-party libraries have been built. Otherwise, your build will fail, cf. the [general build instructions](https://github.com/facebookresearch/ocean/blob/v1.0.0/building_for_android.md#4-building-the-ocean-android-demotest-apps).

# Build the debug and release APK of this
./gradlew assemble

# Install the desired APK
adb install app/build/outputs/apk/debug/app-debug.apk
adb install app/build/outputs/apk/release/app-release.apk

By default, the log output will be displayed on the screen of the phone as well as in the Android logs, which can be displayed using:

adb logcat -s Ocean

The logging behavior can be changed in application/ocean/demo/base/console/android/DemoConsoleActivity.java.