October 30, 2008
Update! Many new features and examples available.
These two examples are actually the examples from the book I have in progress. More of the examples from the book will be added to create RC2 as well as any fixes that need to be made. One of the examples included will be how to embed Google maps in your application that looks like the Map iPhone app.
Other examples cover everything from how to consume data feeds to doing enterprise data synchronization between the sqlite database on the device and ANY remote database.
I am currently deciding what the last chapter of my book should be. A rough cut of the first four chapters is available on Amazon.com. The title is:
If you have any ideas for things you would like to see how to do with the iPhone please post them here.
The books current chapters are:
|5. Creating an iPhone User Interface – Apple’s rules and other good ideas
6. Hybrid Applications, GPS, Acceleration and
7. Embedding Usable Google Maps – how to insert Google maps in your application so they look like the Map application that ships on the device.
|A. An introduction to JSON|
|B. Intstalling the QuickConnectiPhone Hybrid Templates|
October 27, 2008
With the release of the G1 phone I decided that I had better take a look at the build process and API for Android applications.
It is interesting but seems to miss the mark.
It is true that it is very easy to create applications for Android. It is true that you can create the interface programatically or use XML to define it. So in this way it is similar to iPhone development and interface builder. There is no tool for graphically creating the XML file that defines the interface.
That being said it is easy for Java programmers to create applications. In fact with little effort I have created most of the Java side of QuickConnectAndroid in 1 day. This may be due to my many years of Java development and a previous implementation, unreleased, of QuickConnect for Java.
The development environment is eclipse with an Android plug-in. It is disappointing that log messages don’t appear to end up in the terminal sub-window in eclipse. In fact I am still working on finding where all of them go. I have used gdb with it’s options to view the log file but not all of my log messages appeared.
The problem, as I see it, is that Android is not as intuitive for users as the iPhone is. There seems to be an over-reliance on the user interacting with the hardware. It is not nearly as solid-state as the iPhone is. For example, if you launch the browser and want to enter a URL, do a search, add a bookmark, refresh the screen, or swap browser ‘tabs’ you must push a hardware button to access the menu. To go back a page another button on the device, not in the user interface, must be used.
Honestly it took me a while to find this. I stumbled on it accidentally. I assumed that the browser would be like a desktop browser or the iPhone browser. That is to say the browser would be self contained not dependent on hardware activity to display accessing these ‘hidden’ items.
My own personal opinion is that the desktop is a waste of time as is the software menu at the bottom of the main screen used to display all applications.
Add on that there doesn’t appear to be any multi-touch capability and I personally can’t see why someone would pay as much or more for one of these phones as the you would for an iPhone.
If Google wanted to one-up the iPhone this doesn’t do it from a usability standpoint. It seems that Android was created by engineers for engineers not for ‘normal’ people.
This being said, a version of QuickConnect for Android is such low hanging fruit that I will create one here soon. I first have to ship QuickConnectiPhone 1.0. I hope to have it and an example of how to interact with the device, called DeviceCatalog, included in the download.
October 10, 2008
Thank you to the hundreds of you that have downloaded QuickConnectiPhone. I have been amazed at the reception that it has received without any advertising but this blog. Hopefully your are finding it useful and helpful. I know of one application on the appStore that uses it but have never asked you for such information. If you would like to post your use of the framework here it would be interesting to me and maybe to others as well.
The QuickConnectiPhone framework is currently licensed under LGPL. I felt that this would allow you to use it both in for and not-for profit applications while still keeping it in the open source community.
I would appreciate your feedback as to which license you would prefer it use and your reasoned suggestions as to why that license would be preferred.
The 1.0 version of QuickConnectiPhone is soon to be released. It will include a set of code that will allow you to log debugging messages, vibrate the phone, play system sounds, retrieve GPS data, and accept acceleration data as well as record and play audio files.
A later version will include AJAX calls from Objective-C as well where the result can be consumed in Objective-C or pushed up into a UIWebView.
Example apps from my upcoming book will also be included.
A version without the map inclusion will be available for download October 18th, 2008 from sourceForge.