Making Apps: Redux – part 4 (iPhone Apps)

March 26, 2012

This is part 4 of my three-part series, Making Apps.  Redux, because it sounds good.  Revisit is possibly more accurate and at least I didn’t have to look up what it meant.

In the series, I tried to explain the possibilities in making apps for yourself.  I didn’t go into much technical detail, mainly because that would take about a book’s worth of text.  Funnily enough, quite a few people have done that already.  I mainly talked about Android apps, because that’s what I know.  The massive issue with developing Apple iOS apps is that you need access to a Mac.

Why a Mac?

Apple's logo

The preferred iOS creation software is XCode, which only runs on Mac and the security requirements of creating and saving development and distribution certificates are really only possible on a Mac.  Finally, uploading apps to the App Store for approval can also only be accomplished via Mac.  In short, you need a Mac and the length of time you will spend on one, even if you build apps the way I have done, means you can’t just borrow your friend’s Mac Book for an hour.

Getting started

In my case, having been a PC-user for the longest time, since one disappointing 6-month period back in 1999, I wasn’t about to swap my Windows 7 laptop for a Mac Book.  I also wasn’t about to advise purchasing a new computer just because it would be kinda cool to make iPhone apps.

At the time of writing, I have just submitted my first app to iTunes Connect and it’s sitting there awaiting approval (see: update).  I built this app in  Adobe Flash Professional CS5.  I say built, but really it was a case of copy-and-pasting the frames from the existing Android App.  Flash’s iOS template took care of the rest, although I am getting ahead of myself.

Firstly, I had to apply for an iOS Developer account – $99 per year.

iOS Development Centre

$99 just to be able to log in

Next, we had to wait for Apple to contact the school to verify our existence and the fact we wanted to make apps – 6 weeks.

At this point last summer, we discovered the Mac requirements, so everything went on hold.  Then I wrote the blog entries about making Android apps, which got me thinking:  If Flash CS5 is allowed to publish iOS apps and all I need is the certificate to do so, how hard can this be?  All I really needed is access to a Mac…

The school had dabbled with Macs and we had a room of them not networked (they don’t play well with Windows servers).  I suggested that I take one of the Mac Minis home, allow it to use my Wi-Fi and see how easy it is to create the certificates that way.

Certifiable

There’s easy, straightforward and then there’s bodge upon bodge!  Many, many hours and countless forums later, I managed to create a P12 Development Certificate and Mobileprovision file and was able to publish the app using Flash and install it on my iPod Touch.

In order to create these certificates, you have to fill in a form on the iOS Development website.  Then you download the certificate file.  Then you import this certificate into Keychain Assistant.  Then you request something else from the Certificate Authority.  Then you download the mobile provisioning certificate.   Making sure at each step you enter the correct password, delete all old versions and have all the preferences checked.   I would like to talk you through each stage clearly, but it is so confusing that I can’t remember exactly what I did and no doubt will struggle to repeat the procedure correctly myself.

Once all of that is done, you hit publish and produce a development app for your personal device.  There is something very rewarding about making an app and seeing it on your device.  Something about it being made tangible.

Submitting to the App Store

Once you’ve tested your app – i.e., it doesn’t brick your iPod.  You can think about distributing it.  I’m not 100% sure Apple wants you to distribute apps, as their website which has been quite clear to up this point gets a little hazy.   Basically, look for iTunes Connect.  It’s sort of outside the iOS Development area.

iTunes Connect

Not to be confused with iTunes U, iTunes or Facetime

On this website, you fill out several pages, upload images and descriptions.  You will be asked for an SKU number, which turns out to be your own reference number for your app and you’ll also be asked for a lot of other things to.  Google will become your best friend here.

Once you have completed the forms to the best of your ability, you will need to generate Distribution certificates.  That crying you can hear was my spending another good few hours repeating certificate stuff again!

Once you’ve generated and published your app from Flash (or maybe your were daring and went straight to XCode) you will need to upload your .ipa file using Application Loader.  This handy little program is now bundled with XCode.   In order to install XCode you need to be running Snow Leopard.  In my case, that meant buying the upgrade DVD and waiting two weeks for delivery.

When you have upgraded, downloaded the upgrades to the upgrade, you are finally allowed to download XCode for Snow Leopard.   Once installed, you can close XCode and use Finder to locate the standalone Application Loader.

Application Loader icon

Application Loader aka "I had to download 1.5 Gb of XCode just to get this!"

Do you get the impression I think this entire process has been overly convoluted?

In conclusion

When I tell others of my experiences, I have found that iPhone, iPad and iPod Touch users view these steps with reassurance.  Each one said “It’s good to know they take the security seriously”.

And of course, Android devotees take my story as proof at how limited and controlling Apple is.

I think there’s truth in both views.  The hoop-jumping required to produce a final certificate is crazy.  Surely once you have logged into your Apple account and created a certificate there, what additional stages are needed?   It’s completely opposite to the self-signed certificate you create for Android.  Not to mention creating separate development and distribution certificates.

In terms of actually building and development, I still prefer Adobe AIR for Android.  Little features like being able to connect to your device and overwrite the app inside Flash make it a little easier to work in.   For iOS, you use iTunes to install/replace the app.

Ultimately the iPhone and iPad are massively prevalent and a lot of teachers have one or both.  I’m pleased that I’ve been able to produce an app for Apple devices and particularly pleased that the Adobe AS3 coding was able to be used without alteration for iOS.  I’m assuming that getting development and distribution certificates will become smoother as I do it more often.

Apple vs Android

I wanted an Apple vs Android image, but they are all quite mean really (read: funny) and didn't want to appear one-side.

I still maintain that there are more benefits to Android than Apple for a school:

  • Android Apps can be hosted directly on our VLE.  So apps which use internal school systems do not have to be published to Google Play
  • iOS Apps can be hosted directly, but are limited to 100 devices under Apple’s Ad Hoc distribution system
  • Android Apps appear in Google Play almost instantly as they do not undergo human-based testing before release.  Some would point out that this is actually a good thing that Apple does, but it does delay distribution and their decisions have been shown to be arbitrary.

Finally if you are considering building your own apps, give serious consideration to Adobe Flash.  Building in Adobe Flash produces a SWF file, which can be used directly on our intranet, so we get an “emulator” each time we make an app.

UPDATE:

On 2nd April 2012, Apple approved my first iOS app, Question Dice and made it available on the App Store.  It’s free to use.  You can access it here, Question Dice


Quick Tip: Creating an icon for mobile shortcuts

August 12, 2011

One of the cute things about most mobile sites these days, is that when you make an shortcut and set it to your phone’s desktop* a personalised favicon type image is used, instead of just a boring standard bookmark.

These are cute and very easy to do.  Simply paste the following code into the <head></head> section of your page.  Ideally it should be in the <head> bit, though it doesn’t have to be (if using Frog for example) :

 <link rel=”apple-touch-icon” href=”full path to your image” />

 There’s some debate on the internet as to whether you need the full path or if the local path will do, but I’ve used the full path and been happy with the results.

Your image should be the official 57×57 pixels, but again, there’s plenty of debate on the best size.  It should be  saved as a png.

And don’t worry Android users, the code may say apple-touch-icon, but works just the same. 

*(is that the right term???)


Quick tip: Make your web page mobile

June 19, 2011

Recently, I showed off some of our VLE pimping at Frog’s National Learning Platforms conference in Birmingham, things like our Rewards system and My Classes – a whole section where a teacher can create seating plans, interact with the students via blogs, run a Random Name Selector etc…  

I also showed everyone the mobile version of the VLE, built entirely inside Frog.  Just using an HTML brick with the code below, web pages render at the width of the browser viewing them.   It’s that simple.

<meta name = “viewport” content = “width = device-width, height = device-height” /> 

This code doesn’t detect if you’re using a mobile device.  Personally, while I have implemented them on my own blogging engine, I don’t recommend detection code.  Detection and redirection are simply too irritating for words.  I’ve lost count of the number of times I’ve tried to visit a site after searching from Google, only to be redirected to the site’s mobile front page (Gamespot I’m looking at you). 

We provide a link on the VLE frontpage to a different login screen.   Couple this with use of a tinyurl and a QR code and job done!


Battle of the handhelds – iPod Touch 4 vs Archos 43

April 27, 2011

We’re investigating handheld tablets at the moment.   I know, all tablets are handheld, these are small ones.

The advantages of handhelds are fairly obvious.  They’re cheaper than computers, their batteries last at least all day, they are always on.  And I think most importantly, unlike Netbooks, tablets don’t suffer from “mission creep”.   Netbooks look like laptops and sooner or later you expect them to do the same things as laptops, but they’re underpowered and can’t cope.  With tablets, you don’t expect laptop performance and so, aren’t disappointed.

Archos 43

iPod Touch 4To the battle then.  Which handheld offers the most educational value.  iPod Touch 4 (Apple iOS4) or an Archos 43 (Google Android Froyo).  It took a little bit of research to find an equivalent-sized Android tablet.  HTC, along with all the major players, only produce phones. 

Archos have come from the other way, from the media player direction and have always had devices to compete with Apple.

Cost, specifications and battery life

It’s really awkward to compare specifications for these devices, as they are quite different.  What we’ve done internally for our evaluation is compare the iPod 8 Gb (~£160) to the Archos 16 Gb (~£150).  There is an argument that we should have bought the 32 Gb iPod (~£230) but then the iPod would lose out straight away for its high price tag.

The two tablets together, showing their relative sizes

The Archos is a bit larger than the iPod.  Its screen is noticeably bigger too, though the iPod has a much larger (and sharper) resolution.  Personally, resolution on a 3″ screen isn’t something I’m bothered about.

I’m not going to get into the processor specs as direct comparisons won’t highlight anything relevant given the different operating systems.

I will say both devices impressed me with their actual battery life, given how used I am to charging my HTC phone every other day.  I suppose not having to look for phone networks really saves the battery.

Out of the box

The iPod requires a computer connection straight out of the box.  You have to have iTunes installed and more importantly, I seem to remember I had to set up an iTunes account (yes, I already have one, but I wanted a separate account for this work-purchased pod).  Setting up an iTunes account requires a credit card, whether you ever make a purchase or not.  Big black mark there Apple.  If we want the students to purchase these devices, it means letting them loose with their parents’ credit card.  I’ll touch more on this later, when looking at Apps.

The Archos sucks right of the box.  Despite the specs on the website, ours came preloaded with Android 1.6.  The OS equivalent of a Vuvuzala.  I know, how many operating systems have I written?

The Archos can be “used” immediately, but the controls were unresponsive.  The setup didn’t include accelerometer calibration (that was hidden in the Settings menu).  The device had to be hit on the side to get it to turn the screen round – who knew Al from Quantum Leap was using Android 1.6! 

After about 30 minutes, the Archos detected that a new version of Android was available.  It downloaded 2.2 (Froyo), but truly annoyingly, after downloading it had to be plugged into a PC before installing.  Not being next to my laptop at the time meant cancelling the installation, returning to my desk and starting again.

Once Froyo was installed, the difference was night-and-day.  The responsiveness was vastly improved.

Two things that the Archos had that were better than the iPod.  OS Password boxes carry an option to unhide the result as you type, and the keyboard contains a Caps Lock option.  C’mon Apple, 4 generations in, and you still have to press shift each time you want a capital letter???

Apps

Again, out of the box, the Archos isn’t very impressive when it comes to Apps.  The device comes with a limited AppsLib, instead of the full Android Market.  It’s preloaded with some decent enough stuff, the music and video players are good enough as is the file manager and the dedicated Uninstall App, but Flash isn’t there by default.  That can be downloaded from AppsLib, unlike Adobe Air (the easy way to make Apps).

It is possible to get the full market however.  Which is exactly what we did.  After about 30 minutes research, we found ArcTools, which once installed, installs the Market.  But here’s the thing.  You don’t actually need a Market App for Android devices.  You can download an .apk file from anywhere on the internet, unlike the iPod. 

Once the Market, and Adobe Air was installed, the Archos began to feel a bit more useful.  And I was able to start comparing  the devices properly.

For comparison, I went looking for an education App, specifically a Periodic Table.  From the Android Market, I installed the free Periodic Table, which had quizzes, flash cards and pronunciation audios (very nice touch).   Looking in Apple’s App Store was a huge disappointment.  I only found 1 free App.  If we’re going to want kids to download specific Apps, we can’t expect them to purchase them.  The App, iTeachU Free, was next to useless. 

Android’s Apps seem to be of the free, ad-sponsored variety and Apple’s are of the cheap kind (the pay Apps were generally only 59p). 

The bigger issue with Apple is the credit card.  Even for a free App, you have to enter your iTunes password in order to install it.  This means the students will have access to their parents’ credit cards.  We may have to operate with a delay, wherein we ask the kids to ask their parents to install Apps for them.

Browsing

Here there is a big difference.   The Archos uses screen technology that can only handle 1 finger.  So no pinch-and-zoom.  This is a major problem for the native browser when looking at non-mobile websites.  The view constantly zoomed in and out when I tried scrolling as the browser couldn’t decide which function I was trying to do.   Eventually, I gave up and installed Dolphin HD, which gave me better options, including using the volume buttons to scroll the page.  Browsing still isn’t as slick as on the iPod though.

Complaining that a handheld computer can only handle one touch at a time should be like complaining my car doesn’t have a flying mode.  But the truth is Apple have been showing everyone two fingers for years now.  I own a Gen 1 iPod Touch, that has pinch-and-zoom.  I know Archos were probably able to keep the costs down by not including the same type of touchscreen as Apple, but it really hurts browsing.

Don’t be downhearted Android fans, as Apple sucks in its own way when browsing.  The “walled garden” of iOS prevents uploading images from the iPod to a website.  This is a major flaw (especially as it is designed in).  This is why you need an App to engage with most Web 2.0 sites.  Their own web browser isn’t allowed to interact with their device!?!

Camera

I’m not a photographer.  When I take photos I don’t spend too much time worrying about light conditions or focal length.  I just want to point and shoot.

Below are comparisons trying to replicate the sort of photos the kids might take.  I’ve deliberately avoided optimal conditions.

Archos 43 - Indoors

The Archos 43 comes with a 2 Mb camera.  The image has a little bit of noise to it and is appears a little bit darker than reality. 

iPod Touch 4

The iPod Touch offers a resolution of less than 1 Mb.  Given that the iPhone comes with a reported 5 Mb camera, putting the equivalent of a web cam in this device is pretty inexcusable.  The image is full of noise and really quite small.  It was rumoured that the iPod camera has a fixed focus, but this is untrue.  The iPod comes with a touch screen interface to control focus.  Tapping any part of the screen creates a focus box which the device then uses focus.  There appears to be no focus control with the Archos.

 iPod - Close up

Moving the camera closer to the objects, you can see what the handhelds are like picking up detail. 

The iPod appears to produce a richer colour, though the red felt tip was bright red, which I don’t think the iPod picks up.  The iPod’s image is also pretty noisy, though there is some blurring with the Archos.

 Archos - close up

iPod - outdoors

Moving outdoors and taking a photo of some flowers in the garden (don’t email me to tell me what they are – I don’t care. 🙂 ).  The colours from the iPod are much more vibrant (but if I’m honest, the colours are more accurately reproduced in the Archos).

Archos - outdoors

  The additional light available makes both pictures less noisy.

In conclusion

 I find that the iPod Touch is lacking in the terms of its specifications.  When I imagine guiding students through finding specific Apps and working out how to pay for them and how to build and distribute them, coupled with the woefully poor camera I find I cannot recommend iPods. 

I should point out that there is another method for distributing iPods, which is that we could buy 30 devices and use a syncing device to control them.  This takes the self-financing out of the situation, but adds its own problems of the school having to buy and maintain them.

Distributing Apps to students using the Archos is child’s play.  Once they are set up correctly, we can simply make a page on our VLE with a list of Apps linked in.  Building and distribution is also simple.

So on paper the Archos 43 is a superior device.  But here’s the problem; while watching TV, I’ll often reach for a device to look something up on the internet.  I find myself reaching for the iPod instead of the Archos. 

The Archos just isn’t as responsive.  The auto-correct keyboard on both my HTC Desire and the iPod Touch makes typing on such small screens as not only possible but quick.  I cannot get the auto-correct to kick in on the Archos. 

There are moments on the Archos when you click on an App or link and nothing appears to happen for a moment.  Even taking photos appears to do nothing at first. 

So in conclusion, like I said I cannot recommend the iPod Touch, but I’m not yet sure if I can recommend the Archos.  It’s a good device with plenty of storage space, better camera, easy to use (once set up right) but it’s touch screen just isn’t as good.


Google’s App Inventor

September 8, 2010

About two weeks ago my App Inventor account from Google came through.   I was placed in the tantalising position of being able to quickly and easily develop my own Apps!

Of course, nothing is ever that easy.  Installing all the needed Java things takes time, although it is far, far less confusing that installing everything you need for Android’s proper SDK.

Working through the tutorials is fun too.   You can very quickly press a picture of a cat and get your phone to make a purring noise

In a startling moment of Apple love, the media in general recoiled at the idea of App Inventor, predicting a wave of naff Apps.  Fortunately, when reading a little more on the App Inventor website, you discover that Apps made using it can’t be distributed via the App Market.   Google promise they’re working on it, but I would hope it’s not a priority.

It’s fun and easy to use and anyone out there with an Android phone can sign up.  Like I said above, compared to the official SDK, installing is a LOT easier.  The SDK requires so many different third-party programs. 

Overall I’m glad I have the App Inventor, but mainly because it’s spurred me onto setting up the SDK.   Now, I’m not promising any Apps overnight, but give me a couple of months and I might be able to produce an App that makes your phone bark when you press on a picture of a doggie.


iPad

July 18, 2010

It’s Sunday morning and I’m sitting here with an iPad.  It’s not mine, Cramlington decided we should get one as let’s face it, the buzz surrounding them could mean they become the next big thing in education.Apple's iPadGetting a chance to play with it this weekend has been “interesting”.   I’m not sure where it fits into my ICT use.   If I want to check out my favourite websites, my mobile phone (an HTC Desire – Android smartphone)  can view those sites easily.   The size and weight of the iPad makes it uncomfortable to hold and operate.  And if I want to do more complex tasks, my laptop takes care of those. 

Ultimately for me, the biggest issue with the iPad is the limitations of the browser.   The lack of a Flash player aside, I found plenty of other websites it just didn’t handle particularly well.  I had planned to write this post on the iPad this morning; in much the same way as I used my phone to post on one occasion.  Unfortunately, I wasn’t able to using iPad’s Safari.   The software was so limited it could not interact with the non-standard text box.*

At this point, I suddenly realised what the iPad is.   It’s an App-using tool, not a mini-laptop.  Rather than using the preinstalled programs if I want to accomplish something, “there’s an App for that”.    In fairness, that’s not much different from the PC experience.

Like netbooks before it, it’s very easy to expect a higher capability than the device can deliver.  Is it my fault or Apple’s that I made this assumption?  Given the price tag (£365 + VAT for the cheapest option) I think it’s a little of both.  

My conclusion then?  That will have to wait until I’ve installed some Apps.  Given that other school staff desperate to get their hands on it, my conclusion might be some time.   So for now, I’ll leave you with this thought:   What good is a browser that cannot view Flash?  Especially that 90% of educational resources are made using Flash.


* If I had wanted I could have installed the WordPress App and written the blog that way.  I haven’t, because it’s a shared resource and in order to install Apps, you have to register with Apple.  I’ll do that Monday with the school’s credit card.