[Defy Android Development] adlx.xda:
So you are a rom modder/dev and you want to have real stats about your rom? Not sure?

You probably have those question unanswered right now:

how many users installed and are using your rom?

which versions of your rom are your users running?

people stop using your rom, what rom do they install to replace yours?

what is your share of the market, compared to other devs?

where are your users from?

and so on...

Imagine getting graphs, pie charts,.. with all those data? Would be awesome, right?

To start gathering data that I've prepared a small app, RomStats (see note (1)). It's meant to be installed by modders & rom devs into their roms, any rom!

When installed in a rom, the app will show a notification in the notif bar after the first boot (right after installing the rom) asking the user to participate in stats.

After the user agree, some ANONYMOUS data are send to a database online.

At the moment, the app is done, the database to collect is done. What is still pending is to develop the stats reporting pages (the most interesting part of it).

So, if you are a dev, and are interested in that, show you interest here, and install the app in your roms so data start to be collected.

I hope people see the potential behind this, and start to implement it in their roms. I'll probably need some help from web developers & reporting-skilled guys :-D.

At the moment, as a proof of concept, you can go to this page. there is almost no stats, just a counter how much unique devices (phones), devs, phones model... are registred in the database. I'll continue enhancing the type of information presented to the visitor. We could also imagine creating some private sections for devs :-D!

How to install the app in your roms: (it SHOULD be done by the rom's dev! not by every user):

Download the apk (latest version in now in the Market): com.adlx.stats.apk (direct link)

Place the apk in /system/app (in your update.zip)

Add those 3 lines to /system/build.prop, changing the value to reflect your dev nickname, your rom's name and your rom version:

ro.stats.devname=Adlx

ro.stats.romname=Adlxmod

ro.stats.romversion=3.0.0.2

And that's it!

I would love many devs consider participating, so of course, feel free to re-distribute RomStats with your next rom or next patch :-) (don't forget to configure the 3 lines in build.prop, or it won't gather correctly your info).

I repeat, if I see people interest and I see data actually getting collected everyday from several roms, devices,... then I'll continue the project. Any help is welcome of course!

What data are collected:

* A unique identifier of the device

* Identifier of the device model

* The nickname of the rom's dev

* The name of the rom (without version or model information)

* The rom version number, preferably a.b[.c[.d]]

* Information of the carrier (name, ID)

* From which country is the device (given by the carrier)

The data are ANONYMOUS (regarding the identifier of the device, it's taken from an Android API call, then hash using md5, so it can't be reversed).

Here is an interesting article by Chris Soyars explaining more about how the stats work, and why users should participate: http://www.cyanogenmod.com/blog/cmstats-what-it-is-and-why-you-should-opt-in.

Notes & Credits:

(1) RomStats is based on CMStats from Cyanogenmod, by Chris Soyars (Apache licensed). For the moment I have slighly modified it to be able to work with any rom, and send the data to another site.