[T-Mobile, Samsung Galaxy SIII] RLD831:
I'm trying to remove the throttling cap from my T-Mobile Galaxy S3. I followed the guide here

http://xdaforums.com/showthread.php?t=2057344

by jovy23. I got stuck in boot loop each time I tried it, and I was wondering if anyone could tell me what I'm doing wrong. I am running CM10 on a T999. I tried to post in that thread, but I don't have enough posts to reply to a developer thread.

I used ES File Explorer to copy services.jar from system/framework to my computer's hard drive.

I downloaded apktool from here

http://mastergenius.net/wordpress/2010/12/20/android-compiledecompile-apk-and-jar-files-for-android-smartphones/

and followed the instructions on the site for decompiling and compiling.

I opened ThrottleService.smali with Notepad++

I didn't have a

.method static synthetic access$1002(Lcom/android/server/ThrottleService;J)J

but I had

.method static synthetic access$1002(Lcom/android/server/ThrottleService;I)I

so I followed the instructions adding the empty space and the const-wide/16 p1, 0x0 to that section.

I also read on page 5, post #49 of the aforementioned XDA thread, jovy23 states

in CM10 you need to instead find the line

.method static synthetic access$1102(Lcom/android/server/ThrottleService;J)J

so I tried the instructions for that instead.

The guide says the original lines should look like this

.method static synthetic access$1002(Lcom/android/server/ThrottleService;J)J
.registers 3
.parameter "x0"
.parameter "x1"

.prologue
.line 71
iput-wide p1, p0, Lcom/android/server/ThrottleService;->mMaxNtpCacheAge:J

return-wide p1
.end method

but mine look like this

.method static synthetic access$1002(Lcom/android/server/ThrottleService;I)I
.locals 0
.parameter "x0"
.parameter "x1"

.prologue
.line 72
iput p1, p0, Lcom/android/server/ThrottleService;-

>mPolicyNotificationsAllowedMask:I

return p1
.end method

and this

.method static synthetic access$1102(Lcom/android/server/ThrottleService;J)J
.locals 0
.parameter "x0"
.parameter "x1"

.prologue
.line 72
iput-wide p1, p0, Lcom/android/server/ThrottleService;->mMaxNtpCacheAge:J

return-wide p1
.end method

I changed it to this

.method static synthetic access$1102(Lcom/android/server/ThrottleService;J)J
.locals 0
.parameter "x0"
.parameter "x1"

.prologue
.line 72

const-wide/16 p1, 0x0
iput-wide p1, p0, Lcom/android/server/ThrottleService;->mMaxNtpCacheAge:J

return-wide p1
.end method

as per the instructions

After that, I recompiled everything with apktools and it spit out a classes.dex, rather than a services.jar

I extracted my original services.jar with WinRAR, replaced the classes.dex inside of that with the one that apktools just spit out, then ran it back through WinRAR and saved it as services.jar

I used ES File Explorer to replace the services.jar in my system/framework folder with the services.jar that I just made and rebooted my phone. Neither method(the 1002 line and the 1102 line) worked, and both caused my system to get stuck at the boot up cyanogenmod logo. I tried each method independently from each other and redecompiled each time so I knew I was working with the originals.

I can upload any of the original or modified files if it will help the diagnosis.

Thanks in advance for any help. Maybe this could be linked or moved to the original development thread to get more exposure and help people who are also trying to get this to work.