New theta-client library and starter mobile apps for iOS/Android, React Native, Flutter

There’s a new library for RICOH THETA mobile app developers on the ricohapi GitHub repo.

The library makes it easy to use the RICOH THETA API v2.1 that we’re all using for mobile app development.

Demos and source code are available for:

Android Test with Pixel 2 and RICOH THETA Z1

Image display

image navigation - same image rotated

live preview

image

demo interface

image

THETA Client

This library provides a way to control RICOH THETA using RICOH THETA API v2.1. Your app can perform the following actions:

  • Take a photo and video
  • Acquire a list of photos and videos
  • Acquire a JPEG file and MP4 file
  • Acquire the status of THETA
  • Acquire and set properties of THETA

Supported Environments

  • Android native (Kotlin)
  • iOS native (Swift)
  • React Native
  • Flutter

Supported Models

  • THETA X
  • THETA Z1
  • THETA V
  • THETA SC
  • THETA S (firmware version 01.62 or later)

Directory Structure

  • theta-client
    • demos: Demo applications
    • docs: Documentation
    • kotlin-multiplatform: Library body (Kotlin Multiplatform Mobile)
    • reactNativeMain: React Native package
    • flutter: Flutter plugin

For the test, I used Android Studio Electric Eel on macOS 13 Ventura.

I added the path for my Android SDK to local.properties in the project root.

I tested on an Pixel 4a AVD and physical device Pixel 2 connected to a RICOH THETA Z1.

The library looks great and I encourage all mobile developers to check it out.

If you check out theta-client, please post your experience.

1 Like

Video demonstration of features.


build theta-client on process Linux, Ubuntu 22.04

install JDK

$ sudo apt install default-jre

verify ANDROID_HOME is set

$ echo $ANDROID_HOME
/home/craig/Android/Sdk

verify JAVA_HOME is set

$ echo $JAVA_HOME
/usr/lib/jvm/java-11-openjdk-amd64

If you need help with the environmental variables, post a question below. The basic process is export JAVA_HOME=[PATH]

build theta-client library

$ ./gradlew publishToMavenLocal
Downloading https://services.gradle.org/distributions/gradle-7.3.3-bin.zip
...
...

BUILD SUCCESSFUL in 7m 24s
58 actionable tasks: 58 executed

build demo-android on Linux Ubuntu 22.04

Using Electric Eel.

  • Pixel 4, API 33

RICOH THETA official mobile sdk library and Android demo complete build and install

This video covers installation of software needed for the build.

Step-by-step, including:

  • git clone of code
  • installation of Android Studio
  • installation of Java SDK
  • build of library
  • build of android demo
  • install on physical phone

Flutter Test theta-client library

live preview in equirectangular mode

take picture

works as expected

postview in equirectangular

file listing with thumbnails

video

take and display video

THETA X Demo on iPhone 14 Pro Max with iOS 16.2

SC2 Demo on iPhone 14 Pro Max Using Flutter

Build Native iOS demo

  • pod install
  • open xcworkspace in XCode

live preview in equirectangular - native ios demo version

postview on phone - native ios demo version

navigation works

native ios demo version

React Native Test on Android

list files

equirectangular image display


Update February 5, 2023

Started community effort to translate documentation here:

https://github.com/theta360developers/theta-client-guide/blob/main/docs/tutorial-flutter.en.md


Update February 8, 2023

Flutter build process on Windows 11