The SmartView SDK for iOS indicates that web apps can be loaded from the cloud, and I verified that it worked with an existing demo app hosted on amazon AWS (the demo app is not under our control, I am not sure who owns/controls the assets at this url - I had found the reference here).
However, I wasn’t able to make it work with the web app that I control under a different url (http://webtv.dev.swishly.com/photoshare/tv/
). Here are the details:
The below code works (it prints “OK Connected!!”)
func connect( _ service: Service) {
let appId = URL(string: "http://prod-multiscreen-examples.s3-website-us-west-1.amazonaws.com/examples/photoshare/tv/")! as AnyObject
let channelID: String = "com.samsung.multiscreen.photoshare"
guard let msApplication = service.createApplication(appId, channelURI: channelID, args: nil ) else {
fatalError("Failed to create application")
}
msApplication.connect(attr) { (client: ChannelClient?, error: NSError?) in
guard error == nil else { fatalError("Failed to connect") }
NSLog("OK Connected!!")
}
…but if I simply substitute the appId value with my own url, the SDK spits out an errorError Domain=Channel Error Code=404 "Not Found"
.
• I triple-checked that my url is valid, the server returns a valid response when the request originates from other clients (curl, browser)
• My server logs show no actual attempts to hit the url when the smartview SDK is asked to connect()
So it appears that the “404 not found” message does not refer to an HTTP 404 returned by the server. Can someone shed some light on this behavior?