The iPhone and THETA X are only separated by a meter. Pressing the ‘Take a Photo’ button on the device with the WiFi connected to the THETA X camera, worked appropriately. The log outputted the warnings shown below, but it didn’t interfere with the app’s functionality.
Test #2: Testing the Internet Connection with iPhone WiFi Connected to Router
While the app was running, I disconnected the mobile device from the THETA X’s WiFi and reconnected my device to a router. Now, the log outputted the failed to connect error. I received a series of Connection errors when trying to take a picture as shown below. I replicated this procedure and got the same output.
Tests #5, #6, #7: Placing the THETA X camera at Varying Distances
We placed the THETA X camera at varying distances and on the other side of a wall to replicate an unstable WiFi connection with dropped packets. Distance from THETA X were as follows:
test #5: 10 meters
test #6: 20 meters
test #7: 30 meters
The live preview function to take photos didn’t always appear and the camera appeared to take a longer time to capture the image, suggesting that the HTTP data needed to be resent from the iPhone to the camera. Nonetheless, the app was still able to take photos without a critical error.
Conclusion
We were not able to replicate the NSURLErrorDomain error. There is no obvious situation where the NSURLErrorDomain error appears. A lost connection did not cause the error in my test. Additionally, an unstable connection where the motionjpeg frames from livePreview were dropped, did not cause the error.
@jcasman another developer had the same problem. Let’s put this information from Anjali on the agenda for the meeting we have with our contact at RICOH.
In a previous post, she listed the following camera information.
Firmware Version:2.51.0
Manufacturer: Ricoh Company, Ltd.
Model: RICOH THETA X
Do you think there is a router in the area that your mobile phone is connecting to temporarily? The THETA can’t handle https, so the error with the https response is not coming from the THETA.
What library are you using to send the http requests?
If you disconnect the THETA and the iPhone and then run info, does this error come up?
The Internet connection appears to be offline.,
NSErrorFailingURLStringKey=http://192.168.1.1/osc/i
Maybe this is just the error that is shown from the library when the library cannot reach the network endpoint? We can try and use the same iOS library and see if we can replicate the error.
I spoke to a contact at RICOH about this and they cannot replicate the error either.
Hi @craig@jcasman@caitlyn,
We also still experience the same issue for some our clients.
I have a question regarding info.plist.
In Ricoh demo project in info.plist I see keys “NSTemporaryExceptionAllowsInsecureHTTPLoads” and “NSTemporaryExceptionRequiresForwardSecrecy”. But at the same time I can’t find any official apple documentation about these keys. There is documentation only about keys NSExceptionAllowsInsecureHTTPLoads and NSExceptionRequiresForwardSecrecy.
In our app we use keys like in demo app, so maybe we have to change these keys to NSExceptionAllowsInsecureHTTPLoads and NSExceptionRequiresForwardSecrecy?
It would be also great if you could provide us the info.plist from real Theta app, but not from demo app, maybe they have there some other keys that could fix this issue?
New comment in GitHub issue posted by RICOH engineer points to article called Working with Apple’s App Transport Security that explains about NSExceptionAllowsInsecureHTTPLoads and NSTemporaryExceptionAllowsInsecureHTTPLoads .
Posting here just so this thread includes the latest info from the GitHub issue.
@craig thank you! I will ask our customer support team about checking with RICOH360 App. Meanwhile Is it possible to get info.plist from this app? Just to compare the keys with our app.
That article doesn’t look like an official Apple Developer document. Additionally, it is 9+ years old.
I believe the objective was to find the official documentation.
The 9 year old non-Apple document that you posted does link to an official Apple Document, but that does not appear to list NSTemporaryExceptionAllowsInsecureHTTPLoads
@jcasman can you bring this up with your contacts at RICOH? I am hoping that since the RICOH360 app is under active development, that there might be a way to get more information about the security settings.