tvOS - Display web content - tvos

First off - our needs don't require any sort of interaction with the web view, we simply want to display content from the web.
Situation: we want to make a glorified slide show that pulls in web content. We were intending on having a list of templates shown to the user on the TV app, they can pick one, and then the appropriate URL is hit for that template (which would live on the web). The web portion would handle things from there, navigating to a new URL every X seconds (which just displays the next set of data in the same template)
In learning that web views are restricted, and you can't sneak an app submission by apple while utilizing a web view, we've hit a dead end. Having hundreds of templates that are all hard coded doesn't seem maintainable for us to do, plus we can't deliver a new template to users (er.. clients) without going through the potentially lengthy app approval process every time.
Does anyone have any other bright ideas for storing templates on the web, maybe even in a data format, that we can download and interpret/parse in-app to know where to position image views, labels, etc?
Thanks for any suggestions!

I know I'm a little late to the party, but I wanted to answer your secondary question. It is absolutely possible to load TVML files from the web without updating the tvOS submitted app. We have a published tvOS app that is currently doing this.
As I recall, the tvOS app we submitted is very basic, with the only real change being the TVBaseURL. We placed all of our TVJS files on Google App Engine and the TVML files are in the GAE Storage bucket, so the TVBaseURL points to the public URL for those files. I have a cron job that reads an API and dynamically builds the TVML files several times a day. When the TVOS app runs, it loads the files from the GAE Storage bucket. The real benefit is that I can update the TVML layout and add or delete screens as needed without ever needing to go through the app submission process.

Related

SCORM file that launches website using URL

We are currently using an LMS system for an online course. Almost all of our material is online. We are starting to SCORM format our online material. Instead of attempting to physically merge all of our HTML pages within a SCORM file, isn't there a way to simply have the SCROM file launch a given URL automatically? All of our material needs to be in SCORM format in order for our LMS system to track the time spent in our LMS course which is why we are making the switch.
Is there a way to instantiate this in the manifest.xml or launchpage.html?
Some companies including mine, use a local file which launches a frameset to our websites. The SCORM runtime communication between the two sites can happen using a HTML5 postmessage. For example, if a learner gets a score on your website, you can send the information to the code that sits in that small local file on the LMS. In turn, you call SCORM runtime from the that file. This can also happen in reverse. Here's an example by Claude Ostyn:
http://www.ostyn.com/standardswork/xdomain/remotecontentdemo.htm
At minimum if you can run the base index.html file and point your CSS and JavaScript to your content server or CDN that would solve the double IFRAME or trying to get around browser security due to X-domain issues with your domain trying to access the LMS's runtim API on their domain.
This does cause a obvious authoring challenge or at minimum a massive search and replace in files on your project.
Only other way still requires the IFRAME workaround to get around it.

What actually is Single Page Application(SPA)?

Here is my understanding about SPA.
Its an application where user gets the feeling that he is on the same page in response to any user triggered event.
Basically whole page won't be submitted , an ajax request will be triggered in backgroung for an event and response will be rendered on same page.
So its fast(as whole page is not submitted) and more responsive(there is no blank screen even for iota of time even when ajax
request is in process, which means there will/can be some screen user can still take action )
So as per my understanding any web application which is completely based on ajax and no where submitting the whole page like
document.form.submit (which is synchronous) is a single page application whether its using controllers, routing etc or not.
Is that correct ?
I have gone thru SPA wiki and got the feeling that application is which is completely based out
of ajax may not be SPA if it is not using controllers, routing etc
#MSach. Whatever you wrote for SPA is quite correct in addition,
First of all, a SPA is a web app which actually fits on a single
webpage providing a great user experience and loading everything's
that is needed on that first page.
A SPA is also ideal for a rich user experience which keeps the user really engaged in the application by keeping the pages moving fluently because of the
client side navigation and just as important as the other two is
reduced round tripping which means they'll make less trips between
the client and server and less post backs of the entire page.
A SPA often will persist important state in the client too whether it's in cache, in memory of the browser, or off to local storage.You can load what you need both data and views on the initial load but just the pieces that the user is absolutely going to use right away and then later you can load the
rest of it on demand asynchronously. And then as the user goes to
other parts of the application, we can progressively download other
features and data as needed.
Apps like Facebook and Gmail both have
SPA characteristics and there are some other apps too that are SPAs.

Offline site/application to propagate a form

We are building an offline version of our online store.
This is for reps to take with them on a tablet when they are out. The reason it needs to be offline is because there will be no connection in a lot of the places and we aren't using tablets with 3/4g connectivity.We use Windows 8.1/RT based tablets.
Since php relies on a server and the tablets cannot be installed with xampp or the like, I have rebuilt the site using html and css.
So far this works and has some flexibility in it. The website is turned into an application using googles create application button in its tools (though technically it's not really an application). It has all the product info, pictures and videos the reps need. Another advantage to this is that the application and files are stored on a one drive cloud account shared to all the tablets. This way, I can update the app/website from my machine and have it up to date on all the reps machines. This current set up works for now but we are looking to add some more functionality.
What we want is a button on each product that will let a rep add an amount of that particular product to a quote form. Because each product sits on a different page, it can't be in the one page form. So as the rep is pressing the buttons on each product, they are getting stored somewhere. Then at the end, the rep can turn all those values into a word doc/pdf/excel by hitting a final submit button.
I have looked at web storage in html 5 but still not quite sure if I can get what I need using it.
Going through the explination here:
http://diveintohtml5.info/storage.html
looks like sites can store info but not sure how to turn this into a form or document at the end. This document is what the reps will email back to the head office.
Has anyone got any pointers on what I could do. Since the site/app has been created in html already, I would like to just build into the existing framework. Are there any other pieces of software that I could use? I do remember using spreadsheet converter to turn an excel file into a web form that exported a pdf but the form needs to be on a single page.
All help appreciated.
Thanks

Options to enable web software to work offline? Or perhaps build desktop software?

I created a scheduling software for beauty salons as a web application. The idea is that the business owner can schedule customer appointments with a hair stylist. I made it web based because eventually these beauty salons need to integrated into a larger cloud service. So far, I've only put in about 40 hours of coding.
One challenge i am encountering is that a lot of beauty salons may have poor internet connectivity. They may experience temporary outage that last several hours to several days. But during this time, they still want access to this web application .. at the very least for read only purposes.
I understand that html 5 in modern browsers support offline capabilities via things like localStorage and cache manifest. It appears to me that at the moment, I need to do a drastic rewrite of my existing application to make use of localStorage and cache manifest to allow the web application to work offline. The reason this is so is because my web application writes/saves a lot of information to urls like http://mywebsite.com/api/somefunction?queryparams=value1 via ajax calls. These ajax calls need to be replaced by function calls that write to localstorage.
So my questions are:
a) To enable my web application to work offline (at the very least, read only of the website should be offline), I should replace my ajax calls with calls to localStorage. Is this the best approach?
b) Would it have been better to create this application as a .NET desktop application? Especially if there are microsoft technologies that help with synchronizing stored client data with an external database at a later time?
My opinion:
a) I wouldn't say you should replace your Ajax calls. Rather, you want your code to notice when it is offline and store stuff in localStorage then. You wouldn't always store in localStorage as your clients are going to be online sometimes.
b) That's kind of a loaded question I think. :) So... my thinking is this: Building a web site makes sense as it would let your clients at the salon access their data both from computers in the store and other devices as well. So for example - if the salon's internet access is down, the employees could perhaps use your website via their mobile phones too. Having the data be web bound gives them more ways to get to it.

Better interface for file downloads and uploads from a web page?

I have what seems like a typical usage scenario for users downloading, editing and uploading a document from a web page.
User clicks a link to download a document
User edits downloaded file
User saves the file
User goes back to the web page and uploads the new file with the changes
The problem is that downloaded files are typically saved in a temporary directory, so it can be difficult to find the file after it is saved. The application is for very non-technical users, and I can already imagine the problems with saved files being lost or the wrong versions being uploaded.
Is there a better way? Things I've thought about:
Using Google Docs or something similar.
Problems: forcing users to use new
application with less features,
importing legacy content, setting up
accounts for everyone to edit a
file.
Using WebDAV to serve the files. Not sure how this would work exactly, but seems like it should be possible
Some kind of Flash or Java app that manages downloads and uploads. Not sure if these even exist.
User education :)
If it matters, the files will be mostly Word and Powerpoint documents.
Actually, despite the fact that you have more flexibility with AJAX in developing application, the problem of uploading multiple files is not solved yet.
To the thoughts you've mentioned in your question:
Google Docs:
Online apps like Google docs are certainly appealing for certain use cases. However, if you'd like to upload Word and Powerpoint slides, you don't want the content to be changed once you've uploaded the document. The problem is that Google Docs uses its own data format and therefore changes some of the formats. If you go for an online app, I'd go for a Document Management Solution. I'm sure there are plenty (even free ones) out there; however, I didn't use any on them yet.
WebDAV It is possible and seems to me like the best solution. You can embed WebDav like any directory. Documents are locked until a user releases the document. Unfortunately, you don't have a web front end to manage the files or administer access restrictions.
It
Flash or Java app They do exist, for sure. I'd prefer Flash over Java since Flash Apps still run smoother within a browser. I would definitely not use a rich application, even if it is a Java Web Start app that can be downloaded and opens in a separate window. More and more, users seem to accept browser based web applications. Which brings me to point 4:
User education You can educate them, sure. But in the end you want them to want to use the system. Most often, users get easily used to a tool. However, if they don't like the tool, they're not going to use it.
Clear instructions to save to their desktop is a start. Then clear instructions to go to the desktop to re-up it. I've not run across an online MSWord viewer/editor or whatever format the file is, but I'm sure they exist, now that Google Docs and a few other online versions of MSOffice exist.
I would make sure that there are easy to follow instructions, plus a tutorial somewhere else (perhaps with a video too) to guide users through the process.