HowTo: theta-client 1.11.1 with iOS 18 using Swift from demo-ios

theta-client is the official open source SDK from RICOH. It allows easy access to the WebAPI for the RICOH THETA camera line.

I’ve built the demo-ios sample Swift application and ran it on iOS 18, both a physical device as well as numerous simulators.

In Viewer360.swift, I made a small modification.

original with underscore

config.setValue(true, forKey: "_allowUniversalAccessFromFileURLs")

modification with no underscore

config.setValue(true, forKey: "allowUniversalAccessFromFileURLs")

all functionality works

  • take picture
  • list files
  • live preview with no frame glitches
  • view image after take picture
  • view image from list files

environment

  • Xcode 16.2
  • MacOS 16.2
  • iOS 18.0 on simulator
  • iOS 18.1 on physical device
  • RICOH THETA X with fw 2.63.0

viewer

list files

live preview and take picture

1 Like

Now with iOS 18.2 on Physical Device

image view works with no problems

Live Preview Works with No problems

Network configuration


Client Mode

In ThetaSdk.swfit

class Theta {
    static let endPoint: String = "http://192.168.86.163"
    var thetaRepository: ThetaRepository?
    var lastInfo: ThetaInfo?

    func reset() {
        thetaRepository = nil
    }

    func initialize() async throws {
        if thetaRepository != nil {
            return
        }
        var config: ThetaRepository.Config?

        // Client mode authentication settings
        config = ThetaRepository.Config()
        config?.clientMode = DigestAuth(username: "THETAYR14113409", password: "14113409")

I tested the following with client mode:

  • live preview
  • take picture
  • list files - to get data