I’ve just spent a few hours writing my first iPad app, without a Mac, and without Objective-C. The app itself is nothing special, but the process let me play with a couple new toys.
Sencha Touch is an HTML 5 Application Framework just for developing HTML 5 applications that look and feel like native iPhone, iPad, and Android apps. It’s based on ExtJS, a jQuery-like JavaScript library, so if you’re familiar with JavaScript and HTML, you can pick this up fairly easily.
WebMatrix was recently announced, and is a great, lightweight website editor that’s perfect for this sort of thing. I use Visual Studio 2010 for most development I do, but WebMatrix offers a simple, get-out-of-the-way-and-let-me-play UI that’s perfect for hacking away at new code. At some point, I probably will migrate to Visual Studio – WebMatrix offers a handy ‘Visual Studio’ button for just this occasion. It ships with IIS Express, a lightweight version of IIS that allows you to quickly serve up folders with many of the bells and whistles of IIS.
So, with those in hand, I was able to fairly quickly get a proof-of-concept iPad app running. Here’s how to get started yourself:
- Install the new WebMatrix and IIS Express
 - Download Sencha Touch and copied all of the files into a WebMatrix site.
 - Modify IISExpress’s applicationHost.config to enable off-box requests.
 - Open C:\Users\{YOU}\Documents\IISExpress8\config\applicationHost.config
 - Comment out the binding element for your site
 - Add a new binding element using your machine’s name and a port of your choosing.  Here’s what mine looks like:       
<site name="Empty Site" id="386908880">
<application path="/">
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\Empty Site" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:8181:daniellaptop" />
</bindings>
</site> - Modify IISExpress’s applicationHost.config to enable the cache manifest mime type
 - Comment out the .manifest mime type (sorry ClickOnce!)
 - Add the following line: <mimeMap fileExtension=".manifest" mimeType="text/cache-manifest" />
 - Restart WebMatrix, run as admin (This is required if you allow off-box access)
 - Turn off your firewall or open up the port you set above.
 - Add a cache.manifest file to one of the examples
 - Follow the instructions here to build the file
 - Here’s what mine, for the tabs example looks like:       
CACHE MANIFEST
icon.png
index.html
index.js
phone_startup.png
tablet_startup.png
../../resources/css/ext-touch.css
../../ext-touch-debug.js - Run the app to get IIS Express cranked up
 - Browse to the site on your iPad
 - Click the “Plus button” and add to homepage
 - Stop the server or turn off the iPad wifi
 - Run the app from the homepage offline!
 
That’s it! I have a few ideas for how I want to put this to use, so stay tuned for some real-world examples.
No comments:
Post a Comment