Posts in Category "Mobile"

MXNA Flash Services Updated

I blogged this on the MXNA weblog yesterday, but just to make sure the word is out, I’ll make a quick post here, too. Yesterday, I installed a new version of the MXNA Flash Services with a lot of good improvements. The post on the MXNA weblog contains the details.

Anything else you want to see? Has anyone built a Flash Lite app yet? I know there must be some under development because I got a lot of good feedback on the first version of the Flash Servies, so hopefully this version has everything you need.

Cool Tool Friday: Google Launches Mobile Search

Being able to search with Google over your mobile device is nothing new, but being able to search Google for mobile results is. Google’s new mobile search engine allows you to search for results that are specifically designed to work on your mobile device. That makes much more sense than searching a mobile version of Google for sites designed for your PC. Just go to Google.com on your mobile device, and look for the "Mobile Web (Beta)" option in the list below the text box. My Cingular data service is sketchy today, so I can’t give a thorough going over, but I grabbed a friend’s phone long enough to do a couple of searches, and so far, so good.

So how many people out there actually use their phones for browsing? What kinds of data services do you use on your phone, and how often do you use them? Frankly, I seldom do more than IM, SMS, a little email here and there, and check the occasional weather report, but I’m always looking for ways to get more out of my phone.

Introducing MXNA Flash Services

MXNA web services have been around for a long time, but they won’t work everywhere. For instance, Flash Lite applications can’t use web services. And sometimes web services can be overkill for small amounts of information that you want to retrieve, parse, and render very quickly. The answer is the new MXNA Flash Services.

Flash Services are very much in alpha, but they seem mature enough to start playing around with. Rather than using XML, Flash Services return data as query strings, or application/x-www-form-urlencoded which means they work perfectly with the Flash loadVariables function, and with the LoadVars object. Flash Services are primarily intended for Flash Lite applications, but can be used by any client preferring a more streamlined data service.

Check out the Flash Services documentation for more information, and let me know if you have any questions or comments. And keep in mind that I will be making changes to the APIs based on feedback, so anything you build could get temporarily broken.

Switching From the Sidekick II to the Treo 650

After Ben Forta blogged his experiences with his new Treo 650 last week, I thought I’d share my thoughts, as well, and in general, how the Treo 650 measures up to the T-Mobile Sidekick II.

I spent about 4 hours yesterday migrating my data from my Sidekick and configuring my Treo. I have pretty complex PIM requirements, and I’m happy to report that I think I’ve achieved them all:

  1. I’m using GoodLink to sync email, appointments, and tasks with the Macromedia Exchange server.
  2. I’m syncing the Palm calendar, todo list, and address book with iCal and Mac Address Book using iSync.
  3. I’m syncing notes and some other applications with Palm Desktop.
  4. I’m doing it all over bluetooth on a Mac.

Additionally, I’m retrieving email from two POP accounts (in addition to my Macromedia email) using VersaMail, I have AIM, Yahoo!, and ICQ accounts set up with VeriChat, I have a ton of SMS alerts, and I’ve installed various other applications to give me the functionality I’m accostomed to on my Sidekick. And in general, I’m very happy with how the whole process went.

Continue reading…

MXNA Mobile: Read MXNA News Anywhere You Go

A couple months ago, Mike Chambers and I released Take-Away which allows you to read and even listen to MXNA aggregated news on your iPod. Today, we’re introducing MXNA Mobile. This is definitely still beta since there’s no way we could gather enough devices to do a thorough test ourselves, but so far, it seems to work on everything we’ve tried so far. It should work on anything with a connection (GPRS or WiFi) and can run even the most rudimentary of browsers. Give it a try and let us know what you think!

http://www.markme.com/mxna/mobile

Cool Tool Friday: Devices Talking to Each Other. Literally.

Before two devices can “talk” to each other (by “talk”, I mean in some way integrate with each other, or exchange data), they have to have some sort of protocol in common. Some examples include:

  • Networked computers talking over TCP/IP.
  • My phone talking to my PDA via infrared and/or bluetooth.
  • My PDA talking to my PC via WiFi talking to another PC via WiFi sending a signal to my stereo via RCA and playing MP3s through iTunes.
  • Tapping on a button on my PDA which makes an HTTP request through GPRS to a web server which executes an OS level command which relays a message to the device plugged into the serial port which sends a radio signal to an X10 device plugged into an electrical socket which uses the X10 protocol to turn a light on downstairs. (Yes, it really works!)

Anyway, you get the point. As long as two devices have a protocol in common, they can usually “talk” and be integrated in some way, and you can even chain devices together through multiple protocols to achieve something very unusual like a PDA “talking” to a lamp through the Internet.

I bought a digital voice recorder the other day, and I was surprised by how feature rich it was. One of the most interesting features is the ability to set an arbitrary time and date in the future for a recording to be played. Essentially, it’s an alarm clock with a custom alarm. Since my Mac has very impressive voice recognition built-in, I figured it would be kind of interesting to use the voice recorder as a kind of cron or scheduled tasks application. All I have to do is record the commands to make my Mac perform an operation, set a date and time, and leave the recorder near my Mac’s microphone.

I downloaded a bunch of iTunes speakable items scripts to make iTunes “speakable”, and recorded the following:

  1. “Wednesday, switch to iTunes.”
  2. “Wednesday, play random music.”

(“Wednesday” is the name of my computer, which is required before giving it a command.)

I had to make the recordings a couple of different times to get the timing and the clarity right, but now it works perfectly. That night, I configured the recording to play at 7:00 AM the next morning, and I woke up to a random iTunes track playing. The nice thing about the speakable items scripts I downloaded is that there’s one entitled “silence” and “shut up” so I was then able to stop the music by yelling at my computer, and then go back to sleep.

Admittedly, the end result wasn’t earth-shattering. I’m sure there are several other ways I could have woken up to a random iTunes track that would have been faster and easier to set up. But it’s not the end result that interests me. What interests me is that it was the first time I had every integrated two devices using the protocol of human speech, and it worked wonderfully. Using human speech as a protocol between devices allows us to easily eavesdrop, and even participate in the “conversation”, or intervene in ways bluetooth and infrared obviously don’t allow. Rather than dialing my cell phone with my PDA via bluetooth, maybe some day my PDA can speak instructions (my cell phone already allows for voice dialing) which means I can catch any mistakes that were made (maybe I tapped on a home number rather than cell phone number), and I could also use the exact same mechanism to dial my phone automatically myself. Or any other device capable of talking could use the same “protocol” as well. I can imagine in the future robots talking to each other in plain English so that we can be certain they aren’t conspiring behind our backs (just in time for the opening of “I, Robot”!), or at least about to perform some function that we would rather they didn’t.

Ok, well, this conversation is getting pretty off-topic, even for a Cool Tool Friday post, so I’ll end it here, and let you pick it up in the comments section. Can you think of any other cool scenarios for using the human voice as a machine protocol?

The State of Flash on Mobile Devices

Today, Macromedia is announcing the availability of Macromedia Flash lite 1.1 on KDDI handsets in conjunction with KDDI’s “au Service”. Flash Lite will power several applications in KDDI’s “au Service,” including the browser-based EZ Portal, screensavers, and portions of the phone’s user interface. Manufactures including SonyEricsson, Sanyo, and Kyocera will deliver Flash enabled handsets for the au Service in July.

But that’s not all. Macromedia is also announcing the availability of a Flash Lite 1.1 Content Development Kit (CDK) for au Service. Developers can use the kit to start creating and testing content for the upcoming platforms. The CDK also includes examples and tutorials.

But wait, there’s more! Macromedia has also just published several Developer Center articles on Flash Lite development:

So where does this announcement leave Flash on devices? In a pretty good position, I think. Check out the Macromedia Mobile and Device Developer Center for details on supported platforms, and tons of articles, tutorials and developer kits. And personally, I think this is just the beginning.

No More Sony Clies In the US

According to this Reuters article, Sony is done developing and selling handhelds in the US. That’s right — no more Sony Clies. Apparently, the market is declining at such a rate that Sony has decided it isn’t worth competing anymore outside their home market of Japan. I wonder if this will increase or decrease the value of my UX50.

So why is the market declining? Do you think that too many people’s desk drawers are full of dusty, discharged, disused PDAs? Have Americans decided it’s easier and cheaper to write on the palms of their hands? Are Clies too expensive? Do Americans prefer the handhelds designed by PalmOne, or Windows Mobile devices?

As far as I know, PalmOne will be the last significant licensee of the Palm OS in the US now that Handspring and PalmOne have merged and IBM isn’t making the WorkPad anymore. I believe Kyocera and TapWave are still licensing the Palm OS, but it’s unclear where they are headed. If this weren’t enough, Palm recently announced that their new operating system isn’t even going to support OS X at all. The only thing I can figure is that they know that Apple is going to introduce their own PDA based on the iPod platform.

What are your thoughts on the PDA scene right now? It seems a little grim to me.

Palm to End Mac Support

Being both a Mac and PDA fanatic, I found this bit of news very disturbing. Apparently, PalmSource is rewriting the Palm OS from scratch once again, and this time, there will be no support for synching with Macs. The project is codenamed Cobalt, and in order to provide better integration with Outlook, the OS is architected in such a way that it will not be compatible with Macs.

I find this an interesting decision since Palm basically has a monopoly on the Mac platform. The only reason I use Palm is because I use a Mac, and I don’t have any other choice. If I used Windows, I would happily use a Pocket PC device and enjoy such revolutionary concepts as multi-tasking. And, of course, I would have Flash Player 6. I guess the reality is that a monopoly on something as small as the Mac market is not a terribly impressive monopoly, so in the game of numbers, Mac users are about to lose out.

The big problem is not that Mac users are losing Palm support, but that we are left with no alternatives except an iPod and maybe a Bluetooth mobile phone. Although the Palm platform is less sophisticated than Pocket PC, it sure beats trying to take notes on your phone and looking up appointments on your iPod. And Sony Clies are so cool that it’s very easy to forgive and even forget the shortcomings of the Palm OS.

Yes, I know there are third-party solutions for Synching Pocket PC devices with OS X, and that there will be third-party solutions for synching Palm OS 6 with OS X, but considering the fact that Apple’s iSync is still far from usable, I’m not sure I’m willing to gamble on the solutions over at markspace.com (if you have experience with MissingSync, please let me know what you think!), although it’s looking like I may not be left with much of a choice.

Palm’s announcement makes me think that maybe they know something we don’t. Maybe Apple is preparing to launch their own PDA. I’m not one to perpetuate rumors, but let’s look at the facts. The iPod gets more like a PDA with every update. It has fantastic battery life, more capacity than any PDA ever built, now comes with a cradle, and has already established an impressive market. And Apple has been diligently working on iSync, Address Book, iCal and even Stickies. Suppose Palm knows what Apple is up to. Why would they compete? Mac users prefer Apple brands, so if I could buy a good Apple PDA, why even consider a Palm? (If you have Safari, why use IE? If you can get an iSight, why use a Logitec?)

My guess is that within a year, Apple will announce a PDA, which Palm knows, so they have decided to focus on the Pocket PC and Microsoft markets with their new OS. If I’m wrong, I guess I’ll either switch to Windows, take my chances synching a Pocket PC device with OS X, or go back to jotting down notes on the palm of my hand.

Developing Flash Apps for the Sony CLIE (part II)

We’ve been car shopping recently, so I decided to write Loan Star, a loan calculator in Flash 5 for my Sony Clie. I was amazed by how simple and straightforward authoring for the Clie was. By far, the majority of my time was spent getting the amortization and interest formula right as opposed to actually constructing the application. And once it was ready, aside from some minor font issues, I copied the SWF over to my Clie and it looked good and worked perfectly the very first time. As someone who has done mobile development in Java in the past, I found this to be very refreshing.

The biggest hassle (if you can even call it that) was probably transferring the SWF over to the device. SWFs have to be stored on Memory Sticks as opposed to the Clie’s internal media storage, so step one was going out and buying a Memory Stick (I have been contemplating ordering either the 512MB or a 1GB Memory Stick Pro, but since I was in a bit of a rush, I just ran out to Best Buy and bought a 32MB stick). I didn’t buy a Memory Stick reader, however, so I had to transfer the SWF to the stick through my network. Fortunately, the UX50 has built-in WiFi, so I just copied the SWF to a webserver, then downloaded the file and saved it to the Memory Stick. (The UX50 also has built-in Bluetooth which I use extensively, however for some reason, I was not able to transfer the file from my Mac to my Clie via Bluetooth — something I will have to look into further.) The OS knew to put the SWF in the correct directory on the Memory Stick (/PALM/Programs/MMFlash), and the Flash player knew right where to find it. The biggest problem with this particular workflow was that I had to reconnect to the network between each iteration because you automatically get disconnected when switching from the Clie browser to the Flash player. And I had to remember to clear the browser’s cache between iterations, as well, to make sure I wasn’t testing a stale version. Fortunately, thanks to the consistency between the Flash player on the Clie and that on my Mac, there were only a couple of iterations, and all of the issues were purely cosmetic.

Aside from font and processor considerations, and mentally trying to roll back to Flash 5, developing for the Clie was really very simple. It was great to be able to test the calculator right in the Flash IDE without having to use an emulator, or worse, having to constantly copy the bits over to be tested on the actual device. If the application were more extensive, I’m sure I would have run into more issues, or at least architectural considerations, however from what I can tell, developing for the Clie (and devices in general) with platform independent technologies like Java and Flash mostly just requires a little more diligence and attention to resource limitations. And realistic expectations, of course.

I use my Clie on my home wireless network frequently, but yesterday, I got my Clie connecting to the internet through a Bluetooth connection to my phone, which connects via GPRS, so now I am going to look at building a more network-oriented application. If I have time, I might also see how much luck I have getting IBM’s WebSphere Micro Environment JVM running on my Clie, as well. I don’t have high hopes, but being able to write Java applications for my Clie is a very tempting prospect.

If you are considering doing some Flash development for the Clie, step one is to download the the Sony Clie Developer Kit from the Mobile and Devices Developer Center on Macromedia’s site. Feel free to check out the source code for Loan Star, as well, or if you simply want to install it on your Clie, use this URL:

http://www.markme.com/cantrell/flash/loan_star.swf

And just to drive the platform independent point home, here is the finished product: