I'm a psychologist / UX designer with front-end skills. Me and my friend want to develop an app that uses a heart monitor wearable to collect ECG data and use machine and apply an algorithm to establish some correlations based on his research. My friend knows matlab and python, I know CSS and HTML but we are not that experienced in mobile software engineering.
My question is in regards to architecture. I've heard that it's much easier to develop apps with ionic+angular+phonegap instead of going native on Android and use java for example. However, we just want to create a working prototype so we could test on 5-10 people, and I would like to know if we should just try the javascript or the java route.
What is the fastest way to make this happen? I've heard about appcelerator, but I'm also not sure if that will work for us.
The wearable sends the signal via bluetooth to the phone, and after that it should connect the database which we would use an algorithm to analyze the data, then send it back to the phone.
If your goal is a proof of concept, use what you know and don't stress about performance yet.
Other options for using a web stack to build native apps include Steroids (native transitions with web views) and React Native.
From what you're describing, it doesn't seem like you'll hit any major challenges in the alpha stages. Once the project grows legs, it would probably be worth consulting with an expert to dig deeper into the architecture and requirements to make a more informed judgment.
Good luck!
Hi,
Two part answer:
1. PhoneGap (and similar solution) basically expose a limited set of apis to Javascript (basically translate the original Java / Objective C hook into Javascript and vice versa). I'm not sure PhoneGap will support the API's you need - however Nativescript should (it's a javascript library, happy to connect you to the right people if you want to use it).
2. Performance limitations of PhoneGap etc. is divided between rendering (which shouldn't really be an issue) and the fact that Javascript just runs slower than native code. If you do require heavy computation I'd suggest sending it over to a python server (over internet / wifi) but I suspect Javascript should be able to handle most of the computation.