It would seem that the consensus for maintaining free/paid for app versions is to use a Library, and to set a flag from each activity to get different functionality out of the code base.
How secure is this? It is my understaninding that a person could root their phone, obtain the APK and that this can be decompiled. Even if the code was obfuscated it wouldn't be too difficult to see that the application was a wrapper with a flag, and to fix the flag. Is this acceptable? I realise that there are always going to be ways around things, but this one seems quite easy.
Is there not a way in Eclipse where build flags can be used to compile different versions of code so that the full code isn't being given away in the free version?
In the Android TicTacToe sample code, the Activity launches another Activity. In my application, with separate Light and Pro packages working off the library, if I implement this method a base view is loaded and then the child view, and going back from the child view reveals the blank parent view. Is the way around this to extend the Main Activity in the library and not to setContentView in the base activities?