[MOD/HOW-TO] Remove hard key vibes via android.policy.jar - Atrix 4G Android Development

I thought I'd offer my solution to disabling the hard key vibrations on the Atrix since other people might find this useful. This method differs from the other solutions in that it doesn't tamper with your Silent Mode vibrations (like StreakVibrations does) and it's code based, so it shouldn't tamper with any themes you have installed (like the framework-res.apk method). It is firmware dependent though since it's a code modification.
You'll need an android.policy.jar modified for your firmware.
What I'm doing is I'm modifying the method called performHapticFeedbackLw, and telling it to skip triggering the vibrate pattern for all effects (there are 5) except for keyboard taps. Long press vibe, virtual key vibe, safe mode disabled vibe, and safe mode enabled vibe will no longer trigger... Incidentally, does anyone know what safe mode on this phone refers to?
To use the file, you need to be on Bell, Telstra, GingerBlur, Gladiatrix or stock ATT 1.8.3 firmware, and be deodexed. Can you copy the file to your phone without being deodexed? I don't know. I'm a programmer, but an Android newbie so just to be safe it's best if you're deodexed.
Before you try anything, obviously make sure you are backed up. At least copy your existing android.policy.jar so that you can restore it if necessary.
All you need to do is either:
a) Run the novibes.bat script packaged in the zip. There are a couple prerequisites:
1. Make sure to set your USB connection to "None" on your phone.
2. On your phone, go to Settings > Applications > Development and make sure USB debugging is turned on.
3. Plug your phone into your PC and let it install any necessary drivers.
4. Then you can run novibes.bat.
or
b) Follow the steps outlined below to do it manually:
1. Replace /system/framework/android.policy.jar with the one that I've attached.
2. Make sure the permissions of the file are set to rw-r--r-- (thanks for reminding me, Meloy and for correcting, natboy!). The easiest way is to use Root Explorer, long press the file, choose permissions, and set owner: read/write, group:read, others:read. Otherwise, use Terminal and type "chmod 644 /system/framework/android.policy.jar" without the quotations.
3. Reboot.
For those not on stock Bell, I'd be willing to modify your android.policy.jar and post it here if you provide somewhere for me to download it, and specify what firmware it comes from. It's quite quick to do once you're set up so I don't mind. Alternatively, make the change yourself:
1. Download baksmali and smali (both .jars and scripts, total 4 files).
2. Copy /system/framework/ from your phone to your computer.
3. Copy all the files from step 1 to the framework directory from step 2 on your computer.
4. Unzip android.policy.jar and copy its classes.dex file to the framework directory on your computer.
5. From the command line, navigate to the framework directory and run "./baksmali classes.dex". It will create a directory named "out".
6. Open "out/com/android/internal/policy/impl/PhoneWindowManager.smali" in a text editor.
7. Search for a method called "performHapticFeedbackLw". Go to near the bottom of that method, and you will see the Dalvik bytecode representation of a switch statement:
Code:
.sparse-switch
0x0 -> :sswitch_27 #This is for long press vibe
0x1 -> :sswitch_35 #This is for virtual key vibe
0x3 -> :sswitch_38 #This is for keyboard tap vibe
0x2710 -> :sswitch_3b #This is for safemode disabled vibe
0x2711 -> :sswitch_3e #This is for safemode enabled vibe
.end sparse-switch
8. Here's an example of how you might want it to change. Basically you want to replace the original goto labels with one that causes the method to step out without triggering a vibe, and that notifies the calling method there was no vibe by returning false. The label to use is called ":cond_1d":
Code:
.sparse-switch
0x0 -> :cond_1d #This is for long press vibe
0x1 -> :cond_1d #This is for virtual key vibe
0x3 -> :sswitch_38 #This is for keyboard tap vibe
0x2710 -> :cond_1d #This is for safemode disabled vibe
0x2711 -> :cond_1d #This is for safemode enabled vibe
.end sparse-switch
9. From the command line in the framework directory, run "./smali -o classes.dex out". You now have a new classes.dex that has your modification.
10. Zip up the classes.dex with the META-INF directory from your original android.policy.jar. Rename the zip to android.policy.jar.
11. Copy the new file to your phone and reboot.
12. At this point you should be done.

Will this be possible on the AT&T atrix? I currently use the streak vibe method but I'd like this much better.
Sent from my MB860 using XDA App

n1ckr0th said:
Will this be possible on the AT&T atrix? I currently use the streak vibe method but I'd like this much better.
Sent from my MB860 using XDA App
Click to expand...
Click to collapse
http://forum.xda-developers.com/showthread.php?t=1079873&page=3
Check out that thread over in general. The info for how to edit framework.res is there, but there is a flashable .zip that will disable the vibrations in either stock/rooted 1.83 or Gingerblur 3.5 for you.

bearsfan172 said:
http://forum.xda-developers.com/showthread.php?t=1079873&page=3
Check out that thread over in general. The info for how to edit framework.res is there, but there is a flashable .zip that will disable the vibrations in either stock/rooted 1.83 or Gingerblur 3.5 for you.
Click to expand...
Click to collapse
thank you, but i wonder if this specific method is possible on the atrix as to retain themes and such.
interesting that its in general, development may be a better home for it.

n1ckr0th said:
thank you, but i wonder if this specific method is possible on the atrix as to retain themes and such.
interesting that its in general, development may be a better home for it.
Click to expand...
Click to collapse
Yes, this would work perfectly fine on ATT. You can either follow the instructions I provided, or if you like you can post /system/framework/android.policy.jar from your phone somewhere and pm me the link so I can download it and I'll do it for you. Also mention what firmware you're on. I just don't want to download hundreds of MB of firmwares which is why I didn't set one up for all the ATT firmwares.
That other method requires editing a file that is guaranteed to change with any theme you install. That means anytime you change themes you'll need to edit that .apk yourself, or wait for someone to bring the change over. android.policy.jar is unlikely to change for themes.

Ok, I've posted a version for ATT 1.8.3 that was given to me by n1ckr0th.
n1ckr0th, let me know whether it works fine or not. There should be no problem, it looked just like the other 2 versions I modified.
Incidentally, he's using GingerBlur 3.5 so anyone on stock be careful (ie. copy your original file to somewhere else on your phone). It shouldn't matter at all because from what I see, there aren't any resources to modify in android.policy.jar so GingerBlur's should be the same as stock. At any rate, it won't brick your phone if you put the wrong one on. I put Telstra's on my phone by accident and it just messed up the the graphics on screen (maybe because the addresses were all wrong for my phone). You can still use adb, or sshdroid to copy and replace with your original android.policy.jar.

please delete

meloy said:
Don't use this on AT&T 1.83!
After the replace and reboot my phone was really laggy and some applications doesn't start anymore (camera, contacs for example). After i have replaced it with the original file i have still the same problem.
My phone config:
- SBF 1.83
- rooted (GingerBreak 1.20)
- sideloading enabled (GladEnabler)
- GladiAtrix 3 b0.2 ROM
- LauncherPRO
- GingerBread Theme only
Click to expand...
Click to collapse
What? That can't be right, if you still have the same problem after copying the original file, that means that you must have done something wrong. It's a single file change, provided you returned the file to the original, it will be back to the way it was. How did you copy the file? And also, are you deodexed? As mentioned in the original post, you have to be deodexed, because I don't know the results of using it on a non-deodexed system. Your posted config makes it sound like you might not be.

Sorry, my mistake. It is deodexed, I have just forgot to set the permissions to rw-r-r, you should maybe mention this in your start post. It's all working fine now. Thanks for the good work.
By the way, your mod (android.policy.att_1.8.3.zip) has added an "reboot" function to my phone, it is working well too.

meloy said:
Sorry, my mistake. It is deodexed, I have just forgot to set the permissions to rw-r-r, you should maybe mention this in your start post. It's all working fine now. Thanks for the good work.
By the way, your mod (android.policy.att_1.8.3.zip) has added an "reboot" function to my phone, it is working well too.
Click to expand...
Click to collapse
Haha, that's good. Had me scared for a moment, I didn't want to break anyone's phone!
Thanks for the tip, I'll mention that in the original post. Oh, and what do you mean by the reboot function...? Where did you access that? I certainly didn't add it, so it might be a mod added to GingerBlur?

maledyris said:
Oh, and what do you mean by the reboot function...? Where did you access that? I certainly didn't add it, so it might be a mod added to GingerBlur?
Click to expand...
Click to collapse
When i go to the phone options i have now these selection:
- Silent Mode
- Airplane Mode
- Power off
- Reboot
Yes, i think it is a GingerBlur mod. But it doesn't bother me, it is a good feature.

meloy said:
When i go to the phone options i have now these selection:
- Silent Mode
- Airplane Mode
- Power off
- Reboot
Yes, i think it is a GingerBlur mod. But it doesn't bother me, it is a good feature.
Click to expand...
Click to collapse
Interesting, that never occurred to me. I usually go into terminal and type in reboot to reboot my phone. I think I'll add that to my phone too...

maledyris said:
Haha, that's good. Had me scared for a moment, I didn't want to break anyone's phone!
Thanks for the tip, I'll mention that in the original post. Oh, and what do you mean by the reboot function...? Where did you access that? I certainly didn't add it, so it might be a mod added to GingerBlur?
Click to expand...
Click to collapse
the reboot function is cooked into GingerBlur. for some reason my phone wouldnt boot after i replaced the file? i used root explorer and set the permissions to whats specified.

n1ckr0th said:
the reboot function is cooked into GingerBlur. for some reason my phone wouldnt boot after i replaced the file? i used root explorer and set the permissions to whats specified.
Click to expand...
Click to collapse
Hmm, how far does it get? Do you at least get to the boot animation? I notice that it may sit at the boot animation for a really long time after changing a file sometimes. Probably updating the cache or something. It's odd that it wouldn't work for you considering it's your file and it worked for meloy. How did you copy the file over?
If you try again, delete the original file, so you can be sure it's no longer there, then try the copy again.

I'm on AT&T 1.8.3. I followed instructions just as in OP (yes, including the proper setting of permissions), but I soon found a significant problem. Everytime I held down my power button in order to invoke the power options menu, instead of the menu popping up, my phone just freaked out (the screen quickly FADED to black and the phone rebooted). I did this about four times, and each time it happened exactly the same. So I brought back the original framework file, and now everything works fine.
Any ideas?

I have no problems with this mod. It works all fine.

Been waiting on this mod. Streakvibrations has me missing my notification vibes. Thank you

It gave me a red light on boot, stuck at Motorola logo for infinity. I booted into recovery and reflashed gb 3.5 to fix it. Ill try your idea of deleting it then moving the new one.
Sent from my MB860 using XDA App
EDIT: still didnt boot, had to flash again..

I'm getting the flashing red light and rebooting as well. I can't get into CWM though, going to have to flash a SBF. Only think I can think of is maybe the Dalvik cache needs to be wiped before rebooting?
Edit: I'm on an AT&T phone and used GB to deodex as well.. maybe it's not catching all the files..

lurchbyrep said:
I'm on AT&T 1.8.3. I followed instructions just as in OP (yes, including the proper setting of permissions), but I soon found a significant problem. Everytime I held down my power button in order to invoke the power options menu, instead of the menu popping up, my phone just freaked out (the screen quickly FADED to black and the phone rebooted). I did this about four times, and each time it happened exactly the same. So I brought back the original framework file, and now everything works fine.
Any ideas?
Click to expand...
Click to collapse
Are you on stock 1.83? Now that we know that android.policy.jar has some mods built into it for Gingerblur pseudo rom, the att 1.83 file I posted probably isn't ideal for stock users.
If you're on stock, maybe you could post your android.policy.jar somewhere and pm me the link to download. Then I could put together a pure stock att one when I get home.
Sent from my MB860 using XDA App

Related

[MOD] Resolution (dpi) changer *now with zips for all (hopefully) legend ROMs*

I shall take no credit for any of this. Smartsreenath first put me onto the idea, and pretty much anyone if this forum could've managed it. I just had the time to do it all.
Woo! Snakehult, being a genius, has made a clever little zip that uses proper scripts to just change the required value, instead of the whole file. So! Instead of me making an insane number of zips every time ROMs are updated use these instead. Cheers Snakehult!
Attached is a zip file with a whole lot of flashable zips in it. Don't flash the zip you download, extract that one somewhere and look inside
How to use:
Download the attached zip file, and extract it to somewhere on your computer. Inside the zip are a bunch of folders, each folder named after a ROM for the HTC Legend. Navigate into the folder that shares the name of whatever ROM you are using and inside you will find 6 zip files. These zips are flashable. The the zips are names thus: xxx.zip, where xxx is a number. The lower the number, the higher the apparent resolution. Choose a zip, copy it to your SD card and flash it like any other zip. To revert back to how it was simply flash the "160.zip". This just flashes a completely un-modified version of build.prop for your ROM. Make sure you only use the zips form the correct folder for your ROM, or funny things *might* happen.
More info:
By editing the build.prop file it is possible to increase the dpi of an Android device. This essentially scales everything down, so you can fit more on the screen. This is especially nice for browsing the market and the internet; as well as improving, in my opinion, the overall Android experience. The lower the number in the name of the zip, the higher the apparent resolution. It's worth noting that this does *not* change the actual resolution of the Legend; it's still a HVGA device. So you still can't install apps designed for bigger, more powerful phones, like the HTC Desire or Nexus One. This is a somewhat flawed way of achieving this effect, and can have some ugly side effects:
Some apps simply don't scale
HTC-IME mod ends up screwed
Games *can* be rendered unplayable, but not always. Often the menu is the worst affected part.
A work around to fix a number of issues is to disable the built in compatibility mode of Android, and if I knew a way to do this through a zip, rest assured that I would. It'd save me having to explain how to do it. Alas, I don't know how, so here's how:
In your ROM look for an app called "Spare parts". If it's not there look for it in the market. If you open that app and scroll down to the bottom you will find a checkbox option for "Compatibility mode". Ensure that this is *un-checked*, then reboot. Most issues will be resolved. As I learn more about Android I shall keep an eye out for a way to force apps to scale correctly, and if I ever find one I'll update these.
I have also tried values higher than usual, just for kicks. I don't expect them to be useful, nor will I make actual zip files for them, but I went all the way up to 200; and it felt like I was using an HTC wildfire: everything was really quite cramped.
My personal favourite setup is as follows:
CM 6.1, with a 768MHz overclock
My "lcd-density" (this MOD) set to 130
Launcher Pro Plus with 5 icon rows
Below is a paste of what was the first post (when I was just trying to fix a ****-up on my part), and is now here for reference. It has all of the original build.prop files attached.
Attached is a .zip file, which you will need to extract somewhere. It's not for flashing. Within this zip are several folders, each containing a "build.prop". You'll notice that each folder is named after a ROM: Azure, NeonMOD etc. The "Based-on-stock" folder should cover these ROMs:
[ROM] Based on Official WWE_2.03.405.3 ROM + A2SD [Rev 03 - released]
[ROM] UPDATED Almost Stock Legend HTC WWE 2.03.405.3 Radio 7. 08.35.21
You'll need to use ADB to push these files, as I haven't had time to make flash-able zip's for them yet
Instructions:
1. Extract the zip to a suitable directory, and locate the appropriate build.prop
2. Copy the build.prop to your AndroroidSDK/tools folder
3. Reboot your phone into ClockworkMOD recovery and navigate the the "Partitions menu", then click "mount /system"
4. Connect your phone to the PC and start CMD/a terminal window in your AndroidSDK/tools folder
5. Run the command "adb devices" to ensure that the ADB server is running, and that the PC has detected your device correctly
6. Run these commands in this order:
adb push build.prop /sdcard/build.prop
adb shell
mount -o remount,rw /dev/block/system /system
cp /sdcard/build.prop /system/build.prop
This will put your resolution back to default, but should fix everything else too. If you still want a higher resolution then follow the guides in posts 1 and 2 of the other thread. This one.
If you can't use ADB for whatever reason you'll just have to wait it out until myself or someone else create proper, flash-able, fixes. I have done this to try and quickly rectify the issue; assuming, of course, that most people in this forum can use ADB
I will make proper zips, but it's getting late for me...
Click to expand...
Click to collapse
hi
here is a zip for neonmod 0.21 with 135lcd, flashed it on my legend today with rom manager
Wow do we have a lot of ROMs...
Anyhoo, I am currently working on appropriate flashable zips for each ROM, and each ROM will have the following versions:
110
120
130
140
150
160 (original)
I'm doin' 'em as fast as I can..
EDIT:
Current thoughts:
All build by Ali Ba have nice, short build.prop files. The current record for the longest one it held by MyTouch Legend...
TheGrammarFreak said:
Wow do we have a lot of ROMs...
Anyhoo, I am currently working an appropriate flashable zips for each ROM
Click to expand...
Click to collapse
Awesome!
All our lovely ROMs are actively being used, and its great.
Thx for all hard work!
No worries, I hope I haven't missed one
Now to sign 50 60 zip files...
EDIT:
DONE! All finished. I really hope they work. I can't test them all, but there is no reason why they won't work. Lemme know either way.
nice job
thanks bro
nice
spare parts is also in neonmod
xennr3 said:
nice
spare parts is also in neonmod
Click to expand...
Click to collapse
Cool, and you can turn compatibility mode off?
TheGrammarFreak said:
Cool, and you can turn compatibility mode off?
Click to expand...
Click to collapse
sure
1234
TheGrammarFreak said:
Cool, and you can turn compatibility mode off?
Click to expand...
Click to collapse
thanks for your work! i just tried 130 dpi and it seems really good.. i'll try also others zip asap!
yes with compatibility mode off all softwares i tried work really well!
xennr3 said:
sure
1234
Click to expand...
Click to collapse
Cool, thanks for the info. I'll update the OP when I'm home
Sent from my Legend using XDA App
Wow, really cool mod Love it!
Good job!
Cool, glad you like it
Just flashed 130 for SpeedLegend and it worked like a charm
HTC_IME works here (this isnt the mod)
images dont look so good anymore and stuff, but alright
works fine
edit; TBH I find the 140 to be 'more' compatible overall, and show a better picture (ive tried all the flashables)
thats besides the orgnal setting btw, it gives the best picture by far.
Im on the same DPI and rom as you TheGrammarFreak. works great. Too bad there is no function for more icons on the homescreens with LauncherPro...
SimDroid said:
Im on the same DPI and rom as you TheGrammarFreak. works great. Too bad there is no function for more icons on the homescreens with LauncherPro...
Click to expand...
Click to collapse
Yeah it does. On your homescreen press menu, then preferences. In advanced options there is something for it.
Sent from my Legend using XDA App
i glad to hear that someone like you got the idea from my thread........good work ...........and nice job.....you will get all help from me and from my friends
FOLLOW ME http://smartsreenath.blogspot.com/
TheGrammarFreak said:
Yeah it does. On your homescreen press menu, then preferences. In advanced options there is something for it.
Sent from my Legend using XDA App
Click to expand...
Click to collapse
yeah, that is for 5 rows on a screen, but you still can't have 5 icons on a row... That's what I want. I tried ADWLauncher again, but it feels so god damn slow.
Ummm, I have 5x5 icons on my desktop with the stock ADW launcher. Just check out "Settings > ADW > Screen prefs > Desktop cols/Desktop rows"

[MOD] Phone APP Const. Ringtone Vol. with Inst.[CWM Flashable](updated 1/24/2011)

Hi guys this is a MOD for Vibrant ported from i9000 forum (http://forum.xda-developers.com/showthread.php?t=759537) to remove annoying Samsung incremental ringtone "feature"
Update:
Attached file is a Tested Bionix-V CWM update.zip, should work on any deodexed KA7 ROM
Also note you can use this on an odexed rom as long as you delete the phone.odex file.
Click to expand...
Click to collapse
Install instructions:
1. Reboot in recovery.
2. Apply ConstantRT-Phone.zip update.
3. Reboot the phone.
Notes:
-The update clear dalvik-cache to avoid issues (reboot should take a bit longer the first time after applying this).
-If you want to apply Phone.apk manually just extract apk from the zip file and copy over /system/app/ (root needed)
if you want make it for your ROM just follow the following steps.
Thanks to:
s15274n, YetisAreReal, MoWeb and Br1cK'd from think tank thread: http://forum.xda-developers.com/showthread.php?t=863033
the_ozyrys from i9000 forum goes the credits for finding this.
Detailed procedure for making the mod:
0. Download Apk Manager from here: http://forum.xda-developers.com/showthread.php?t=695701
1. Get your Phone.apk (/system/app/Phone.apk) and copy it to apk_manager\place-apk-here-for-modding.
2. Get twframework-res.apk (system/framework/twframework-res.apk) and copy it to apk_manager\place-apk-here-for-modding.
3. Open Apk Manager running Script.bat inside apk_manager folder.
4. Choose option 22 and select the number corresponding to Phone.apk.
4.5. Choose option 19 (compression level) and select 7 (maybe works with 9, i just tried with 7 and worked).
5. Choose option 10 and when asked drag twframework-res.apk to it.
3. Open folder with Phone source (<Apk Manager folder>\projects\Phone.apk\smali\com\android\phone ).
4. Open file Ringer$1.smali with your favourite text editor.
5. Find lines (2 lines) that reads:
Code:
invoke-virtual {v1, v5, v4, v3}, Landroid/media/AudioManager;->setStreamVolume(III)V
6. Delete this lines, save the file.
7. Go back to Apk Manager and choose option 11, when asked if a system apk choose "yes", then when asked if u want to put aditional files say "yes".
8. When "Press any key to continue . . ." appears go to apk_manager\keep\ and remove classes.dex (this is the compiled modified data or something ), then press Enter to finish.
9. Put the phone into Flight mode.
10. Go to apk_manager\place-apk-here-for-modding and push unsignedPhone.apk as Phone.apk into /system/app folder
10.5 Turn Flight mode off and/or reboot the phone to avoid FCs.
11. Enjoy constant-volume ringtones.
Can you give a bit more info about apk_manager? Thank you...
Thanks for making it work was not working no matter what I tried I am guessing the twframework-res.apk had something to do with it. Also note you can use this on an odexed rom as long as you delete the phone.odex file.
dasunsrule32 said:
Can you give a bit more info about apk_manager? Thank you...
Click to expand...
Click to collapse
added Apk Manager link
Man, glad you found the way. Three of us in think tank have been going crazy trying to get this to work. I still haven't tested personally, but will soon.
Edited: would be nice to see a little credit thrown to the three of us that have actually been working on this publically in that think tank. I'm sure you've been following it and learning from our trials, which is what this community is about, but just sayin.
Ginger Clone's of the World Unite! Via the XDA App
Br1cK'd said:
Man, glad you found the way. Three of us in think tank have been going crazy trying to get this to work. I still haven't tested personally, but will soon.
Edited: would be nice to see a little credit thrown to the three of us that have actually been working on this publically in that think tank. I'm sure you've been following it and learning from our trials, which is what this community is about, but just sayin.
Ginger Clone's of the World Unite! Via the XDA App
Click to expand...
Click to collapse
There u go!!!
Muchas gracias senior! I am about to hijack a laptop at the airport and give this a shot. Ok, wrong choice of words, but you get my drift. My apk wil be GingerClone final, I will post my results,and we can get this rolled out to other roms.
Ginger Clone's of the World Unite! Via the XDA App
Thanks Worked like a charm - Nero V3.
d3xt3rlab said:
Hi guys this is a MOD for Vibrant ported from i9000 forum (http://forum.xda-developers.com/showthread.php?t=759537) to remove annoying Samsung incremental ringtone "feature"
Attached file is a Tested Modded Nero V3 ROM Phone.apk, should work on any deodexed JL5 ROM
if you want make it for your ROM just follow the following steps.
Thanks to:
s15274n, YetisAreReal, MoWeb and Br1cK'd from think tank thread: http://forum.xda-developers.com/showthread.php?t=863033
the_ozyrys from i9000 forum goes the credits for finding this.
Detail procedure for making the mod:
0. Download Apk Manager from here: http://forum.xda-developers.com/showthread.php?t=695701
1. Get your Phone.apk (/system/app/Phone.apk) and copy it to apk_manager\place-apk-here-for-modding.
2. Get twframework-res.apk (system/framework/twframework-res.apk) and copy it to apk_manager\place-apk-here-for-modding.
3. Open Apk Manager running Script.bat inside apk_manager folder.
4. Choose option 22 and select the number corresponding to Phone.apk.
4.5. Choose option 19 (compression level) and select 7 (maybe works with 9, i just tried with 7 and worked).
5. Choose option 10 and when asked drag twframework-res.apk to it.
3. Open folder with Phone source (<Apk Manager folder>\projects\Phone.apk\smali\com\android\phone ).
4. Open file Ringer$1.smali with your favourite text editor.
5. Find lines (2 lines) that reads:
Code:
invoke-virtual {v1, v5, v4, v3}, Landroid/media/AudioManager;->setStreamVolume(III)V
6. Delete this lines, save the file.
7. Go back to Apk Manager and choose option 11, when asked if a system apk choose "yes", then when asked if u want to put aditional files say "yes".
8. When "Press any key to continue . . ." appears go to apk_manager\keep\ and remove classes.dex (this is the compiled modified data or something ), then press Enter to finish.
9. Put the phone into Flight mode.
10. Go to apk_manager\place-apk-here-for-modding and push unsignedPhone.apk as Phone.apk into /system/app folder
10.5 Turn Flight mode off and/or reboot the phone to avoid FCs.
11. Enjoy constant-volume ringtones.
Click to expand...
Click to collapse
DUDE!!!! It's alive, it's alive. Nice tutorial.
I hit the thanks button and for Br1cK'd also because he tried to help me.
I assume I need to adb push this to install it?
beren28 said:
I assume I need to adb push this to install it?
Click to expand...
Click to collapse
Or you can use root explorer and just copy it over from the SD card. Remember to enable flight mode first and reboot.
Once in a great while flight delays are a good thing. Was able to bribe a very nice person at the bar fir use of their laptop in exchange for drinks. Gave this bad boy anothr run, and after more than a few frustrating days of fc's and this not working, it finally works!
Big thanks to all who collaborated in getting this to the Vibrant. s15274n, Yetis, MoWeb, d3xt3r, it took us a little bit to figure it out, but we got it. Of course all credit goes to the_ozyrys who found the original fix for the i-9000.
I do think that deleting the classes.dex when compiling as a system app is the key. I followed the steps in the op, only thing I did differently was decompile with option 9 instead of 10, and didnt need the dependencies that way. Recompiled as a system app, keeping all but the classes.dex. Went to flight mode, then renamed my original phone.apk from system/app, and pushed the file as per the op. Basically I did everything the same accept for using option 9 to decompile. This works perfectly. No fc's, and on any volume level I have a steady ringer.
I can't post the apk right now, thought I'd be able to if I logged onto the website rather than the app from my phone, no dice, but I will post it the first chance I get.
*********
Edited: APK attached, this is only known to work on GingerClone Final, build date 12/21. Repeat, I made this from GingerClone, and it may not, probably won't, work for other roms. Backup your files as always. Not with this apk, but I have been stuck in an fc loop with previous attempts and needed to push the stock one via adb, probably won't happen, but a word to the wise.
Can we get a easier way to install this mod? My computer is toast and only able to do things directly on my phone
Sent from my SGH-T959 using XDA App
Vinsane said:
Can we get a easier way to install this mod? My computer is toast and only able to do things directly on my phone
Sent from my SGH-T959 using XDA App
Click to expand...
Click to collapse
Its a rom specific mod as per the i9000 thread. And a new one would need to be made for each rom to match changes made to the respective roms and frameworks. Its not a one size fits all mod. D3xt3r posted one for jl5, specifically nero v3, if that matches your rom you can move it over using your favorite root explorer app directly from your phone.
Ginger Clone's of the World Unite! Via the XDA App
that's kinda funny... my friend disliked my phone because of the volume increasing "feature". if this works, i wonder what he'll say lol
Br1cK'd said:
Its a rom specific mod as per the i9000 thread. And a new one would need to be made for each rom to match changes made to the respective roms and frameworks. Its not a one size fits all mod. Dext3r posted one for jl5, specifically nero v3, if that matches your rom you can move it over using your favorite root explorer app directly from your phone.
I have Nero V3. So just download the apk and install using astro?
Sorry for the noob questions. Just don't want to screw anything up.
Ginger Clone's of the World Unite! Via the XDA App
Click to expand...
Click to collapse
Sent from my Galaxy S via XDA App
Vinsane said:
Sent from my Galaxy S via XDA App
Click to expand...
Click to collapse
Yes you should be able to download his .apk and use it since you are on the same rom. Here is mine for stock JL5 odex/deodex.
Anyone do this for stock JL5?
I am using the attached Phone.apk from Post #1 for Nero V3.The only FC I get is when in Settings->Wireless and network-> selecting Mobile network= FC
EDIT: sorry the FC had nothing to do with the Phone.apk. It was due to the throttle mod I had.
This was running great when I installed it yesterday. Then today I kept getting dropped calls and FC's. I've since reverted and everything is fine. Can't figure out why it worked for a day then decided to give problems.
Running Nero v3 JL5

[SCRIPT] Soft Brick Recovery

For Windows users, I've created a script based on designgear's thread on steps for recovery from a soft brick.
designgear's original thread on soft brick recovery:
http://forum.xda-developers.com/showthread.php?t=966405
-----
This script is all-inclusive. It will temp. root (no need to use SuperOneClick), create a /data/recovery folder, push services.jar, framework.jar, and framework-res.apk to the /data/recovery folder, and then copy them to /system/framework
Instructions:
USB debugging needs to be ON.
Unpackage the .7z archive
Execute "Run Me - Atrix Soft Brick Recovery"
Let the script run, and wait for the phone to reboot.
(Reboot might take a few moments, leave your phone alone and wait it out!)
Download:
Temporarily Removed. Will return soon...
Thanks go out to:
designgears
PAulyh0ffman
YellowGTO
Standard disclaimer...,yada yada yada, Use this at your own risk.
nice work, ill be a little for adventurous with snooping around the /system and trying to get rid of motoblur.
Good job, hope i won't need it
Awesome work. If this is not stickied, moderator please do so. I thank everyone involved. DG, I'm sorry to see you go. I thank you for your involvement thus far and any future help you contribute.
Sent from my MB860 using XDA App
added to the sticky
How do i use it, if my phone is stuck in the "M" screen?
Tried to run while in Early USB enumeration - didn't work.
Any other option from recovery / fast boot / SRD - that may work to un-brick?
Thanks in advance
The best way I can figure is to force the phone out from the moto screen. Put the phone into early usb enumeration. using Adeo0.7z click install as soon as the phone mounts. That got my phone to boot up yesterday. Once you hit the power button, to lock or turn off, reboot. It'll just go back to the moto screen and hang.
Sent from my MB860 using XDA App
tomerbn said:
How do i use it, if my phone is stuck in the "M" screen?
Tried to run while in Early USB enumeration - didn't work.
Any other option from recovery / fast boot / SRD - that may work to un-brick?
Thanks in advance
Click to expand...
Click to collapse
It looks like I'm having a problem with the shell root.
---
Use this temporary solution (which utilizes SuperOneClick), until I can get a chance to fix things.
1. Download SuperOneClick from shortfuse's site: http://www.shortfuse.org/
2. Download my temp script, and unpack
3. Unpackage and run SuperOneClick
4. Boot the Atrix into FastBoot, and enable Early USB enumeration
5. When you see "Reading ODM fuse: 1", plug your phone into the computer and run Shell Root with SuperOneClick
6. Once rooted, run the temp script "Run Me - Atrix Soft Brick No Root"
Your phone will boot into Android, and then reboot. Leave things alone until that reboot happens, and you no longer have the blinking red light.
Download:
Temporarily Removed. Will return soon...
Sorry 'bout this, I hope to get my original script fixed asap.
I used this script because I wanted my stock notification bar back so I used it. However I followed the instructions from the previous post and it still gave me a boot loop. I figured out that there was something with the services.jar and the framework.jar in the 7z file because I used those files the manual way and it still looped. So i replaced those files with these here http://hotfile.com/dl/108780455/13cd9f6/recoveryfiles.zip.html and it worked!
I just checked both scripts, and MD5 is verified against retail dump:
Blur_Version.4.1.26.MB860.ATT.en.US
If you pushed a different working file, can you send it to me so I can look at? I've ran pushed these framework files multiple times to my phone now.
Thanks,
olieebur said:
I used this script because I wanted my stock notification bar back so I used it. However I followed the instructions from the previous post and it still gave me a boot loop. I figured out that there was something with the services.jar and the framework.jar in the 7z file because I used those files the manual way and it still looped. So i replaced those files with these here http://hotfile.com/dl/108780455/13cd9f6/recoveryfiles.zip.html and it worked!
Click to expand...
Click to collapse
MD5 from my phone & Odexed Retail Dump
Framework:
9E59AA29AD0C068B52D966BF7F82F8DE
Framework-res.apk
8DA2B8AFE971C23E65C94B316BFEAFDD
Services.jar
5AD492B7C1B82A10ECA2A406FE4C8A70
Yours
Framework:
CE777AA13FEBE9B7438D99A045D93335
Framework-res.apk
8DA2B8AFE971C23E65C94B316BFEAFDD
Services.jar
5AD492B7C1B82A10ECA2A406FE4C8A70
Is there anything special with your phone that you've done?
EDIT:
I've redownloaded the Odexed retail dumped, and checked my files again & they match.
http://ponack.net/designgears/atrix/dumps/
Turns out the services.jar was fine. The framework seemed to be the problem. The only thing that didn't match was the framework Don't think I did anything different to my phone.
Sent from my MB860 using XDA App
Just pulled both downloads for now until I can look into this. Like I had mentioned before, my framework.jar matches the retail dump...? Going to collect some other framework.jar and see what I can find...
How do you turn on debugging? My .7z is Chrome7z. Is this sufficient? Where do I go to execute "Run Me - Atrix Soft Brick Recovery?"
norcal einstein said:
Just pulled both downloads for now until I can look into this. Like I had mentioned before, my framework.jar matches the retail dump...? Going to collect some other framework.jar and see what I can find...
Click to expand...
Click to collapse
I soft bricked my bell atrix...can you post ur scrit so i can try to run it??
Thanks
Any chance this thread gets updated?
demens13 said:
Any chance this thread gets updated?
Click to expand...
Click to collapse
i guess not???
Hello when are ou going to return the download links ?
manyelski said:
Hello when are ou going to return the download links ?
Click to expand...
Click to collapse
Wtf?!?! This threads over a year old... why the hell would you post here?
Sent from my CM7 Atrix 4G

[MOD] PRL Write Enabler for Sprint Galaxy S4 [MDC][MDL][MJA]

First off this work is based on Digiblur's PRL Write Enabler from the Sprint Galaxy S3 forum. I simply modified it & packaged it for our Sprint Galaxy S4 devices.
Here is the original S3 post that this was found in... http://forum.xda-developers.com/showthread.php?t=2159054
Also, post #8 below provides additional info.
I tested it by flashing with TWRP and it worked on my stock, rooted S4 with the MDC and MDL releases.
If you're on a stock rooted Rom and not using TWRP, you can just copy the HiddenMenu.apk from inside the zip file downloaded into /system/app/ and overwrite the one that's there. (You'll need a root enabled file browser to do this of course).
Thanks to Unknownforce here is a version for MJA...
http://www.androidfilehost.com/?fid=23212708291676468
Enjoy!!
This certainly will save me from having to use CDMA WS to switch like I just did yesterday. 55014 was not working well for me in my market so I switched back to 25014.
What is write enabler?
Keeps aborting for me
THEGAMEPLAY94 said:
Keeps aborting for me
Click to expand...
Click to collapse
You mean the install of the zip?
If so, you can pull the APK out of the zip and replace HiddenMenu.apk in the system folder (make a backup first). You may want to also set the permissions to rw-r-r after replacing the system app. Reboot, then you should be good to go.
@ChadH42,
I know it seems like I'm harping on you but I'm really not..
You need to update the OP on - 1. What is this? 2. What does this do? 3. Why is this in the Development Section.. ?
A good OP leads to less questions.. Development Sections aren't for information. That would be considered a Discussion Thread that belongs in General.
Let's keep the Dev section clean from the start.
My suggestion - Edit the OP on the What's/Why's?/How To's and you won't get posts like mine.
To the OP, updated your title as [WIP], and I suggest you provided additional information so that folks aren't bricking their new devices.
I will check in, if you need anything, let me know.
What this MOD does (in case the OP takes a little while to chime in)
What this MOD does is modifies our ##DATA# (select View) menu to allow for the PRL Write option to appear and function. With this menu option, the user can change their PRL on the fly from the device itself by placing a copy of the desired PRL in the root directory of Internal Storage and name it "test.prl" (no quotes), dial ##DATA# (choose View), tap Write PRL, tap the sub-menu option Write PRL ---wait--- and then the device reboots with the test.prl PRL applied upon reboot. Not every PRL works and sometimes it takes a couple of tries.
A tip for multiple PRL options is to, of course, keep a folder of the PRLs you like and keep them labeled in there. Copy the desired PRL to proper place as needed and just remember to rename the copy to "test.prl". Switch back and forth as you please. I hope this helps clear some confusion and helps some find purpose with the MOD like I have.
For a clear set of instructions that I did not want to just copy verbatim, check the link below. Also, if you are having issues with the zip not installing in CWM, just extract the APK from the ZIP (inside the system/app folder), use Root Explorer or your favorite root-access file explorer to place the APK in the APP folder, apply the proper permissions and reboot.
Ref from the GS3: http://forum.xda-developers.com/showthread.php?t=1748516
So I unzipped the file, replaced the hidden menu original apk with the new one, then set permissions, rebooted, then tried ##3282# and the view and edit options do not appear.. .. It just blanks out the items I just entered
Sent from my SPH-L720 using Tapatalk 2
jayjay7411 said:
So I unzipped the file, replaced the hidden menu original apk with the new one, then set permissions, rebooted, then tried ##3282# and the view and edit options do not appear.. .. It just blanks out the items I just entered
Sent from my SPH-L720 using Tapatalk 2
Click to expand...
Click to collapse
Did you clear Cache when you rebooted?
What ROM are you using?
ChadH42 said:
Did you clear Cache when you rebooted?
What ROM are you using?
Click to expand...
Click to collapse
+1...same thing is happenening to me...Im on force rom. when i type in the dialer code it just blanks out.
lilmikeyv said:
+1...same thing is happenening to me...Im on force rom. when i type in the dialer code it just blanks out.
Click to expand...
Click to collapse
I just tried this mod with the Force ROM and it did the same thing (blank options). The only thing I can think of is that it works with the odex version of the stock ROM so maybe its a problem with deodex ROMs of which Force is one.
O okay. Its currently not a necessary thing for me at the moment, just nice for when I travel to Alabama. Hopefully later on someone gets it working on deodex.
Sent from my Nexus 4 using Tapatalk 2
ChadH42 said:
I just tried this mod with the Force ROM and it did the same thing (blank options). The only thing I can think of is that it works with the odex version of the stock ROM so maybe its a problem with deodex ROMs of which Force is one.
Click to expand...
Click to collapse
I am actually running it on the Rooted Stock DeOdexed ROM. So I don't think it is an Odex/DeOdex issue...might be a Force ROM issue.
Also, moot point for Force ROM (1.0+) anyway because the PRL Write mod is already included with that.
I'm also having this problem and I'm pretty sure it was working this morning. I haven't flashed anything since then.
edit-- I tried:
1. wiping both cache's
2. killing background process "OIThiddenmenu"
neither fixed it.
I reinstalled the stock odex ROM and flashed this again and it worked.
Just an FYI, OP, I get Error Status 6 when trying to flash this via recovery, which indicates one of two things. Either the format of the file is incorrect or there is a syntax error. The syntax looks fine, but opening in basic Notepad shouldn't "look pretty" like it currently does. So it's likely it was edited with a non-Unix-compatible text editor like Notepad or MS-Word...
To make modifications to an updater-script (or just about any Android/Linux files like this) you need something like Notepad++ or gVim.
Anyways, I did a quick test with this, and it does in fact not work on my ROM as it is, but I see why it's failing, but I don't know what exactly it's trying to reference yet. (It fails with an id number instead of a name, so I'll have to de-compile some things to find it.)
I'm not sure it's a ROM issue or a MOD issue yet. (meaning it might have to be updated for each custom ROM, depending on how they are configured) But I'll track it down and update when I can.
Unknownforce said:
Just an FYI, OP, I get Error Status 6 when trying to flash this via recovery, which indicates one of two things. Either the format of the file is incorrect or there is a syntax error. The syntax looks fine, but opening in basic Notepad shouldn't "look pretty" like it currently does. So it's likely it was edited with a non-Unix-compatible text editor like Notepad or MS-Word...
To make modifications to an updater-script (or just about any Android/Linux files like this) you need something like Notepad++ or gVim.
Anyways, I did a quick test with this, and it does in fact not work on my ROM as it is, but I see why it's failing, but I don't know what exactly it's trying to reference yet. (It fails with an id number instead of a name, so I'll have to de-compile some things to find it.)
I'm not sure it's a ROM issue or a MOD issue yet. (meaning it might have to be updated for each custom ROM, depending on how they are configured) But I'll track it down and update when I can.
Click to expand...
Click to collapse
Thanks for all your help here..
I had the error status 6 problem in the beginning and thought I fixed it. You are correct that I used MS WordPad to edit the files.
ChadH42 said:
Thanks for all your help here..
I had the error status 6 problem in the beginning and thought I fixed it. You are correct that I used MS WordPad to edit the files.
Click to expand...
Click to collapse
I think TWRP can read the non Unix type characters, which is why it works on a different recovery.
I'm hoping it's a mod issue and I can just modify the mod to work universally regardless of the rom. But we'll see.
Sent from my SPH-L720 using xda app-developers app
fails in recovery for me.
says error executing updater binary in zip
in stock rooted...

Easier WiFi Tether Hack (No SQL Edits + Survives Factory Resets)

** Designed for stock Moto 98.72.22 and 98.72.22-based ROMs **
** FOR OTHER ROMS and updated stock, see post #7 **
When you do the entitlement_check SQL hack, you are modifying a string provided by MotorolaSettingsProvider.apk. But anytime you do a factory reset, you have to repeat the SQL hack. I didn't like this, so I modified the system APK to disable entitlement by default = same end result as SQL hack.
I have tested this twice without issue, so I'd say it's ready for release. Of course you need to be rooted to modify /system/app.
I did the following with Safestrap file manager and upon rebooting (no need to wipe, it seems) the Mobile Hotspot launcher worked like a charm
Also did a factory reset (data, dalvik, cache) and tethering still worked just fine!
Instructions:
0. Backup just in case!!
1. Download attached MotorolaSettingsProvider.apk
2. Reboot into Safestrap, Mount System, and then open the File Manager (under Advanced)
3. Browse to /system/app and rename MotorolaSettingsProvider.apk to *.apk.BAK (keep as a backup)
4. Browse back to the downloaded file, click it, select Move, browse to /system/app, click Select, OK
5. Browse again to /system/app, click on MotorolaSettingsProvider.apk (NOT the one ending in .BAK)
6. CHMOD permissions as 0644 (rw r- r-)
7. Rename MotorolaSettingsProvider.odex to *.odex.BAK (backup)
8. Reboot, click Thanks, and enjoy!
tried this on stock jb.no go. fc and started reading notifications. also constant network loss and re-aquire.
Ismokel said:
tried this on stock jb.no go. fc and started reading notifications. also constant network loss and re-aquire.
Click to expand...
Click to collapse
JB 246 98.72.22? I'm assuming you used a root explorer due to the FC. I recommend using Safestrap's built-in file manager (see the updated instructions).
I could also make a flashable ZIP to mitigate user-error if there is demand for it.
The last issues you mentioned are unrelated to this. The modified APK is exactly the same as the original, except for a single byte (1 -> 0) and deodexed. Oh, and a "false" to "true" in the manifest so we could manually clear data, but that didn't work out. You can decompile and compare yourself
Same issue here as Ismokel. It might be a signing issue, as I saw the same thing occur when I tried doing the mod myself and was experimenting with the different options for signing. It worked for me when I left the existing signature.
I would post my modded version, but I need to make one with only that mod first, as mine has mods to change other defaults as well.
Also, what is this JB 246 you are referring to? Wrong number? Just from a quick search, the only 246 reference I found was ICS.
You mentioned that yours worked for you without wiping data. Did you change default_entitlement_check in the xml resources or did you change something else? I was only interested in this mod to change the default and not the existing setting, but I'm still somewhat curious.
progrockguy said:
** Designed for stock Moto 246 (JB 4.1.2) and 246-stock-based ROMs **
When you do the entitlement_check SQL hack, you are modifying a string provided by MotorolaSettingsProvider.apk. But anytime you do a factory reset, you have to repeat the SQL hack. I didn't like this, so I modified the system APK to disable entitlement by default.
I have tested this twice without issue, so I'd say it's ready for release. Of course you need to be rooted to modify /system/app.
I did the following with Safestrap file manager and upon rebooting (no need to wipe, it seems) the Mobile Hotspot launcher worked like a charm
Also did a factory reset (data, dalvik, cache) and tethering still worked just fine!
Instructions:
1. Download attached MotorolaSettingsProvider.apk
2. Reboot into Safestrap, Mount System, and then open the File Manager (under Advanced)
3. Browse to /system/app and rename MotorolaSettingsProvider.apk to *.apk.BAK (keep as a backup)
4. Browse back to the downloaded file, click it, select Move, browse to /system/app, click Select, OK
5. Browse again to /system/app, click on MotorolaSettingsProvider.apk (NOT the one ending in .BAK)
6. CHMOD permissions as 0644 (rw r- r-)
7. Rename MotorolaSettingsProvider.odex to *.odex.BAK (backup)
8. Reboot, click Thanks, and enjoy!
Click to expand...
Click to collapse
I would like to know how you made the modifications to the apk. I would like to make the same modifications for my Atrix HD.
dpcsar said:
I would like to know how you made the modifications to the apk. I would like to make the same modifications for my Atrix HD.
Click to expand...
Click to collapse
has anyone tried this with SlimKat? It's the one thing that's missing from it that I've wanted so far.
ShadyDreamer said:
Also, what is this JB 246 you are referring to? Wrong number? Just from a quick search, the only 246 reference I found was ICS.
Click to expand...
Click to collapse
Whoops!! 98.72.22 is the base I used. If you took OTA updates, that could explain the boot loops. See below on how to DIY
dpcsar said:
I would like to know how you made the modifications to the apk. I would like to make the same modifications for my Atrix HD.
Click to expand...
Click to collapse
Brolzy said:
has anyone tried this with SlimKat? It's the one thing that's missing from it that I've wanted so far.
Click to expand...
Click to collapse
This mod is easy and should work on all ROMs. All you need is a deodexed version of MotorolaSettingsProvider.apk from your current/desired ROM.
Steps: after decompiling, open the following text file:
res/values/integers.xml
look for: def_entitlement_check
Change the 1 to a 0 and save.
Recompile and KEEP EXISTING SIGNATURE.
My safestrap instructions will work on your newly modified APK. (If you're going to try replacing via root file explorers, I suggest an overwriting Paste. That way you'll keep permissions in case android crashes and hot reboots. Do not delete, *then* paste. It'll likely crash before you can set the permissions.)
Good luck!
progrockguy said:
This mod is easy and should work on all ROMs. All you need is a deodexed version of MotorolaSettingsProvider.apk from your current/desired ROM.
Steps: after decompiling, open the following text file:
res/values/integers.xml
look for: def_entitlement_check
Change the 1 to a 0 and save.
Recompile and KEEP EXISTING SIGNATURE.
Click to expand...
Click to collapse
That's exactly what I did, so I don't know why your file didn't work for me. I'm using 98.72.22, too. A while ago when I did that exact mod myself it worked fine.
If you are using adb from a computer connected by USB to copy and install the apk, after using su you can use the stop command to close all apps, then you can safely move, rename, replace, or delete system apps without it crashing and rebooting. Just make sure you have it in the proper state before you reboot. If a prompt to allow su from adb comes up on the phone, be sure to allow it with no time limit in case you need to use su again before you use adb reboot to restart the phone.
ShadyDreamer said:
That's exactly what I did, so I don't know why your file didn't work for me. I'm using 98.72.22, too. A while ago when I did that exact mod myself it worked fine.
Click to expand...
Click to collapse
Curious, where did you get your APK from? Because stock is odexed.
My file also had a manifest edit (which didn't work out), but I doubt that's the issue since it works on two of my Bionics.
When I quoted the part I was replying to, I included your "All you need is a deodexed version of MotorolaSettingsProvider.apk from your current/desired ROM." line in the quote for a reason. I did that part.

Categories

Resources