So this is being discussed in our MikFroyo thread over at XDA issues involving CarrierIQ:
[offtopic:2kltcmo7]What Is Carrier IQ? Why Should We Care?
3/31/2011: Hello, Slashdotters!
Put simply - and bluntly - Carrier IQ is a software package buried deep within Android by Samsung at the behest of Sprint. It has been in active use since the time of the Moment, if not before. The company that develops it, also known as Carrier IQ, bills it as "Mobile Service Intelligence". In their own words,
[T]he combination of the MSIP and IQ Insight lets you move seamlessly from broad trend data across many users, through comparative groups down to diagnostic data from individual devices. Now, not only can you identify trends, you have the power to drill down to specific instances, giving you the insight your specialists need to make a difference.
On its own, that description can vary from harmless, to worrying, depending on how you look at it. It's not until one drills deep down into the system and ferrets out every piece of the software that one truly knows what it contains. As some of you might remember, ACS took the first steps toward disabling the Carrier IQ software with the release of SyndicateROM and Xtreme Kernel 1.0. That, however, didn't even scratch the surface.
Carrier IQ's native libraries are plainly visible - libiq_client.so and libiq_service.so in /system/lib. During every boot, this service is launched - you can see it in Settings > Applications > Running Services as "IQAgent Service". These native libraries are called by non-native (Android application) libraries located in ext.jar (the client) and framework.jar (the service). Removal of these (rather obviously-named) libraries alone, be it the .so files or the libraries in framework or ext, will, obviously, break boot. So I - k0nane - had to dig deeper. To make a long story short, reference to the IQ Service and IQ Client were littered across the deepest portions of the framework, and some of the most basic functions of the Android system as we know it.
Carrier IQ as a platform is designed to collect "metrics" at any scale. What I found it to hook into is far beyond the scope of anything a carrier needs - or should want - to be collecting. Carrier IQ sits in the middle of, and "checks" the data of, SMS and MMS messages. It listens for and receives every battery change notifications. It hooks into every web page you view, and every XML file your device reads. It receives every press of the touch screen. It 'sees' what you type on the physical keyboard. It reads every number you press in the dialer. It can track which applications you use, what 'type' they are, how often, and for how long. It hooks into data sent and received.[/offtopic:2kltcmo7]
Link to the original thread Epic 4G
I'm assuming that in both 4.5 & 4.6, these files are still there in the ROM, correct?
UPDATE: there are two files you need to freeze .comHTCIQagent 2.2 and IQRD 2.2
Update 2 Thanks to Graphics Anomaly!
UPDATE 3 Thanks to Bacidath for the original tip and Graphics Anomaly for confirming!In case anyone is going to try this, here are the steps again:
1 - Use Root Explorer
2 - Go to "/system/app" and delete (or rename) "IQAgent.apk" & "IQRD.apk"
3 - Go to "/system/bin" and delete (or rename) "iqd" & "iqfd"
4 - Boot into recovery, clear cache and dalvik, and reboot.
5 - Done...no Sprint/HTC tracking crap. (:
UPDATE 4 run this script in terminal
rm -r /data/data/com.htc.android.iqrd
rm -r /data/data/com.htc.android.iqagent
Remove those files to get rid of all IQAgent in the ROM. Graphics has confirmed that there are no issues with removing those files & his Evo is working fine.
This should bring your sleep/wake times back to normal. But the BWC will start reporting higher -ma while phone is sleeping.