I am a junior programmer who works as an intern(8 mths into the internship) in a team of 1(myself only) creating mobile phone apps & websites.
I have created an App that works exactly how it should & has some pretty cool features but the App fails to run on Android(the main target platform for us, it works on the desktop emulator but not on Android) due to the memory problems with large apps in the Mosync API(see the links for more info on the memory problem). The most demoralising aspect of the problem is that(as explained in the links below) the app crashes randomly & not consistantly so you make a change run it on the platform a cple of times & where something worked before it will now freeze then cause the app to crash(Android OS kills my app).
http://www.mosync.com/content/android-how-much-memory-too-much-memory http://usingimho.wordpress.com/2011/06/14/why-you-should-stay-away-from-appcelerators-titanium/
I have invested 4 weeks in developing the app(an interactive calendar) & 5 mths in learning the Mosync API for apps that wont work on the platform.
My Problem: I have to decide between dumping the app & starting the app again in Native Android Java(I know Java) or severely reducing the the number of resources(.pngs) & features of the app(polaroid effect it produces) to make it work in the android platform. The end result will be functional but low quality(in terms of graphics) & simple.
What would more experienced developers decide to do & how would you explain this decision/recommendation to your non-technical boss?