How to develop a smartphone app to upload data, photos, GPS location to server?

I need to develop a smartphone based app to gather data (using GUI with pull-downs, checkboxes, free-form entry), photos and GPS location.  (Probably Android but open to iOS.)  The data and photos need to be uploaded over the internet to a database on a server.  The server will then be accessed using a web-browser interface by researchers.  This all needs to be fairly secure with individual login accounts.

My proficiencies lie in data modeling, SQL Server and Microsoft Access database application development using VBA.  I am looking for advise on a good approach for building this system, taking into account that I will need to learn the necessary programming language(s) fairly quickly.  I would consider using a development environment like Iron Speed -- but not sure if a browser-based solution will give me the control I need of the camera.

I would appreciate any thoughts or guidance and would be particularly interested in links to examples or instructions that could move me along.  Thanks!
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Because you already use VBA, your learning curve for a nice Android app will be quite low. That is, if you opt to buy the Basic4Android package:
The pricing is crazy, for just 49 dollars, you can already develop apps you can even sell without limits.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Scott Fell, EE MVEDeveloper & EE ModeratorCommented:
The best thing is of course a true native app using java or objective-c.  This will have a learning curve plus if you are not used to webservices and oAuth, could take some time.

The fastest way to get up and running is using html5 and data calls as you are used to.  Just build your site to be responsive and you will place it in a "web view" which is placing your website in a native app much like an iframe.  

You might want to start with android as it is free and ios is just as easy to make a webview although you will need to to pay $99 for a license.  

You can also use phone gap

For everybody I have talked to that starts in phone gap/html5, they like how easy it is and after the fact say their next will be native as there will be some lag in a web view.

I have only worked in webview myself and found the same.  However, it is very easy compared to a native app.  Some tools to look at....
AutomateMyOfficeAuthor Commented:
Thanks!  I will definitely look into all of these.  The full-sized web page will be my responsibility as well -- not just the phone app -- but I have limited expertise there.  Are you suggesting that HTML5 is the best tool for utilizing a database from a web page?  The website will be used more for looking up data while the phone app will be used for entering new data.
Scott Fell, EE MVEDeveloper & EE ModeratorCommented:
If you make a "web view" app, you are just making an html5 site for a small screen if you want to do it fast.
AutomateMyOfficeAuthor Commented:
I will need to do some prototyping and "Hello world" apps to determine the tools best suited to my needs.  As it stands, all of the suggestions seem promising.  Thanks for your help.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.