You should read OS supplied guidelines before developing. I can't stress that enough. The guidelines will help you understand the reasons mobile app developers do what they do. Apple is very particular when they review appstore submissions.
At the very least, if you don't read the OS guidelines, then utilize a pre-built framework and don't deviate from its design much. Ionic is one example of a mobile UI framework. There are similar guidelines available for smartwatches, TV, VR, AR, voice interaction, etc.
FireOS (Amazon): https://developer.amazon.com/public/solutions/devices/fire-tablets/specifications/03-ux-specifications
Here are some key things to remember:
- Navigation paradigms are different between the different OSs. This includes menus, histories (back button), swipe gestures, protected touch zones, and more.
- Everything on a touchscreen NEEDS to be finger friendly. Generally speaking, this means minimum button dimensions of 44dp with 3 dp of margin on all sides, per Apple's guidelines.
- Always leave room for the on-screen keyboard. You might need to make your views scrollable in order to facilitate that.
- Use native-style controls whenever possible. Apple doesn't like it when you re-invent existing widgets like date pickers.
- Try not to deviate from expected mobile app behavior. If your app behaves differently than 99% of the apps out there, chances are people will find it confusing. This is especially important due to limited visual space in an app.
- Use system iconography whenever possible for the same reasons mentioned above.
- Mobile data connections aren't always reliable or speedy. Use loading animations and have fallback conditions for when the connection drops or isn't available.
Building to devices
This process is very different depending on the OS. In my opinion, Android is the easiest and iOS is the hardest. Generally speaking, in order to develop for a mobile OS you will want to develop from the equivalent desktop OS (iOS = MacOS, Android or FireOS = Linux, Windows = Windows, etc). All mobile devices will need to be put into developer mode before pushing apps top them. Because the iOS process is so complex, I've linked to its documentation below.
Before submitting to an appstore
Every app store is different, but they all have pre-flight checklists. Make sure you are following the rules, have tested your app, and have everything necessary before submitting your app. Up to 2 weeks are required for an app review and your app may not pass on first submission. Plan your release cycles and marketing accordingly.
If you have any relevant info you would like to include for other platforms, please let me know. FirefoxOS, Symbian, WebOS, Windows Mobile < 10, and Ubuntu Phone are considered dead platforms. Blackberry, Sailfish and Tizen lack a large user base in the USA where I am located.