Copy link to clipboard
Copied
I just finished my first AIR mobile app with Flash Builder Burrito. It took me just over 3 weeks. While I'm an experienced programmer, I had no previous experience with Flash Builder, ActionScript, AIR, etc. If so, I could have knocked this app out in a week! I'm very impressed with the ease of development compared to some other platforms that I've developed on (native Android, webOS, Titanium, and a few others). That said, I did run into a few issues that I believe, if properly addressed, would greatly benefit developers, users, and the platform as a whole (so hopefully Adobe employees visit this post and read on!).
Forms & Fields
Support for forms could be much better. Of all the issues I ran into, ones related to form fields took more time to resolve than any other. Three really stood out however...
User Prompts
I found it strange that there isn't a way to quickly prompt users. I tried the Alert.show() function without success. I wound up rolling my own alert system of sorts. It works great actually, but still...
Running Projects
This is something minor, but annoying. I'm not sure if this is a Flash Builder issue or Eclipse issue, but if you run an app and you already have an instance of it open you receive an error stating such. It would be great if it simply closed the old instance and opened a new one. I know, very minor. I'm just saying...
Native Device Functions
> Notifications
> Access to contacts
Others?
I'm really interested in hearing other issues that you guys have run into (big and small) and what you did to resolve it?!?!?
Thank you both for the input! I'm forwarding this along to the team for others to see.
Chris
Copy link to clipboard
Copied
Thanks Lax. I'm not new to the platform but new to mobile and I will be finishing my first simple mobile app soon. My comments are below and below that I've listed my own issues.
Forms and Fields
1. What you're describing is a Text Input with prompt (goes by various names). It's listed as "coming next" on the Mobile Flex components roadmap. There are some 3rd party components that do this but I have not used them.
2. For validation and formatting you can use Validators and Formatters. These will highlight fields in a red border that do not validate. They're very sophisticated intrinsically but after numerous forms there's a feeling it could be consolidated. I've been working on some form components that I use that I might release if there's interest. In the mean time you have to dispatch a mouse over event on invalidate fields to show the build in error messages. It's sortof clunky but looks nice when it's working.
3. There's a property on Text fields called restrict that only lets you enter the characters you specify. So you could put 0-9 in that and the keyboard would only show those keys. But if you do something like that or only show the numbers in a zip code field there's a chance you might frustrate your users if you miss something. For example, those weirdo canadians have letters in their zip code. If you restrict the input or keypad to only numbers you effectively piss off a huge majority of users... well there's only a few people in canada so those guys.
User Prompts
I ran into this too. Alert.show() only shows text. Everything else was missing. Can you post your alert class???
In a more broad scope I need my app to be able to show Alert messages and Notifications. For example, even if it's not running I need to be able to show a prompt, "You have a meeting in 45 minutes. Take your weekly shower..." and "Your meeting is in 15 minutes, did you brush your teeth?"
Running Projects
+1. Sometimes it does automatically close it down other times it shows that prompt.
Native Device Functions
Yeah. This is a sore spot for me. I'm praying that these features are coming soon.
- Push Notifications - "Ronnie just sent you a ppt and said, 'here's the final draft of the presentation.' Click here to view it. "
- System Alerts - "Your meeting starts in 10 minutes in conference room B"
- Intents - add text and image content to SMS and Email
- Contacts - let app access contacts
- Ad Support* - a way, anyway, to add ad's into my app
*ads allow me to offer free versions of my apps. they also lower the barrier of entry for user installation and thus user feedback and also provide a revenue stream on apps that may not fit in the direct sale model
Spark Components
Not all MX components have been converted to Spark equivalent. In those cases we have to fall back to MX component set and include that additional framework. For example, top MX components I'd like to have in Spark, Tree, Alert, DividerBox, RichTextEditor, TabNavigator, Color Picker, etc
mx.controls.Alert | mx.controls.OLAPDataGrid | mx.containers.Accordion |
mx.controls.AdvancedDataGrid | mx.controls.PopUpButton | mx.containers.DividedBox |
mx.controls.ColorPicker | mx.controls.PopUpMenuButton | mx.containers.Form |
mx.controls.DataGrid | mx.controls.ProgressBar | mx.containers.Grid |
mx.controls.DateChooser | mx.controls.RichTextEditor | mx.containers.TabNavigator |
mx.controls.DateField | mx.controls.Tree | mx.containers.ViewStack |
mx.controls.Menu | All chart classes in the mx.charts.* packages | |
mx.controls.MenuBar | All Flex AIR components in the mx.controls package |
ArrayCollection, XMLListCollection and UIComponent are still in the mx package. If they haven't changed just copying them into the spark package would help identify remaining mx dependancies.
Copy link to clipboard
Copied
Thank you both for the input! I'm forwarding this along to the team for others to see.
Chris
Copy link to clipboard
Copied
Thanks Chris! thx1138 brought up some very valid points that I initially missed. I hope you guys can work all of this in soon!