I would like to sell my app on google play as two separate products. Code base for both of them should stay the same. Diffrences should be in a way applications are themed, so different colors, some texts, bitmaps but also only some of them, in code I also should be able to read what current brand is.
Do I have to substitute package name in entire applicatiom? My current investigation indicates that I should use themes, is this the way to go?
You will probably want to take a look at Library Projects to keep your codebase clean. A common pattern is to create a Library Project that has 90-100% of your Java code and a set of default resources for your themes and styles. You can then create multiple deployable application projects that utilize the library that simply override the resources (XML files and drawables) that you need to create a new theme or provide a different name, etc. for the application. Each deployable application will have its own package name, so that they can all be uploaded to Google Play, but the projects themselves will contain very little code so you shouldn't have too many issues with duplication.