Another strategy is to modularise the app: e.g. divide Lumicall into 3 apps, each with less permissions, and they collaborate using inter-process communication (IPC)
Not sure it will help much, from my point of view -- having too many apps to install for getting a proper user experience is not good.
I agree - it is not convenient
On the other hand, it is recommended that developers `modularise', e.g. if someone wants to add SIP support to an app, then instead of making the app bigger with SIP code, they are supposed to just use the Android OS to find existing apps that support `sip:' URIs
This is an approach that makes apps smaller by eliminating duplication - but as there is no automatic download of dependencies, it just makes it inconvenient for the user.
Maybe making configurable options to enable/disable some features is better, explaining what everyone does and accesses.
I agree - but Android doesn't work like that. It is all or nothing. Those are the rules from Google.
I started the app and requires to fill some data and do a missed-call. Can you add an option to skip the step and go to setting up details for using a custom SIP service?
Done - the new version is 1.1.2, it is at http://www.lumicall.org/download or in the market
It also adds - ZRTP and SRTP - a config option to try and not use the IPv6 stack (which is buggy on some phones) - various bug fixes in the dialer, making it slightly more efficient and reliable