Related
Modify Your Fonts
This works with any font, even if you don't have two versions of it (Regular and Bold). Just make a duplicate of the font you want to use and rename the files to DroidSans.ttf and DroidSans-Bold.ttf. The fonts must be True Type (.ttf)!!!
Basically you need to replace the original DroidSans.ttf and DroidSans-Bold.ttf fonts from the Samsung's /system/fonts folder. There are two ways for doing this. Both of them need a rooted phone and yes, both of them can mess up your phone:
1. The mobile way (no PC needed)
- Copy the renamed DroidSans.ttf and DroidSans-Bold.ttf to the SD Card, copy them to the Samsung's /system/fonts folder and replace the original ones, using a file manager like Root Explorer mounted in R/W
2. The noob way
You must have the Android SDK Components installed.
- Go to Settings > Applications > Development and check the USB Debugging box
- Connect your SGS via USB to your computer. Do not mount in Mass Storage Mode!
- Copy a Command Prompt Window (for Windows 7 go to Start > Search > Type CMD and right click - copy it) in the android-sdk-windows\tools folder so you don't have to type all those "cd" commands and open it. Else type cd android-sdk-windows (or whatever the folder is named) and cd tools to get there
- Type adb pull /system/fonts/DroidSans.ttf and adb pull /system/fonts/DroidSans-Bold.ttf. You will see that the original fonts were copied to the \tools folder. Make a backup of them!!!
- Copy the renamed fonts you want to use (I have attached the renamed Confortaa.ttf) and replace the pulled ones in the MS Windows's adb\tools folder (again, make sure you've made a backup of the original fonts)
- Type adb push DroidSans.ttf /system/fonts/ and adb push DroidSans-Bold.ttf /system/fonts/
- Type adb reboot
I have attached the default fonts too, just in case
Later today I will make a video so all these instructions can be clear for everybody. I really don't have enough time for that right now, sry
Thanks sochet84 for the original idea
3. Thanks to SLX69's finding, there are some Flip Fonts that you just need to install and apply them from Settings > Display > Font style. Some of them are attached here.
Modify Your Notification Bar
Follow the tutorial posted here. The credits go to MacaronyMax. Thanks!
I'm currently working on moding other things like icons, menu, keyboard and I'll keep you posted.
how did you change the taskbar ? exactly the transparent like this
Modify Your Dock
Modify Your Dock
- Type adb pull /system/app/TouchWiz30Launcher.apk You will find the TouchWiz30Launcher.apk copied to the \tools folder. Make a backup!!! Maybe you'll need to put it back later.
- Open TouchWiz30Launcher.apk using WinRAR or an equivalent application and browse to the \res\drawable-hdpi folder, within WinRAR. Do not extract it!
- Drag and drop homescreen_menu_mainmenu_bg.png from the attached WhiteDock.zip in the \res\drawable-hdpi folder and close WinRAR
- Go back to the CMD window and type adb push TouchWiz30Launcher.apk /system/app
- Type adb reboot
The result is posted below. You can modify the homescreen_menu_mainmenu_bg.png image in any way you want and please post your results here. Of course, all those repetitive steps can be automated, but for the moment I don't have time to study how to. If you have any ideas, please post them, just don't brick anyone's phones
Edit: I have attached my TouchWiz30Launcher.apk files as well, in the .zip files. Can someone please try to push them to /system/app using adb, to see if they work, even if they're not extracted from their own phone? Note that I'm using an European SGS. Not working.
Post Reserved
Post reserved
Thank you man! This is handy!
How did you get the little moon and time like that? Is it in beautiful widgets?
Yes, it's Beautiful Widgets.
Sent from my GT-I9000 using XDA App
Great tutorial man! Very handy!
great tutorial! thanks!!!
Really nice, thanks!
Hi, i have a little problem.
I can pull the framework_res.apk onto my computer, but i cant push it back to the sgs, because i get an "permission denied" error.
Last login: Fri Aug 13 17:02:34 on ttys001
lukas-mac:tools lukasborek$ ./adb pull /system/framework/framework-res.apk
4476 KB/s (7174697 bytes in 1.565s)
lukas-mac:tools lukasborek$ ./adb push framework-res.apk /system/framework/
failed to copy 'framework-res.apk' to '/system/framework//framework-res.apk': Permission denied
Click to expand...
Click to collapse
Any suggestions?
thx
I have a problem with it...
I get the message:
failed to copy 'TouchWiz30Launcher.apk' to ' /system/app/TouchWiz30Launcher.apk'ermission denied
I run JM5 and on Win7 64bit if that's any help
Google for the Root Explorer app, instal and open it, press "Mount R/W".
Go to the system folder and long-press on it. Select "Permissions" and check all the boxes.
Do the same with the "framework" file.
Tell me if it works.
Sent from my GT-I9000 using XDA App
loinenavant said:
Google for the Root Explorer app, instal and open it, press "Mount R/W".
Go to the system folder and long-press on it. Select "Permissions" and check all the boxes.
Do the same with the "framework" file.
Tell me if it works.
Sent from my GT-I9000 using XDA App
Click to expand...
Click to collapse
Like a charm. Well I only tested the dock so far but I think I'll have a look to see what else is in that apk before I go to framework
Thx a lot
it works for the font. but how to undo it? i use the 1st method copy and paste. but somehow the font seems too small for me, how to switch back the original's?
If you didn't made a backup to put them back, you'll need to reflash. Or wait a few hours for me to post them here
Sent from my GT-I9000 using XDA App
i didnt know it was refering to the back up of the original font. blur me. i shall wait for u to post it here. really thanks alot!! actually this font is nice but seems abit small. haha if possible post more variety of fonts for us to choose from. hehe.
kindaichi24 said:
i didnt know it was refering to the back up of the original font. blur me. i shall wait for u to post it here. really thanks alot!! actually this font is nice but seems abit small. haha if possible post more variety of fonts for us to choose from. hehe.
Click to expand...
Click to collapse
Just Google for *.ttf fonts
Sent from my GT-I9000 using XDA App
i manage to found the file. thanks a million. anyway the glass notification bar tutorial i dont understand step 5 and 6. can elaborate on it? sorry for the trouble. i already pull out the framework-res.apk and its in the tools folder. but wad to do afterward???? i cant find \res\drawable-hdpi folder
Hi guys,
Since there seems to be some demand for this kind of thing, I decided to post instructions on a mod I made a while back. This gives you the option of choosing between Samsung's GlassLock (i.e. the default TW lockscreen) or the stock keyguard of Android 2.1.
The method involves de- and re-compiling /system/framework/android.policy.odex, and you should have some basic knowledge of the tools involved (i'm not gonna spell out every step). Before beginning, take a backup of android.policy.jar and android.policy.odex (or preferably the whole framework folder). You should issue the commands in recovery mode.
Required tools: rooted SGS (I've done this only with JM2, and the code *might* need modifying for other roms, though I doubt it), adb, smali/baksmali, dexopt-wrapper, text & hex editor, winrar (or any jar editor).
Here we go:
1. Use adb to pull out /system/framework/android.policy.odex and other framework .odexes (required for de-odexing). Might be wise to backup the whole /system/framework/ directory at this point.
2. Use baksmali to deodex the file (java -jar baksmali.jar -x android.policy.odex -o android.policy). Baksmali will let you know if you are missing any of the framework .odexes.
3. Open LockPatternKeyguardView.smali and find the method getLockScreenMode()Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
4. Replace the contents of this method with the attached file getLockScreenMode.txt.
5. Save LockPatternKeyguardView.smali.
6. Use smali to compile the files back to classes.dex (java -jar smali.jar android.policy -o classes.dex)
7. Pull /system/framework/android.policy.jar, add the newly created classes.dex to it, and push it back to the device.
8. On your phone, do:
# cd /system/framework
# dexopt-wrapper android.policy.jar patched.odex /system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar
Ouput should be:
--- BEGIN 'android.policy.jar' (bootstrap=0) ---
--- would reduce privs here
--- waiting for verify+opt, pid=3105
--- END 'android.policy.jar' (success) ---
9. You now have odexed the file into patched.odex. However, the signature of the file is not compatible with the other framework files, so you need to fix it. I think the proper way should be to re-odex all the framework files, but I haven't encountered any issues with just patching the signature.
10. Open the original android.policy.odex in a hex editor, and copy signature bytes from offsets 0x34-0x47 to the new patched.odex, and save it. Optionally, you can also do this on your device by issuing the command:
# dd if=original.android.policy.odex of=patched.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
Where if="..." is the original file, and of="..." is the file you want to patch.
11. Push the patched and hex-edited file to /system/framework/android.policy.odex and restore the original /system/framework/android.policy.jar.
12. Reboot and enjoy your good ol' keyguard
Some notes:
- If you want to revert back to Samsung's lock screen, just create a file called /data/local/enable_glass_lock ("adb touch /data/local/enable_glass_lock").
- By default, the menu button will also unlock the screen. To disable this behavior, you have to modify /res/values-hdpi-v4/bools.xml in /system/framework/framework-res.apk, and change the value of <bool name="config_disableMenuKeyInLockScreen">false</bool> to true. Can also be done by modifying code.
On a side note, the code for Smart Unlock (present in some Samsung phones) seems to be in there... it would be an interesting project to get that working
Great stuff, i've been waiting for someone to find out how to get rid of the glass screeen since first day.
Sadly i'm a real noob so it is useless for me.
Maybe someone can create an apk or a win program out of this.
thank you !
but could you explain it better ?
toca79 said:
Maybe someone can create an apk or a win program out of this.
Click to expand...
Click to collapse
+1 for an automated solution, provided method seems too hard for me.
Excellent post Ateisti! We need more of these advanced mods for SGS.
Ateisti said:
adb, smali/baksmali, dexopt-wrapper,
Click to expand...
Click to collapse
Could you provide links to this?
Or are those sw included in the Android SDK?
I want to do 6-step but I see:
Code:
C:\Users\Konrad>"C:\Program Files (x86)\Java\jre6\bin\java.exe" -jar "C
:\Users\Konrad\Desktop\smali.jar" android.policy -o classes.dex
android.policy\com\android\internal\policy\impl\LockPatternKeyguardView$LockScre
enMode.smali[0,-1] The file must contain a .class directive
What's wrong?
EDIT:
I've changed a wrong smali.
In step 10, how do i copy the signature bytes with my hex editor? I dont understand what offsets 0x34-0x57 is...
10. Open the original android.policy.odex and copy signature bytes from offsets 0x34-0x47 to the new patched.odex, and save it.
Click to expand...
Click to collapse
Can anyone who successfully coped with getting this done following the instructions above please do a video showing us how to do it, I think that might help us a lot... thanks a lot on behalf of us noobs
Stefanauss said:
Could you provide links to this?
Or are those sw included in the Android SDK?
Click to expand...
Click to collapse
ADB is included in the SDK, Smali and Baksmali can be downloaded here and dexopt-wrapper for example here.
qwas00 said:
In step 10, how do i copy the signature bytes with my hex editor? I dont understand what offsets 0x34-0x57 is...
Click to expand...
Click to collapse
It means to seek to the 52nd byte (or 0x34 in hex) of the file, and then copy and replace the following 20 bytes to the second file. But you can also do it on the device by issuing this command (I think busybox is required):
dd if=original.android.policy.odex of=patched.android.policy.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
...where "if=..." is the original file and "of=..." is the file you want to patch.
Ateisti said:
Hi guys,
Since there seems to be some demand for this kind of thing, I decided to post instructions on a mod I made a while back. This gives you the option of choosing between Samsung's GlassLock (i.e. the default TW lockscreen) or the stock keyguard of Android 2.1.
The method involves de- and re-compiling /system/framework/android.policy.odex, and you should have some basic knowledge of the tools involved (i'm not gonna spell out every step). Before beginning, take a backup of android.policy.jar and android.policy.odex (or preferably the whole framework folder). You should issue the commands in recovery mode.
Required tools: rooted SGS (I've done this only with JM2, and the code *might* need modifying for other roms, though I doubt it), adb, smali/baksmali, dexopt-wrapper, text & hex editor, winrar (or any jar editor).
Here we go:
1. Use adb to pull out /system/framework/android.policy.odex and other framework .odexes (required for de-odexing). Might be wise to backup the whole /system/framework/ directory at this point.
2. Use baksmali to deodex the file (java -jar baksmali.jar -x android.policy.odex -o android.policy). Baksmali will let you know if you are missing any of the framework .odexes.
3. Open LockPatternKeyguardView.smali and find the method getLockScreenMode()Lcom/android/internal/policy/impl/LockPatternKeyguardView$LockScreenMode;
4. Replace the contents of this method with the attached file getLockScreenMode.txt.
5. Save LockPatternKeyguardView.smali.
6. Use smali to compile the files back to classes.dex (java -jar smali.jar android.policy -o classes.dex)
7. Pull /system/framework/android.policy.jar, add the newly created classes.dex to it, and push it back to the device.
8. On your phone, do:
# cd /system/framework
# dexopt-wrapper android.policy.jar patched.odex /system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar
Ouput should be:
--- BEGIN 'android.policy.jar' (bootstrap=0) ---
--- would reduce privs here
--- waiting for verify+opt, pid=3105
--- END 'android.policy.jar' (success) ---
9. You now have odexed the file into patched.odex. However, the signature of the file is not compatible with the other framework files, so you need to fix it. I think the proper way should be to re-odex all the framework files, but I haven't encountered any issues with just patching the signature.
10. Open the original android.policy.odex and copy signature bytes from offsets 0x34-0x47 to the new patched.odex, and save it.
11. Push the patched and hex-edited file to /system/framework/android.policy.odex and restore the original /system/framework/android.policy.jar.
12. Reboot and enjoy your good ol' keyguard
Some notes:
- If you want to revert back to Samsung's lock screen, just create a file called /data/local/enable_glass_lock ("adb touch /data/local/enable_glass_lock").
- By default, the menu button will also unlock the screen. To disable this behavior, you have to modify /res/values-hdpi-v4/bools.xml in /system/framework/framework-res.apk, and change the value of <bool name="config_disableMenuKeyInLockScreen">false</bool> to true. Can also be done by modifying code.
On a side note, the code for Smart Unlock (present in some Samsung phones) seems to be in there... it would be an interesting project to get that working
Click to expand...
Click to collapse
THANX TO ALL YOUR EFFORTS........ can you please attach a screen shot of the lock what you are talking about.. and does it work flawlessly without any sort of a lag.. and is it 100% bugs free?????
Could you also choose any other lockscreen, like WidgetLocker or SimplyLockscreen?
That would be great
Ateisti said:
It means to seek to the 52nd byte (or 0x34 in hex) of the file, and then copy and replace the following 20 bytes to the second file. But you can also do it on the device by issuing this command (I think busybox is required):
dd if=original.android.policy.odex of=patched.android.policy.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
...where "if=..." is the original file and "of=..." is the file you want to patch.
Click to expand...
Click to collapse
Thanks, that worked fine
Thanks! This method worked like a charm. I hated that glass unlock thingy.
However my /system/framework/framework-res.apk doesn't have a value folder, so I can't remove the possibility to unlock with the menu button.
Couldn't find any bools.xml in there at all.
This is replacing the music player controls when the screen is locked, right? It's a nice functionality and would be a pity to loose it.
Otherwise its a great mod and it would be cool if someone can make the One Click LockScreen Changer ;-)
Sent from my GT-I9000 using Tapatalk
thE_29 said:
Could you also choose any other lockscreen, like WidgetLocker or SimplyLockscreen?
That would be great
Click to expand...
Click to collapse
Not as such, but technically it should be possible with some additional coding. I however don't have the time to undertake such a task.
Tharfrin said:
Thanks! This method worked like a charm. I hated that glass unlock thingy.
However my /system/framework/framework-res.apk doesn't have a value folder, so I can't remove the possibility to unlock with the menu button.
Couldn't find any bools.xml in there at all.
Click to expand...
Click to collapse
This might be a ROM version thingy. On my system there are actually two XML files with that same setting, but only one of them works (the one I mentioned in my original post). Just search all your framework-res xml files for "config_disableMenuKeyInLockScreen", and change every instance to true. Should do the trick.
Or if all else fails, just edit the file LockScreen.smali, method "shouldEnableMenuKey()", and make it always return 0 ("return v4" -> "return v6").
mobilx said:
This is replacing the music player controls when the screen is locked, right? It's a nice functionality and would be a pity to loose it.
Otherwise its a great mod and it would be cool if someone can make the One Click LockScreen Changer ;-)
Click to expand...
Click to collapse
That is unfortunately the case. The music controls (as well as the puzzle pieces) are coded into the GlassLock class, so it would required some additional reverse engineering to implement those in the stock keyguard.
4 hours working and it works (jm2).
I'm going to test on the jpc.
EDIT:
I put it on the jpc and it doesn't work.
Did not work with JPC I really want to use the stock lockscreen!
Sent from my GT-I9000 using XDA App
hi guy thanks for your instruction. However I'm using samset's 1.9f which has the ROM deodexed and i found no .odex files but .jar files. Is there a way to workaround this? I'd really love to revert back to stock eclair lockscreen~!
billytcf said:
hi guy thanks for your instruction. However I'm using samset's 1.9f which has the ROM deodexed and i found no .odex files but .jar files. Is there a way to workaround this? I'd really love to revert back to stock eclair lockscreen~!
Click to expand...
Click to collapse
same here no odex files...
Hi, after the update to froyo (in my case JP6) i found out the appbrain fast web installer wasn't working anymore. After some reading, it seems that the android_id (which this app uses) is set to a fixed number during the froyo update. This means the app cannot find a unique android_id to send the 'install instruction' to.
Source: http://forum.xda-developers.com/showthread.php?p=8604909#post86049
1. Make sure and backup your /dbdata/databases /com.android.providers.settings /settings.db file
Then in ADB or connectbot type the following
su
cd /dbdata/databases/com.android.providers.settings sqlite3 settings.db
sqlite> insert into secure (’name’, ‘value’ ) values (’android_id’,'device_id_goes_here’);
sqlite> .exit
Reboot
note 'device_id_goes_here’is your 16 digit HEX device ID
Click to expand...
Click to collapse
This fix seems to do the job, but i can't get it to work. Probably because i made a mistake with the usage of su and shell etc.
So i tried to fix it another way and this is how i did it (similar to the other fix):
1) With RootExplorer (or similar) navigate to: /dbdata/databases/com.android.providers.settings/
2) Make a backup of the file (by copying it)
3) Change the permissions of the file (using RootExplorer) ,so that it can be moved/sent to your pc using Dropbox,Gmail,Bluetooth etc. In this example i have moved it to my c:/ folder on windows.
4) When the file is on your pc. Run windows command (cmd) and navigate (using cd) to your /android/tools folder.
5) Execute: 'sqlite3 c:/settings.db
6) Now type in (after sqlite>): insert into secure (’name’, ‘value’ ) values (’android_id’,'device_id_goes_here’);
Note: 'device_id_goes_here' is a random (so you can choose whatever you want) 16 digit number.
7) Type: .exit and close the cmd box.
8) copy the settings.db file back to your phone and move it back to /dbdata/databases/com.android.providers.settings/
Choose yes when overwrite prompt pops up.
9) Reboot your device
10) Register your device using the 'Fast web installer' app on your phone.
11) DONE! You're ok again to install apps OTA using the appbrain market!
Click to expand...
Click to collapse
Note, if you don't know how to do step 4-7, read some articles about how to set up and use adb (since that also contains the sqlite3 tool)
I hope this helps for people having problems with this.
Hanness said:
Hi, after the update to froyo (in my case JP6) i found out the appbrain fast web installer wasn't working anymore. After some reading, it seems that the android_id (which this app uses) is set to a fixed number during the froyo update. This means the app cannot find a unique android_id to send the 'install instruction' to.
Source: http://forum.xda-developers.com/showthread.php?p=8604909#post86049
This fix seems to do the job, but i can't get it to work. Probably because i made a mistake with the usage of su and shell etc.
So i tried to fix it another way and this is how i did it (similar to the other fix):
Note, if you don't know how to do step 4-7, read some articles about how to set up and use adb (since that also contains the sqlite3 tool)
I hope this helps for people having problems with this.
Click to expand...
Click to collapse
Looks good. One question, how do you find out what your original device ID is? I have a UK unbranded GT-I9000... what's the ANDROID ID for that?
Ah, you just make one up. I used SQLite Editor to just edit the file, made up my own number and rebooted. Works fine now. A bit simpler than your suggestion above.
tokyogtr said:
Ah, you just make one up. I used SQLite Editor to just edit the file, made up my own number and rebooted. Works fine now. A bit simpler than your suggestion above.
Click to expand...
Click to collapse
That should indeed be easier
In the post I refer to in the captivate forum, there is mentioned an app to find out your android_id. But to know your original id, you would first have to reflash to an older firmware where the id is not touched. But it is true, you can just make up your own 16digit number. Only some games with online highscores fixed to the id instead of an account could benefit to know your old id, I think.
Worked for me!
Sent from my GT-I9000 using Tapatalk
hum
shud be easier to just download "Android ID Changer" from market after installing sqlite3. does the same trick.. but more user-friendly for people not so comfortable to use adb shell.
trasig said:
shud be easier to just download "Android ID Changer" from market after installing sqlite3. does the same trick.. but more user-friendly for people not so comfortable to use adb shell.
Click to expand...
Click to collapse
Hmm maybe Iḿ retarded, but how do I install sqlite3 to my phone?
No clue what he meant with installing sqlite3, I just downloaded the said Android ID Changer, made up and applied an ID and now Fast Web Installer works just fine.
I don't know if it is just coincidence or due to this, but before that I had tons of "download unsuccessfull" errors with the Market. Downloads failed nine out of ten times. Now, with changed ID, it works flawlessly again! My phone runs on JP6 Voodoo Doctor Edition 2.1.
Thanks for this advice!
I just installed the ID changer, entered a new code and rebooted, but the ID had not changed..
first time i tried it i got an "error editing databases".... do you have to change permissions to the folder/directory for the settings.db?
ukdtweak said:
I just installed the ID changer, entered a new code and rebooted, but the ID had not changed..
first time i tried it i got an "error editing databases".... do you have to change permissions to the folder/directory for the settings.db?
Click to expand...
Click to collapse
same problem here....
The only thing remotely related I could think of is that I had my system folder mounted as R/W with SGS Toolbox. But does that affect dbdata?
Check SGS Toolbox on mine and system was already mounted as RW...
I have tried changing the permissions with Root Explorer, to dbdata etc. but after rebooting, they are back as they were?
Beats me... but I can now confirm that the "download unsuccessfull" errors are back in place. It was just a coincidence after all, and shows that the blame is on Google, not any specific ROM or mod.
Fast Web Installer still worked though, even made it past the "unsuccessfull" barrier.
Wonderful fix!
Hanness, have you considered reporting this to Samsung? I think having the proper Android ID set and retained during firmware updates is quite important.
miki4242 said:
Wonderful fix!
Hanness, have you considered reporting this to Samsung? I think having the proper Android ID set and retained during firmware updates is quite important.
Click to expand...
Click to collapse
According to this, this may be due to ro.serialno not being set in build.prop
trasig said:
shud be easier to just download "Android ID Changer" from market after installing sqlite3. does the same trick.. but more user-friendly for people not so comfortable to use adb shell.
Click to expand...
Click to collapse
Android ID Changer did the trick for me . (I have not done anything with sqlite3.)
I used http://www.dbsoftlab.com/database-editors/database-browser/overview.html to edit settings.db as explained.
Works like a charm. Downloads & Updates are flying in!
Edit: After few downloads it stucks again, I deleted Market data. Works again. Bugs everywhere ...
Hanness said:
Hi, after the update to froyo (in my case JP6) i found out the appbrain fast web installer wasn't working anymore. After some reading, it seems that the android_id (which this app uses) is set to a fixed number during the froyo update. This means the app cannot find a unique android_id to send the 'install instruction' to.
Source: http://forum.xda-developers.com/showthread.php?p=8604909#post86049
This fix seems to do the job, but i can't get it to work. Probably because i made a mistake with the usage of su and shell etc.
So i tried to fix it another way and this is how i did it (similar to the other fix):
Note, if you don't know how to do step 4-7, read some articles about how to set up and use adb (since that also contains the sqlite3 tool)
I hope this helps for people having problems with this.
Click to expand...
Click to collapse
Thank you very much...I followed your instructions exactly and managed to fix it. Android ID changer didn't work for me.
sadly appbrain is blocked in China for whatever reason I don't know... so that won't work for me hehe
stassano said:
sadly appbrain is blocked in China for whatever reason I don't know... so that won't work for me hehe
Click to expand...
Click to collapse
oh well, the great firewall of china at work again.
OLD VERSION
NEW VERSION FOLLOW LINK BELOW
CLICK HERE for Updated Post and Application
==========OLD INFO BELOW THIS LINE===========================
Im leaving the old info here for reference and in case anyone still wishes to continue to use this version. The new version is beter in every way IMO. But the choice is yours.
===============================
FLASHEX and FLASHMOD script INFO 0.98beta
===============================
This is a new set of scripts I created, Flashex.sh and Flashmod.sh. They take advantage of the same old AND to WIN hex edit. The big difference is Flashex.sh will hex edit the file right on any android device that has busybox installed. I have only been able to test it on my 1 Android device the A100 works perfectly on it. I'm curious if anyone can run it on current rooted ICS since it only requires WRITE to /data, I'm fairly sure it will work just fine, and/or on other devices with flash and a decent enough CPU and memory to watch hulu.
What they do
==========
Flashex.sh will look at /data/data/com.adobe.flashplayer/lib/libflashplayer.so, find its version string, then make a copy of the file and hex edit the copy. It DOESNT require root since it only needs READ access. Flashex.sh only needs to be run once unless you delete the WIN_libflashplayer.so or your Flash Player gets an update.
Flashmod.sh will look for the WIN_libflashplayer.so(hex edited file), check for write access, then copy the file to /data/data/com.adobe.flashplayer/lib/libflashplayer.so.
They can both be run from Terminal, Script Manager, etc. I suggest Setting Flashmod.sh up with a Desktop Icon via Script Manager for an easy way to apply the fix before watching Hulu.
How To Install and Use
======================
1) Create a directory you want to run the script from. I suggest
/mnt/external_sd/FLASHEX but it can be anyplace as long as you
can find, and run the scripts.
2) Download FLASHEX_098b.tar.gz and place it inside the folder
3) cd into the directory
cd /pathtofolder/foldername (note: typically /mnt/external_sd/FLASHEX or /mnt/sdcard/FLASHEX)
4) run the following commands to extract Flashex.sh and Flashmod.sh
gzip -d FLASHEX_098b.tar.gz
tar -xvf FLASHEX_098b.tar.gz
5) Now "sh Flashex.sh" this will READ the original flash file, and hex edit the file.
it will place the edited file inside the default(same folder as script) directory.
The Edited file is named "WIN_libflashplayer.so"
6) Now "su" because Flashmod.sh will need root access to overwrite
/data/data/com.adobe.flashplayer/lib/libflashplayer.so with the edited version
7) Now "sh Flashmod.sh" This script will find WIN_libflashplayer.so and copy it to
/data/data/com.adobe.flashplayer/lib/libflashplayer.so
Note: You will also see "ORIG_libflashplayer.so" that is a backup of the original
that is made before the change. It can be used to restore in the even someone
edits and decides they want to go back, or in case of an unforseen event.
8) Now just make sure your web browser is set to view as "Desktop" and enjoy watching hulu.
That's about it. IF you have run Flashex.sh once you
DON'T need to run it again UNLESS you get a Flash
update, or you delete the WIN_libflashplayer.so.
If your Adobe Flash updates on you just rerun Flashex.sh
to edit the new file. Once edited it will store a copy of
the modded file the scripts home dir.
Then use as Flashmod.sh as normal.
THANKS TO:
===========
All the other people who make GNU open source
programs, the people who figured out how to get hulu to work
by hex editing the libflashplayer.so, and all the great folks
at XDA Developers for providing so much good information,
and for all the hard work to figure out root methods,
and all the other amazing stuff that goes on.
=========================================================
TESTING INFO FOR OTHER DEVICES
This should work on most any android flash in theory but that's UN-tested.
I wrote it to try and look for the same expected pattern for 10.x 11.x and even
12.x(taking a guess). It HAS been tested with Flash 11.x and works
great. It's written in such a way it should be safe to test. Either the Flashex.sh script will give you a properly edited libflashplayer.so or it should be able to tell you it couldnt edit the file. If you end up with an edited file it should be safe to copy over and should work. If you find it DOESN'T work with your version of flash you may contact me and make the .so file available and I will see if I can add support. Eventually I would like this to be universal and easy to use.
ALSO PLEASE!
If it does work for you, especially on other devices or other flash versions please post and let me know. It will help me improve the set of scripts.
Got it working on ICS took me abit of reading on google on how to cd to the directory but alls well that ends well!
/system/bin/sh: cd: /FLASHEX - No such file or directory
1|[email protected]:/mnt/sdcard $ tar -xvf FLASHEX_098b.tar.gz
tar: can't open 'FLASHEX_098b.tar.gz': No such file or directory
1|[email protected]:/mnt/sdcard $ tar -xvf FLASHEX_098b.tar.gz
Flashex.sh
Flashmod.sh
README.txt
[email protected]:/mnt/sdcard $ sh Flashex.sh
======================================================================
Cannot locate /mnt/external_sd/FLASHEX(configured path for Flashex.sh)
The script will attempt to adapt...
Flashex.sh is running from /mnt/sdcard
Flashex.sh has write access to /mnt/sdcard
attempting to use /mnt/sdcard instead...
To avoid this message in the future read the directions better
======================================================================
Detected READ access for /data/data/com.adobe.flashplayer/lib/libflashplayer.so
USING: /data/data/com.adobe.flashplayer/lib/libflashplayer.so
Created /mnt/sdcard/cache Sucessfully...
Found /data/data/com.adobe.flashplayer/lib/libflashplayer.so...Checking
grep: 1[0-2],[0-9]*: No such file or directory
grep: 1[0-2],[0-9]*: No such file or directory
ERROR: Can't figure out what version of Flash this is so it cant be edited.
Currently only tested with v11.1.111.x. It should work with about any version.
I can't test what I dont have. If you send a copy of the libflashplayer.so I will
add it to the Flash versions that are 100% tested and supported.
Contact me(NoSudo) and/or look for updates at forum.xda-developers.com
1|[email protected]:/mnt/sdcard $ su Flashmod.sh
[email protected]:/mnt/sdcard # sh Flashmod.sh
======================================================================
Cannot locate /mnt/external_sd/FLASHEX(configured path for Flashmod.sh)
The script will attempt to adapt...
Flashmod.sh is running from /mnt/sdcard
Flashmod.sh has write access to /mnt/sdcard
attempting to use /mnt/sdcard instead...
To avoid this message in the future read the directions better
======================================================================
ERROR: /mnt/sdcard/WIN_libflashplayer.so NOT FOUND
1|[email protected]:/mnt/sdcard #
Here is my outcome from the script. Searched files and could not find flash hex version.
Running Acer a100 ICS rooted
igwtapc said:
[email protected]:/mnt/sdcard $ sh Flashex.sh
===============================================
Cannot locate /mnt/external_sd/FLASHEX(configured path for Flashex.sh)
The script will attempt to adapt...
Flashex.sh is running from /mnt/sdcard
Flashex.sh has write access to /mnt/sdcard
attempting to use /mnt/sdcard instead...
To avoid this message in the future read the directions better
===============================================
Click to expand...
Click to collapse
You need to create a folder for the script still. It looks like you currently have the scripts located in /mnt/sdcard. You would need to make a folder called FLASHEX still inside /mnt/sdcard/ or /mnt/external_sd/ so the full path would be /mnt/external_sd/FLASHEX or /mnt/sdcard/FLASHEX. If you change the folder name you "may" have to edit the script. I will be releaseing an update soon and I will include a little more testing of that. It was an afterthought and was just added to help make it easier for people. Anyway try this...
First make a folder.
"mkdir /mnt/external_sd/FLASHEX"
Now move the 2 scripts into that folder from the current location
"mv /mnt/sdcard/Flashex.sh /mnt/external_sd/FLASHEX/Flashex.sh"
"mv /mnt/sdcard/Flashex.sh /mnt/external_sd/FLASHEX/Flashmod.sh"
Now you can run them
This will run the script once moved
"sh /mnt/external_sd/FLASHEX/Flashex.sh"
Now you should have WIN_libflashplayer.so inside the FLASHEX folder.
Next run
"su"
"sh /mnt/external_sd/FLASHEX/Flashmod.sh"
I suggest running this via script manager once you decide you like using it. I have mine setup to run at boot. Just be sure and turn off auto update for adobe flashplayer if you run Flashmod.sh at boot. The next version Im thinking about adding the ability to have it run the hex edit each time it detects an updated version. We will see. My main concern with that would be the amount of time the hex edit takes.
Anyway that should get you going on the Hulu. Remember to set your browser to "Desktop" too or it still wont work. I suggest Dolphin HD for a browser.
Let me know if you have any more issues and check back for an updated version in the next few days.
by igwtapc
Created /mnt/sdcard/cache Sucessfully...
Found /data/data/com.adobe.flashplayer/lib/libflashplayer.so...Checking
grep: 1[0-2],[0-9]*: No such file or directory
grep: 1[0-2],[0-9]*: No such file or directory
ERROR: Can't figure out what version of Flash this is so it cant be edited.
Currently only tested with v11.1.111.x. It should work with about any version.
I can't test what I dont have. If you send a copy of the libflashplayer.so I will
add it to the Flash versions that are 100% tested and supported.
Click to expand...
Click to collapse
After looking at your output a little closer. I noticed it did seem to create a cache folder inside your /mnt/sdcard. Can you confirm the existence of a cache folder at /mnt/sdcard/cache? Also did you edit the script or did you change the type of quotes around the strings used by grep? I'm going to do some testing and it would speed things up if I knew those two things.
The above(previous post) directions still apply and should work. However if the script has been edited even just a change from " to ' could break it so be careful.
If your not used to scripting I would not advise you change anything other then the HEXHOME="/mnt/external_sd/FLASHEX" inside the script, and don't change anything left of the = or change the " type. Only edit the directory path/name.
I just tried this and got the same error as above. I did notice that it created the cache folder in the same directory though. It just can't determined what the library file is.
Current flash player version is: 11.1.115.7 March 5, 2012
Edit: Here is the libflashplayer.so file:
http://dl.dropbox.com/u/24495685/libflashplayer.so
Sent from my A500 using XDA Premium HD app
does this works in ICS?
Update:
Yes it does.
But,,, the script gave me an error about "uncommon string' on line 228,, any ways what I did was just to open adb and run all commands in the script one by one. I copy the edited lib.so to the flash folder , restarted, watching hulu now.
Thanks for this.
Cool. Not sure what the error was(without a way to recreate it) but, I have a new version coming out in a few days that will work better. I will post it over in the app section so I can get more feedback posts and just link it back to here.
It's a single script solution that will do the hex edit when it detects an upgrade or downgrade of Flash to update the edited copy and write it over each boot. That way people don't have to worry about updates and such.
If I can find the time I'm going to upgrade to ICS this weekend. I haven't had time to do much the last few weeks and need my tablet so I have been waiting. I need to read up on the latest. It looks like we even have CWM now OMG! Nice work!
Once I'm running ICS I can test on it and make sure it's working on both.
Joecascio2000 said:
I just tried this and got the same error as above. I did notice that it created the cache folder in the same directory though. It just can't determined what the library file is.
Current flash player version is: 11.1.115.7 March 5, 2012
Edit: Here is the libflashplayer.so file:
http://dl.dropbox.com/u/24495685/libflashplayer.so
Sent from my A500 using XDA Premium HD app
Click to expand...
Click to collapse
That's very odd. My current version is 11.1.111.7. I will take a look at it in a few. For me so far I have seen 11.1.111.5-11.1.111.7 and all worked fine on my acer. I'm posting a new version that may already address the issue you are having. I will do some tests with the file you attached to see this evening.
Also might not be a bad idea to confirm the path for the libflashplayer.so is the same as the script is expecting. I havnt added anything in to search the system for alternate flash locations yet. It can be configured at the top of the script though.
I have also found some people are using an older BusyBox that seems to be mission a feature. Im using busybox v1.19.3 latest is 1.19.4 the installer I use is the one from JRummy. It's not a bad idea to confirm which Busybox you have if you run into issues with odd errors.
Looking at this right now. I will need to modify the pattern a little to make it work on this lib version. Thanks for bringing it to my attention. I'll PM you when I update with support for that version.
EDIT: New improved version here
Joecascio2000 said:
I just tried this and got the same error as above. I did notice that it created the cache folder in the same directory though. It just can't determined what the library file is.
Current flash player version is: 11.1.115.7 March 5, 2012
Edit: Here is the libflashplayer.so file:
http://dl.dropbox.com/u/24495685/libflashplayer.so
Sent from my A500 using XDA Premium HD app
Click to expand...
Click to collapse
COMPLETELY REVAMPED
Currently this is checking updater-script first, I'm currently working on it for the Aroma Config; however, this config checks the updater script for the time being.
REQUIREMENTS
You need python 2.6+ installed if you're on windows.
Python should already be installed if you're on Mac
Place your updater script in the marked location, and after running the script an error log will be generated (give it some time), printing the lines that have errors.
Re: [DEV TOOL] Aroma Config checker 0.0.1
You rock bro
Sent from my LG-LS970 using XDA Premium HD app
what does this do? i googled it but couldnt find anything
Re: [DEV TOOL] Aroma Config checker 0.0.1
javskies said:
what does this do? i googled it but couldnt find anything
Click to expand...
Click to collapse
This is a developer tool that parse through an aroma config and outputs syntax errors.
It'll also eventually work for an updated script.
Its only if you're a developer would you find this tool useful. It just saves a step in testing.
Currently this uses regex to find specific patterns; however, it'll eventually evolve to an emulator of sorts that will compare the update binary to the aroma config file and output syntax errors in real time with better error handling.
Sent from my LG-LS970 using xda premium
AdriVelazquez said:
This is a developer tool that parse through an aroma config and outputs syntax errors.
It'll also eventually work for an updated script.
Its only if you're a developer would you find this tool useful. It just saves a step in testing.
Currently this uses regex to find specific patterns; however, it'll eventually evolve to an emulator of sorts that will compare the update binary to the aroma config file and output syntax errors in real time with better error handling.
Sent from my LG-LS970 using xda premium
Click to expand...
Click to collapse
no wonder i didnt understand a word of the op LOL
Re: [DEV TOOL] Aroma Config checker 0.0.1
javskies said:
no wonder i didnt understand a word of the op LOL
Click to expand...
Click to collapse
Lol
Sent from my LG-LS970 using xda premium
sorry to necro this thread but i am having issues, when i run the checker it goes through everything but tells me it can not find the aroma-config file.
i put it in the directory it says it can not find it in and still says it cant find it, i have run command prompt as admin, java and paths are setup correctly.
any idea? I am getting sick of having to copy my installer every time i change code to debug, its a pain in the ass.
thanks
Got it to output to screen by changing this:
Code:
br = new BufferedReader(new FileReader("//Users//" + username + "//Desktop//aromacheck//aroma-config"));
To this:
Code:
br = new BufferedReader(new FileReader("/Users/" + username + "/Desktop/aromacheck/aroma-config"));
I'll rewrite the script for you, I'm going to switch the program to python, which has far less overhead. Also, it'll be easier to recreate the methods within the installer to verify method names.
Sent from my LG-LS970 using xda premium
AdriVelazquez said:
I'll rewrite the script for you, I'm going to switch the program to python, which has far less overhead. Also, it'll be easier to recreate the methods within the installer to verify method names.
Sent from my LG-LS970 using xda premium
Click to expand...
Click to collapse
Not meaning to interrupt or get off topic here, but AdriVelazquez, I sent ya a pm sir, was hoping for some input from ya
Sent from my LG-E970 using xda premium
C13v3r0n3 said:
sorry to necro this thread but i am having issues, when i run the checker it goes through everything but tells me it can not find the aroma-config file.
i put it in the directory it says it can not find it in and still says it cant find it, i have run command prompt as admin, java and paths are setup correctly.
any idea? I am getting sick of having to copy my installer every time i change code to debug, its a pain in the ass.
thanks
Got it to output to screen by changing this:
Code:
br = new BufferedReader(new FileReader("//Users//" + username + "//Desktop//aromacheck//aroma-config"));
To this:
Code:
br = new BufferedReader(new FileReader("/Users/" + username + "/Desktop/aromacheck/aroma-config"));
Click to expand...
Click to collapse
I uploaded the new script that reads the updater, I'll slowly bring the aroma also.
What does it mean by; "didn't verify set_perm coming soon"; ?