Hello team,
What would be the best preferred hybrid technology on app talks with Ricoh devices with respective to sdk support?
React js or Xamarin
Anything else works better than the above ?
Hello team,
What would be the best preferred hybrid technology on app talks with Ricoh devices with respective to sdk support?
React js or Xamarin
Anything else works better than the above ?
We have a lot of information on Flutter.
If you use Xamarin, this may be useful. Solution at end of topic.
We did some projects with Electron a while ago.
What are the project requirements?
Thanks for those link @craig
Do you have useful or documentation link for react js works with Ricoh ?
sorry, I haven’t tried using React Native in a while. You can search for JavaScript on this forum and get some useful links for packages for the viewers.
The http requests seem to be fine, even the client mode seems to work.
I didn’t test the request-digest package with React Native, but it may work.
@Babu are you working only with the SC and S? Or, are you looking for a solution that is compatible with the SC2, V, X, and Z1 as well?
Not specific to device variants. We are currently providing SC2 , Z1 , Theta V to our customers !
Our current codebase is in iOS native. We are planning to go hybrid approach either in Xamarin or react native technology, so looking for the best approach with full ricoh sdk support
Great to hear about your support of the RICOH THETA models. Does your purchasing department buy the cameras directly from RICOH ? @jcasman want to see if he can get a discount code for your company or a better way to buy the cameras. You can also send him email directly at jcasman@oppkey.com
For the hybrid development, can you let us know your requirements for these features:
requirement | comment |
---|---|
http access point HTTP requests | no known problems with any approach. Must allow http in iOS and Android configurations. Camera cannot use https (secure http) |
client mode HTTP request | package must support digest authentication. You can also specify the header yourself, but it may be more difficult. On Flutter/Dart, http_auth does not seem to work with the THETA models. the SC2 does not support client mode |
360 image | no known problems displaying from camera, local storage or cloud storage |
live preview, motionjpeg stream | it will likely work. We have encountered some problems with the SC2, but eventually, it seems to work. We have not tested React Native and Xamarin with the livePreview. The format is a standard motionjpeg stream. Most implementations do not use navigation on the motionjpeg stream and show it in equirectangular. Some people have added navigation to motionjpeg stream. We do not have a good example. |
play 360 video from mobile phone local storage | you need to test this yourself. It may depend on the native code of the plug-in to the hybrid framework due to GPU acceleration |
Once we know your requirements, we can research more info. I do not know of a complete example of a THETA app with a hybrid development platform. We can research the package support (such as 360 video player) and post our findings here in the forum.
Update: 11/10/2022
I just spoke to a person familiar with a commercial software company that is using React Native for two different RICOH THETA apps. The technology is working fine for them. There’s some precedence for using React Native. Unfortunately, we do not have examples of a full app on .guide.
Hello,
When considering hybrid technology for app communication with Ricoh devices, both React Native and Xamarin have their advantages, but the best choice depends on SDK support and development requirements. React Native is widely preferred due to its strong community support, faster development cycles, and better performance with JavaScript-based libraries. However, Xamarin offers deeper integration with native APIs, making it a strong option if tight coupling with Ricoh SDKs is required. It’s also worth exploring Flutter, which provides excellent cross-platform performance and a modern UI framework.
I don’t think that Xamarin works with theta-client, so you would need to development the camera connection portions yourself. This is doable as the API is open and easy to use.
However, if you want to use theta-client, then you need to use React Native or Flutter.
Flutter has a nice 360 image viewer called panorama_viewer. For React Native, you may need to use a webview, which can be challenging unless you’re already familiar with webview.
Due to the availability of a 360 image viewer for Flutter that doesn’t need webview, it will be easier to develop with Flutter initially.
The 360 image viewer that ships with the theta-client demos is not intended for production use.