Monday, October 24, 2011

Bonjour

Not too many iPhone apps take advantage of Apple's Bonjour local network discovery protocol. VLC streamer does a nice job of showcasing the possibilities with Bonjour. Paired with a streamer helper, it makes the iPhone/iTouch pretty powerful in accessing contents on a PC or laptop. I tried it with an MBP which sets up an ah-hoc wifi a million times easier than any winbox and seeing the mpb contents listed on the iTouch was pretty cool. Doing video streaming is a tall order, so that part of the app is not ready for prime time. But it won't be long.

Wednesday, July 13, 2011

Adobe AIR Layer

Acrobat is essentially a layer for viewing pdf files and the browser is a layer for html content and flash is a layer for animation. Much like the other layers for their respective content type, Adobe AIR makes application content available seamlessly to several platforms (Win/Mac/Linux) after an intial install of the foundation software. AIR applications can also be published to iOS and Android. AIR restricts apps much like how browser restricts web apps, Acrobat restricts pdf apps, and Apple restricts iPhone apps. While web apps can be HTML5-extended (browser layer upgrade) for offline functionality, AIR can do the same plus desktop presense and some native integration. Adobe has a marketplace for AIR apps to expand user base. Some settop and DVR appliances have shown the appeal of previous layers for viewing pdf, flv, and media content. The AIR layer may allow future appliances to easily offer app experience like iPad without reinventing the OS.

Links

Monday, April 4, 2011

Building an iPhone Appcast by email

Here is a short video showing the ENTIRE process of building, downloading, and saving an appcast to your iPhone from your iPhone. The appcast is
- launched from a home screen icon
- can be launched offline
- supports touch gestures


You can then distribute that appcast by sending or posting that url like I'm doing now. http://appcastofl.appspot.com/ac-load?load=Abm-123 You should click on this using an iPhone to get the full effect.

I have other sample appcasts that does more:
- perform predefined calculations and operations
- save results and input to sqlite database
- retrieve results and input from sqlite database
- interactive quizzes
- sync local db with cloud when online
- receive push notification
- interact with calendar and addressbook
- works on android and iPhone with same file

Tuesday, March 22, 2011

Sqlite db max size

In Safari/iPhone, sqlite databases are allocated 5MB by default. When usage goes up, Safari prompts user to confirm reallocating to 10MB. The next level is 25MB. If there is more than one db for a domain, all the max size settings are the same, even after increasing allocation. I have tried about 50 databases in one domain (easy to do with js object instantiation) now increased to 25MB. If each db was allocated 25MB, that would be 1.2GB total. I think the 25MB max is for the whole domain. That's why all databases say 25MB even empty one showing 20KB used.

Monday, March 21, 2011

AJAX Schizophrenia on iPhone

I have encountered a weird ajax javascript behavior on HTML5/iPhone/safari. It succeeds when the code is included inline in the body of the script tag, but fails to retrieve data when the same code is referenced using src. The failure is in returning empty string in the ajax xhr responseText with OK status.

This is apparently a symptom of cache-manifest sync-ing restrictions along with iPhones inaccurate communication indication. The client never communicated with the server even though the network spinner indicated otherwise. The iPhone client was talking to itself like Norman Bates and reporting responses instead of errors. The faulty wiring was caused by cache-manifest behavior that blocked communication with the server.

Wednesday, March 16, 2011

App-by-email and images coming soon

I have completed POC on App-by-email and images features. That means users can create an iPhone Appcast by simply sending the contents in an email. Images can also be incorporated (and cached) in appcast designs.

Tuesday, March 8, 2011

Appcasts including more HTML5 features

I've been doing more development on the appcast engine to include more HTML 5 features. Most recent work include:
- circular gesture for scrolling
- simple sqlite app framework
- backward compatibility with older iOS versions
- offline addition of pages and appcasts

Friday, February 18, 2011

Richer, Faster Appcasts with HTML5

By integrating the current gesture-enabled Appcast code with HTML5 sqlite, offline-cache, and apple hooks, Appcast now offers potential for richer UI and faster load time. The new code is hosted on Google Code Appengine, but it can be easily hosted on very lightweight hosting services like ripplehost. iPhone users click here for Richer, Faster Appcasts

1. Offline cache using cache-manifest allows modern browsers like safari to load the page from the home screen without fetching from the server. The old way was to store everything in the url. With offline cache, styles, code, data, and even images can be stored by the browser and made available offline.

2. Apple hook for icon allows the homescreen icon to be an image file on the server.

3. Sqlite database allows additional custom data to be stored locally on the iPhone. This will allow you to send a URL containing data that will be store in sqlite only by those who receive your email. The data is never stored on any server (other than secure mail servers) or app store and the recipient can have a truly unique custom appcast.

Thursday, February 10, 2011

More new types of apps from recent research

The safari browser on the iPhone/iPod is more advanced than the typical IE/FF browser running on most desktops. I've been following these features and experimenting with the ones that will enable different types of "apps" to run on the iPhone/iPod. The appcast is one type, but it doesn't really use the advanced HTML5 features due to security restrictions. Client side sqlite apps are easy to code but the unnecessarily strict requirements on cache-manifest implementation is hindering progress on quick deployment techniques.

This is not another attempt to circumvent Apple's app store. It is just interpretting the implications of new technology and applying it toward common goals and solutions. Of course, it has the advantage of cross-platform deployment because it is based on WC3 specs instead of proprietary OS specs. But that is still just a possiblity becasue we know the industry's track record on actually implementing WC3 specs.

Thursday, January 6, 2011

Unicode and Animation

The latest version of the Appcast builder supports unicode and adds some simple animation for gesture navigation. Here is a demo appcast [Unicode Demo appcast]