[Q] App development: strange problems on Froyo

Chef_Tony

Retired Forum Moderator
Sep 8, 2008
1,839
506
0
I have recently released my first app (a soundboard) and am now receiving complaints from Froyo users that while the app appears compatible, it does not work properly. The MinSDK version in my manifest is 8, but the build target is 15.

My app starts with a splash screen, then there is a main menu, which then starts the main activity, where there are 7 tabs. Each tab holds about 20 sounds, consisting of a textview and 4 imagebuttons. Together with Ad banners, this comes up to about 500 views in one activity. Eclipse warned me that more than 80 views might be bad for performance, but even low grade phones like the Samsung Galaxy Y are able to run the app effortlessly.

The min SDK I set for my app is level 8, Froyo and now after I got negative feedback and tested it, I found out, on Froyo the activity does not start.

Is there a fixed limit of 80 views per activity for Android 2.2? I could not find information on that anywhere.

This is the error I see in the Developer Console constantly:

Code:
java.lang.VerifyError: com.cheftony.psychsoundfree.Nicknames
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1429)
at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
at android.app.ActivityThread.access$2300(ActivityThread.java:125)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4627)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:902)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:660)
at dalvik.system.NativeStart.main(Native Method)
What should I do? I was thinking about modifying the main menu to start different activities based on the android version of the device, i.e. starting my regular old activity on any phone with Gingerbread or higher and creating a new one, where the interface is split up into several activities so there are not too many views per activity, which is a lot of work and basically would split up the app and double the work that goes into updating it.

Or should I just exclude Froyo devices? How important is it to still support Froyo today?
Are these few people left with old OS versions worth more than 50% of the work I'd have to put into my up for future updates?