Friday, May 20, 2011

Banish Sprint Activation Nag Screen On Samsung Galaxy Tab

If you have seen the screen above and are annoyed by it then this blog post needs no further explanation. For the rest of the world here is the story, I have a Sprint Galaxy Tab. Every time I cold boot it, I am presented with the activation screen above. Since the Tab was purchased sans 3G contract, the activation fails. I have found the screen can be disabled by deleting an apk file, SprintAndroidExtension.apk. This post will detail how to remove SprintAndroidExtension.apk and be free of the activation nag screen.


Here is where my standard disclaimer goes. I was able to do this but if you break your device, I am not in any way liable for that. Proceed at your own risk. Blah, blah,blah...


The first thing you need is a rooted Sprint Samsung Galaxy Tab. If you need help with that, my previous blog post will walk you through a method for rooting. I will build on that and use adb.exe from SuperOneClick. If you have another adb.exe installation, that will work also.


On the back of your Galaxy Tab, find the model. Mine is an SPH-P100. To get the drivers, go to http://www.samsung.com/us/support/. Download and install the appropriate driver package on your Windows computer. Before you connect the USB cable, power on your Galaxy Tab. Go to Settings->Applications->Development and enable USB debugging. If you have connected the USB cable you will not be able to enable or disable USB debugging until you unplug the cable. After you have enabled USB debugging, go ahead and plug in the USB cable to the tablet and the computer.


First, open a command prompt and change to your SuperOneClick directory. For me that means, click Start, Run, and type "cmd" followed by enter. Then I enter "cd C:\SuperOneClickv1.7-ShortFuse" and am now sitting in the right directory to proceed.

Now, make sure adb knows about your Tab. Type "adb devices" and you should see your device listed like below. If your device is not listed, make sure USB debugging is enabled and you have installed the Tab drivers.


Make a backup of SprintAndroidExtension.apk in case you decide you need to restore it in the future. From the command prompt, enter "adb pull /system/app/SprintAndroidExtension.apk" without the quotes. This copies SprintAndroidExtension.apk from the Tab to the current directory.




Now, find out what device is mounted on the /system filesystem. Type "adb shell mount" and try not to be overwhelmed. Look for the line that has "/system" similar to the highlighted below. In my case the device is /dev/block/stl9. Your should be the same but double check before you proceed.


Notice the "ro" on that line after /system? That means the filesystem is read-only and we will not be able to remove SprintAndroidExtension.apk until we remount it read-write. From your command prompt enter "adb shell" at the prompt. This will get you to an adb shell prompt.


Make sure you have your Tab unlocked and in front of you. You will need to be able to grant adb root permissions with Superuser. Type "su" at the adb command prompt and then look at your Tab. Superuser should prompt you to grant root priveleges to an unknown application. The end result should be a root prompt (#).



The next command will remount the /system filesystem read-write. Type the following "mount -o rw,remount -t ext2 /dev/block/stl9 /system" and press Enter. If your device is different from /dev/block/stl9, then make the appropriate substitution in the previous command. If you get an error message like Operation not permitted or Permission denied then you most likely are not running as root.


Finally, this command will remove the activation application, "rm /system/app/SprintAndroidExtension.apk" is what you need to type. WARNING!!! rm is the delete command and if you remove the wrong file you could potentially bork your Tab. After this, type exit twice to leave the adb shell.


The last thing to do is reboot and verify the Sprint activation nag is gone. The command "adb reboot" will reboot the Tab and you will be nag screen free!