Successfully Integrating Web Services Into Your Android Apps
Posted on | November 29, 2012 | No Comments
One of the things I’ve noticed budding Android developers struggle most with is how to properly integrate content being pulled form web services into their Android apps. Many of them have been focusing exclusively on figuring out layouts and other user interface related issues and haven’t yet developed an understanding of the underlying threading model in Android, and the fact that you don’t want to do network IO (or anything that takes time for that matter!) on the “main” thread. Some of them have already discovered ASyncTask, but find the documentation a bit difficult to digest or simply lack a nice clean comprehensive working app that demonstrates the concepts. I recently posted a screencast on YouTube (embedded below) that is actually a recording of a portion of a lecture I give in my mobile app develop course here at GVSU. The video seems to be getting a fair amount of views on YouTube for the short time its been available and I’m also getting a number of requests for the source code.
In this video I walk through the implementation of a fictitious app I implemented called TopTracks. The app uses publicly available web services on the Last.FM music social network to display the current most popular music tracks among Last.FM users in various metro areas across the United States. In the course of the code walkthrough we cover how to actually issue the HTTP requests, how to parse the JSON result strings we receive in response, and how to properly code this up in an ASyncTask in a way that moves the time consuming network fetch into a background thread, but still giving us the opportunity to update the view hierarchy with the main thread once the fetch completes. We also take a look at a custom ListView Adapter to demonstrate a typical user interface for displaying an array of data fetched from a network service. The source code covered in the screencast is available here.
If you are in the process of learning to develop for the Android platform, you might be interested in a series of Android screencast tutorials I’ve given in my lectures and made available on YouTube. I’ve embedded the playlist below.
GIMP goes native on OS X!
Posted on | October 6, 2012 | 1 Comment
In case you’ve been living in a cave (as I apparently have been…) GIMP has now gone native on OS X! GIMP is a fully featured image editor that works awesome and is totally free. I used to use Adobe Photoshop, but grew tired of paying big $$ for updates. After I gave GIMP a try, I never looked back.
A minor problem, is that in the past it required XQuartz or Apple’s X11, but not any more! The 2.8.x release now runs native on OS X, so now you simply download the dmg image and drag GIMP over to your Application folder, and bingo, you have one of the slickest image editors on the planet!
I’m sure the serious graphic designer types can justify shelling out lots of $$ for a commercial image editor, but for the legions of us who need to simply get the job done this is a fantastic package.
Kudos to the talented team of developers who dedicate all their energy and love to this magnificent piece of software. If you haven’t tried GIMP yet, go download your copy now!
iOS6 Maps Are Disappointing
Posted on | September 21, 2012 | No Comments
I recently installed the iOS6 refresh on my now ancient iPhone 4. I love the new “It’s your call” features, and the new “Do Not Disturb” feature adds utility to my phone as well. I also upgraded my wife’s slightly less ancient iPhone 4S and tried out the features not available on my older iPhone. The turn-by-turn navigation feature is awesome, but I sure wish that was supported on my iPhone 4. The flyby feature in maps is a cool demo, but offers very little value to me as an end user. (I gave up my hang gliding around the Chicago loop past-time when I moved back to the green pastures of W. Michigan.) The panorama feature was nice, but not nearly as impressive as what you can do with Microsoft’s PhotoSynth app (thank you Juan Mejia for pointing this out to me) that has been available on iOS since last May.

Maps in the Android version of “Art at GVSU” (on the left) compared to maps in the Apple version of the app running on iOS6.
Wearing my developer’s hat, my biggest gripe is the lack of quality in Apple’s (Tom Tom’s?) map content. Here at GVSU we have a number of campus apps that utilize map views. For a long time now, Google Maps showed the outlines and names of all of the buildings on GVSU campuses, which was really helpful. For example, our recently published “Art at GVSU” app features a number of campus art tours that help people navigate various collections of art around campus. The art works are all geotagged and Google’s map content made it really easy to find the approximate location of the artwork. With the new iOS6 update, the maps make it look as though campus is a barren desert! (See figure above.). This of course is just the tip of the iceberg, there are a few other blemishes that need some attention as well.
We’re used of Apple playing games just to extract more $$ from our wallets (e.g. limit certain features to newer models only that could be adequately supported on older phones). Apple’s stock price indicates most of us don’t have a problem with that. What we are not used to getting from Apple is an altogether inferior product! Given all the chatter on this issue out there, hopefully the folks in Cupertino have gotten the message and improvements are on the way. If not, we always have the shiny new Google Maps app for iOS to look forward to.
The “Mobile Moves Michigan” Conference
Posted on | July 18, 2012 | No Comments
Fellow Michiganders, are you interested in broadening your mobile tech horizons this summer? If so, you’ll definitely not want to miss the upcoming Mobile Moves Michigan Conference @ The Motor City Casino in Detroit Michigan on July 30-31, 2012. The event, hosted by the Mobile Technology Association of Michigan, includes the Mobile/Wireless Technology Symposium (7/31), a mobile developer conference and Hack-a-thon (7/30 & 7/31) and mobile technology Exhibition (7/31). Learn about the Mobile Technology industry in Michigan and see how it affects all of us in business, government, education, insurance and literally every business vertical. Michigan is taking a leadership position in this field and our forward-looking strategy will be discussed at the Symposium. Your input is crucial for developing a well-structured plan of action for Michigan to be Engaged, Inspired and Enabled! What’s happening at the event?
July 31: Mobile / Wireless Technology Symposium: Leaders in government business, government, education, manufacturing, healthcare and other critical verticals will be exposed to local, national and international experts in various mobile / wireless sectors. Attendees will participate in a strategic planning session lead by industry leaders. Our objective is to develop a strategy that can be adopted and tailored for different organizations desiring to take advantage of mobile technologies. This collaboration is the first step for “Mobile Moves Michigan” to develop strategies for Michigan to take a national leadership role in the industry.
July 31: Michigan Mobile / Wireless Technology Exhibition: Open to the general public, as well as invite-only symposium attendees, the Michigan Mobile / Wireless Technology Exhibition will enable attendees to view exhibits from Michigan-based firms currently providing and/or utilizing a variety of mobile / wireless technologies.
July 30 and 31: WIPJam + Muther! of all Hack-a-thons: Produced by internationally renowned Wireless Industry Partnership (WIP), the WIPJam + Muther! of all Hack-a-thons is a mobile developer conference and hack-a-thon event which will provide education from, and direct access to, national and international companies in the mobile / wireless industry. Developers will receive training, access to resources, and one-on-one engagement with industry experts. Participants will have the opportunity to win prizes based on apps developed during the hack-a-thon portion of the program.
For more Information: http://www.mobilemovesmichigan.com
Symposium Information: info@GoMobileMichigan.org
Exhibition Information: http://www.gomobilemichigan.org/events/mobile-moves-michigan—request-to-exhibit.html
Hack-a-thon Information: http://wipconnector.com/wipjam/entry/wipjam_muther_michigan
Venue / Hotel Information:
Motor City Casino – Hotel
2901 Grand River Ave
Reservations: 866.782.9622 Request “Mobile Moves Michigan” Rate of $139
US 8,090,732
Posted on | January 7, 2012 | No Comments
As I’ve commented previously, regardless of what we software types think of software patents, we all enjoy getting the type of junk mail depicted on the left in the mail. I received some of this “good” spam in the mail this afternoon. ”How about a framed copy of your fresh patent on parchment paper with a Double Suede Matte background in a Kensington Frame? All yours for only $529, but hurry why the offer lasts”. Motorola used to give us a certificate mounted on cherry wood when we had patents granted (only $88 in the spam I have on my desk!) but now that I work at the University, I’ll have to settle for a title page printout from the PDF tacked up on my office tack board.
In any case, Google should like this addition to the rather interesting patent portfolio they stand to gain if their acquisition of Motorola Mobility goes through. US 8,090,732 is on collaborative searching. If interested, you can read the whole thing here. Since my former Motorola colleagues and I submitted this patent app in 2008, there have been some interesting developments in the area of collaborative social searching. For a good summary take a look at Marti Hearst’s article in the November 2011 issue of the CACM entitled “Natural Search User Interfaces“.
Patents are more fun to get than they are to write. The initial responses you get back from the patent office often leave you scratching your head and wondering if they actually really read your claims. When a patent actually gets granted you feel like somebody in the vast bureaucratic machine known as the USPO finally understood your idea, or at least you like to think they did.





