Update min supported android version?

Monkey Forums/Monkey Programming/Update min supported android version?

marksibly(Posted 2014) [#1]
Hi,

Currently, Monkey can build apps for devices running Android version 1.6 or greater. I would like to change this so it can build apps for Android version 2.3.3 or greater instead.

Doing this will give us access to google play services and opengles 2.0, both of which are kind of useful. This shouldn't affect sales much - if you believe this page:

https://developer.android.com/about/dashboards/index.html?utm_source=ausdroid.net

Any objections?


therevills(Posted 2014) [#2]
No objections here ;) I'm happy with Monkey dropping support for less than 2.3.

Also Google dropped support for Froyo (2.2) last year:
http://googlecommerce.blogspot.com.au/2013/10/with-google-play-services-40-us-android.html#!/2013/10/with-google-play-services-40-us-android.html

With over 97% of devices now running Android 2.3 (Gingerbread) or newer platform versions, we’re dropping support for Froyo from this release of the Google Play services SDK in order to make it possible to offer more powerful APIs in the future.



tiresius(Posted 2014) [#3]
I don't have anything in the market yet but I say go for it. Sounds like two great features to include.


Nobuyuki(Posted 2014) [#4]
yes please. Will this let the games also take advantage of the newer concurrent gc? (Will that lower the amount of hiccups?)


therevills(Posted 2014) [#5]
Will this let the games also take advantage of the newer concurrent gc? (Will that lower the amount of hiccups?)

Yes:
Android 2.3 includes a variety of improvements across the system that make common operations faster and more efficient for all applications. Of particular interest to game developers are:

* Concurrent garbage collector — The Dalivik VM introduces a new, concurrent garbage collector that minimizes application pauses, helping to ensure smoother animation and increased responsiveness in games and similar applications.

* Faster event distribution — The plaform now handles touch and keyboard events faster and more efficiently, minimizing CPU utilization during event distribution. The changes improve responsiveness for all applications, but especially benefit games that use touch events in combination with 3D graphics or other CPU-intensive operations.


* Updated video drivers — The platform uses updated third-party video drivers that improve the efficiency of OpenGL ES operations, for faster overall 3D graphics performance.


http://developer.android.com/about/versions/android-2.3-highlights.html


marksibly(Posted 2014) [#6]
> Will this let the games also take advantage of the newer concurrent gc? (Will that lower the amount of hiccups?)

Don't think it'll make a difference - I would imagine devices just run the one JVM/gc and all apps use it, so games will already be using new gc on devices that implement it. Might be wrong about that though...

Building an app for '1.6' or something really just means there's a bunch of stuff you can't use, because it might not be on the target device. Or, you have to check for such >1.6 features and use reflection to access them conditionally in case they're not present.

So it's theoretically possible to use GLES2.0 in 1.6, just very tedious as the code has to check if it's supported and, if so, call 'invoke' for each function call instead of just using glBlah etc...Also, if you can't depend on it, you have to provide a fallback. By moving to API10, mojo graphics can be rewritten in GLES2.0 etc easily and without having to provide a GLES1.1 fallback.


therevills(Posted 2014) [#7]
By upping the minimum supported Android version to 2.3 or above means that we will be using the "new" concurrent GC by default which isnt available on lower versions of Android. This means you can be "less" careful creating "new" objects at runtime.


ziggy(Posted 2014) [#8]
Sounds like a very sensible move to me. Go for it!


Xaron(Posted 2014) [#9]
I'm in! I build all my apps with minSdk 9 anyway. :)


Supertino(Posted 2014) [#10]
Sounds like a plan, anyone still using 1.6 should be shot.


CopperCircle(Posted 2014) [#11]
Yep, great idea, there is also some depreciated stuff in the iOS target.


Trez(Posted 2014) [#12]
Sounds good to me I only support from Android 2.3.3 (GINGERBREAD_MR1) myself anyway :)


ziggy(Posted 2014) [#13]
That means that we'll have to install another API level as the minimum required API on the Android SDK? I just want to be sure that the jungle ide automates installer is good to go after this is changed offically on Monkey


Goodlookinguy(Posted 2014) [#14]
Sounds like a good change. I don't even own anything with an Android version prior to 2.3.


Gerry Quinn(Posted 2014) [#15]
No problems with that.


dragon(Posted 2014) [#16]
Android Versions:



i think v2.2 is nice to have (~2%)
v2.3.3 should be full supported (~20%)


only thing that i do not understand:
http://en.wikipedia.org/wiki/Android_version_history

are this selled devices or used devices?


dragon(Posted 2014) [#17]
statistics 1 year before:
http://arstechnica.com/gadgets/2013/04/jelly-bean-reaches-1-in-4-android-devices-tablets-lag-at-10-percent/

99.7 version support the latest version of Open GL (2.0).


therevills(Posted 2014) [#18]
@Dragon if Monkey stays with 2.2 is will lose AdMob support. Even Google themselves have dropped support for 2.2.

I would trust Google's stats more than Wiki's ;)
https://developer.android.com/about/dashboards/index.html?utm_source=ausdroid.net
Version | Codename    | API | Distribution
--------+-------------+-----+--------------
2.2     | Froyo       | 8   | 0.8%
--------+-------------+-----+--------------
2.3.3 - |             |     |
2.3.7   | Gingerbread | 10  | 14.9%
--------+-------------+-----+--------------
4.0.3 - | Ice Cream   |     |
4.0.4   | Sandwich    | 15  | 12.3%
--------+-------------+-----+--------------
4.1.x   | Jelly Bean  | 16  | 29.0%
4.2.x   |             | 17  | 19.1%
4.3     |             | 18  | 10.3%
--------+-------------+-----+--------------
4.4     | KitKat      | 19  | 13.6%



ImmutableOctet(SKNG)(Posted 2014) [#19]
I have no problem with this. I don't even own an android device running an earlier version than 2.33.