Is anyone building business apps around here?

I am also interested in business apps and would like to join this discussion!  I am very interested in short comings developers are having with Corona (hopefully none) or hurdles to over come.  I would like to be able to access the contacts on the device for ios and concerned about the keyboard issues. 

I’m also doing business apps, and agree that text fields are a pain to use.  I had problems getting consistent behaviour and appearance between iOS and Android, so tried the fake / offscreen text fields where I could control the appearance.  In the end, I abandoned that idea and implemented my own keyboard and text field, which wasn’t too complicated as I only needed a numeric keypad.  For my next app, I will need support for a full keyboard so I’m not sure what I will do.  Maybe Corona will improve their text field soon…

Since all you biz app guys (and gals?) are gathered here in one spot, maybe you can help me…

I have a tableView and the user can tap a row to drill down – I use showOverlay to display the record details. I have a Back button up in the nav bar, but I’ve seen a user tap the down in the tabBar, thinking that should show them the list again (after all, that’s how they saw the list the first time, by tapping that button in the tabBar).

The problem is, since that tab button is already selected, it can’t be tapped. So the user is confused.

I was thinking I could create an invisible button (.alpha = .01) over the top of that tabBar button when the overlay is in place and close the overlay when it’s tapped, but that seems kludgey.

Is there a better way to handle that situation?

 Jay

Hi Jay,

I presume your using Widget 2.0 for your tabBar? For some reason in that version you can’t tap a selected tabBar button again, whereas in Widget 1.0 you can! (at least in the one i’m using you can)

I’m not particularly sure why they would have taken that out, but you could give the older version a try and see if that helps at all.

Jamie, 

AK Leads is also the “demo” for my Biz Apps Course and so I can’t use the old widget library. If not for that reason, I would have stayed with widget 1.0 for the foreseeable future. :frowning:

 Jay

What issues are you referring too exactlly?  :huh: 

Mostly surrounding the current shortcomings of Corona in areas like keyboard handling, effective use of Sqlite that kind of thing…

We ran into an issue with not being able to access the network related data. Right now Corona can only detect a network connection by attempting to connect to a website. In our app the expectation is that the user will not have access to the internet and it would be useful to determine when the network card has no connection. 

It was added to their plans but it has since fallen off and we made that request over a year ago.

For iOS, there is a network detection system.  http://docs.coronalabs.com/api/library/network/setStatusListener.html

I have a ton of questions relating to issues arising from building ‘serious’ apps and I’m guessing others must too, anyone care to chat?

Count me in!!! I am working on my first business app while learning the ropes along the way. Mastering Corona SDK / Business Apps Course by J.A. Whye is helping me a lot but from your post I see you are way past my newbie issues. I look forward to learning from your experiences. 

I’ve been working on some business apps, and would be interested in joining the discussion.

We’ve done a fair few business apps now (most of them aren’t shown on our website) and while Corona does have some short comings in regards to business apps, with some imaginative coding you can still pretty much do anything you want :slight_smile:

I’ve been building a front-end mobile interface for an existing product. Trying to duplicate the features of a website.

@TandG How have you been handling form input? I’ve been concerned about keyboards hiding the input field and potentially scroll bars, so I am using an overlay with a native textbox.

Due to the slightly (thats probably a generous word to use) limited nature of the text boxes, that can sometimes be an issue. But i find the most effective way of dealing with it is to scroll the whole screen up so that whatever text box you clicked on is above the point the keyboard would appear.

That can be problematic at times though so now i tend to “fake” the textboxes. What i mean by that is i have an image that looks like a text box with another text object on top of that, then i register touch events on that box and once its ended i move the scene up so that box is always out of the way of the keyboard.  Only once that transition has completed do i hide the text and replace it with a native text box (with a hidden background) with the same text in. That essentially means i can avoid having any native textboxes on screen at all and only use them once i’m confident everything is in a suitable place.

Does that make any sense at all? I’m not exactly the best at explaining my points :smiley:

Rob Miracle,

Thank you for providing a link to documentation of how Corona detects connectivity.

The network status listener is one of  Corona’s shortcomings. It attempts to reach a website  which is great if you expect your customers to be connected to the internet. Our customers will be connected to a private network with no internet connection, which means trying use the fact that you can’t reach a website is not a valid approach for determining connectivity. 

Our app communicates with our own hardware on a private network. It would be nice to be able to detect if the iPad itself has lost connection to one of the wireless access points.  Actually, access to something like Bonjour would be more appropriate.

That sounds similar to how I do it. I show an overlay with the title bar and a 50% transparent black background, with a native box near the top. Touch listener on the background to detect keyboard focus loss, and a submitted/cancelled listener on the native box.

I did have something where I created off screen native text boxes, and then used a listener on the “fake text boxes” to set focus to the native text, and as the text was being typed, I edited a text field overlaying it with an “edit” listener. But it broke with the latest public release and I was never fully happy with it.

Mostly though, I just have buttons. I was hoping to be able to use a drop down box, but I’m happier using the picker wheel rather instead of a drop down box, since the picker wheel already exists.

Interesting… I’ve seen using the same method (off screen native input with on-screen ‘fake’, it worked beautifully in iOS but Android has been giving me all sorts of aggro and it’s driving me mental.

My only reservation in using a native ‘popover’ is that I have several screens with multiple text field inputs on it and I didn’t want to splinter the user experience with constant shifting back and forth…

Native text fields really are the biggest issue that I’ve seen people trying to write business apps come across so far, or at least by far the most populus. As soon as they find a way for people to be able to access native inputs through an API that plays nice with scrollview and such, the happier we are all going to be. I’ve voted it up on the suggested features forum, hopefully everyone else using corona for business apps out there will as well.

I’m currently investigating Corona for use with several SQLlite database driven applications.  Probably best described as business aps, though it is likely an audience fairly similar to book buyers.

Does anyone know if it is easy to set up a search field (to use to find specific database records)?  I see issues in discussions about text boxes though this seems like a very simple one.

How about practical sizes for SQLlite databases in this context …

These aps would be intended as references for use in field (outdoor, poor/no internet access) settings.

Once I find something, I’d likely want to display several tabs of info (text /pics/ maps) and I see ways to do that.

If I have internet access, and especially if the device knows where it is, I’d like the user to be able to store the location and have it display on his map for the found item.

I have 3 applications intended, all with same general structure, two would be charged for (cover at least the expenses, maybe a bit more) and one would be for an NGO (free).

I’m I barking up a wrong tree here?

I’m an experience php MySQL developer but have never done anything mobile before.

Jay,

We ran into the same issue… Ended up building our own TabBar so we could capture every state. Unfortunately all our widget code is tied up in a start-up, so I don’t have permission to Open Source it, but it wasn’t too hard to make.

It looks pretty much like the Widget 1.0 bar, just with borders…

http://www.playnome.com/

Really, the biggest thing I think Corona is missing from “Business Apps” is the ability for things to Align to screen borders and to each other.

In the app above I have some helper functions that push objects into specific regions. It works something like this…

[lua]

snap:above(customTabBar,snap.screenBottom)

snap:above(twitterIcon,customTabBar)

snap:left(facebookIcon, twitterIcon)

snap:right(appleIcon,twitterIcon)

[/lua] 

This sets customTabBar.y to display.contentHeight - customTabBar.height and makes it take the full display.contentWidth. The the twitterIcon gets placed just above, facebook to the left, etc.

So no matter what device you are on, those bottom buttons stay where they should be.