[MOD][GUIDE]Porting PlatLogo Activity from S5 resources - Galaxy S II Themes and Apps

Hi to all! In this guide I explain how to port the kitkat platlogo activity from S5 resource to S2.
Requirements:
- use apktool, backsmali and smali tool;
- notepad++;
- framework-res.apk;
- framework.jar and framework2.jar;
- patience and brain.
1)First decompile framework-res.apk with apktool and download attach file.
Extract the drawable-nodpi folder from the archive and insert and replace the platlogo.png in the res/drawable-nodpi folder of the framework-res.
Recompile and sign the framework-res.
For sign the framework insert in the build/apk folder the original meta-inf folder and AndroidManifest.xml from the original framework-res.apk.
2)Then, decompile framework.jar with backsmali tool (1.bat)
Extract the smali folder from the archive and insert the file in com/android/internal/app.
After insert the file, open the PlatlogoActivity and search this:
Code:
const v0, [COLOR="Red"]0x10805b8[/COLOR]
Open the public.xml from res/values folder of the framework-res and search:
Code:
type="drawable" name="platlogo"
Now replace the red line with the public id of platlogo image.
At the end recompile the framework.jar with smali tool (2.bat)
3)Decompile framework2.jar with backsmali tool (1.bat)
Go to android/widget/ and open FrameLayout$LayoutParams.smali
Insert this method at the end of the file.
Code:
.method public constructor <init>(Landroid/widget/FrameLayout$LayoutParams;)V
.locals 1
.parameter "source"
.prologue
.line 667
invoke-direct {p0, p1}, Landroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$MarginLayoutParams;)V
.line 609
const/4 v0, -0x1
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 669
iget v0, p1, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 670
return-void
.end method
Now recompile with smali tool (2.bat).
Insert the framework-res.apk, framework.jar and framework2.jar in the installer that I attached. Insert in system/framework folder.
That is all

Thanks for this guide and for all the other.

Awesome Guide.
THANKS AND RATED 5*

Thanks for this guide

@gerryS2,
Hey mate, thanks to your guide I finally got what I wanted. But could you please tell me how to replace replace the "J" with a "K".. thanks in advance

Sami Kabir said:
@gerryS2,
Hey mate, thanks to your guide I finally got what I wanted. But could you please tell me how to replace replace the "J" with a "K".. thanks in advance
Click to expand...
Click to collapse
maybe this thread can help you
http://forum.xda-developers.com/showthread.php?t=2580249
thanks

Troubadour666 said:
maybe this thread can help you
http://forum.xda-developers.com/showthread.php?t=2580249
thanks
Click to expand...
Click to collapse
Thanks mate, but I am already aware of that thread. I would have continued with that thread but instead I went with this one because it didn't require any additional app to be installed
I will go through the smali codes once more to find this "J" and replace it with a "K"...

Sami Kabir said:
Thanks mate, but I am already aware of that thread. I would have continued with that thread but instead I went with this one because it didn't require any additional app to be installed
I will go through the smali codes once more to find this "J" and replace it with a "K"...
Click to expand...
Click to collapse
post 2 of the thread :
const-string v0, "K"

Troubadour666 said:
post 2 of the thread :
const-string v0, "K"
Click to expand...
Click to collapse
My PlatLogoActivity.smali doesn't contain any const-string v0, "K".. the closest thing I found is const-string v1, "Android "

in AICP rom, all things are in framework2.jar .

gerryS2 said:
Hi to all! In this guide I explain how to port the kitkat platlogo activity from S5 resource to S2.
Requirements:
- use apktool, backsmali and smali tool;
- notepad++;
- framework-res.apk;
- framework.jar and framework2.jar;
- patience and brain.
1)First decompile framework-res.apk with apktool and download attach file.
Extract the drawable-nodpi folder from the archive and insert and replace the platlogo.png in the res/drawable-nodpi folder of the framework-res.
Recompile and sign the framework-res.
For sign the framework insert in the build/apk folder the original meta-inf folder and AndroidManifest.xml from the original framework-res.apk.
2)Then, decompile framework.jar with backsmali tool (1.bat)
Extract the smali folder from the archive and insert the file in com/android/internal/app.
After insert the file, open the PlatlogoActivity and search this:
Code:
const v0, [COLOR="Red"]0x10805b8[/COLOR]
Open the public.xml from res/values folder of the framework-res and search:
Code:
type="drawable" name="platlogo"
Now replace the red line with the public id of platlogo image.
At the end recompile the framework.jar with smali tool (2.bat)
3)Decompile framework2.jar with backsmali tool (1.bat)
Go to android/widget/ and open FrameLayout$LayoutParams.smali
Insert this method at the end of the file.
Code:
.method public constructor <init>(Landroid/widget/FrameLayout$LayoutParams;)V
.locals 1
.parameter "source"
.prologue
.line 667
invoke-direct {p0, p1}, Landroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$MarginLayoutParams;)V
.line 609
const/4 v0, -0x1
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 669
iget v0, p1, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 670
return-void
.end method
Now recompile with smali tool (2.bat).
Insert the framework-res.apk, framework.jar and framework2.jar in the installer that I attached. Insert in system/framework folder.
That is all
Click to expand...
Click to collapse
will it work on galaxy s advance with stock 4.1.2

psycho_boy52 said:
will it work on galaxy s advance with stock 4.1.2
Click to expand...
Click to collapse
Yes it will. I did it

gerryS2 said:
Hi to all! In this guide I explain how to port the kitkat platlogo activity from S5 resource to S2.
Requirements:
- use apktool, backsmali and smali tool;
- notepad++;
- framework-res.apk;
- framework.jar and framework2.jar;
- patience and brain.
1)First decompile framework-res.apk with apktool and download attach file.
Extract the drawable-nodpi folder from the archive and insert and replace the platlogo.png in the res/drawable-nodpi folder of the framework-res.
Recompile and sign the framework-res.
For sign the framework insert in the build/apk folder the original meta-inf folder and AndroidManifest.xml from the original framework-res.apk.
2)Then, decompile framework.jar with backsmali tool (1.bat)
Extract the smali folder from the archive and insert the file in com/android/internal/app.
After insert the file, open the PlatlogoActivity and search this:
Code:
const v0, [COLOR="Red"]0x10805b8[/COLOR]
Open the public.xml from res/values folder of the framework-res and search:
Code:
type="drawable" name="platlogo"
Now replace the red line with the public id of platlogo image.
At the end recompile the framework.jar with smali tool (2.bat)
3)Decompile framework2.jar with backsmali tool (1.bat)
Go to android/widget/ and open FrameLayout$LayoutParams.smali
Insert this method at the end of the file.
Code:
.method public constructor <init>(Landroid/widget/FrameLayout$LayoutParams;)V
.locals 1
.parameter "source"
.prologue
.line 667
invoke-direct {p0, p1}, Landroid/view/ViewGroup$MarginLayoutParams;-><init>(Landroid/view/ViewGroup$MarginLayoutParams;)V
.line 609
const/4 v0, -0x1
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 669
iget v0, p1, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
iput v0, p0, Landroid/widget/FrameLayout$LayoutParams;->gravity:I
.line 670
return-void
.end method
Now recompile with smali tool (2.bat).
Insert the framework-res.apk, framework.jar and framework2.jar in the installer that I attached. Insert in system/framework folder.
That is all
Click to expand...
Click to collapse
Sami Kabir said:
Yes it will. I did it
Click to expand...
Click to collapse
bro can u plz upload those framework.jar n freamework2.jar cz those baksmali n smali tool r not workin on my pc....

psycho_boy52 said:
bro can u plz upload those framework.jar n framework2.jar cz those baksmali n smali tool r not workin on my pc....
Click to expand...
Click to collapse
Okay. But it might contain some other mods because they are from my ROM.. The zip is not flashable, extract it and place the files to their respective location.
Link: https://www.mediafire.com/?q5e9jnfvuapu73j
PS: I have a feeling that this might not work for you, if it doesn't then please tell me asap

Sami Kabir said:
Okay. But it might contain some other mods because they are from my ROM.. The zip is not flashable, extract it and place the files to their respective location.
Link: https://www.mediafire.com/?q5e9jnfvuapu73j
PS: I have a feeling that this might not work for you, if it doesn't then please tell me asap
Click to expand...
Click to collapse
thnx bro lets try!!!... btw dont u use stock jb on ur i9070???

psycho_boy52 said:
thnx bro lets try!!!... btw dont u use stock jb on ur i9070???
Click to expand...
Click to collapse
I use my ROM. Which is based on stock firmware

Sami Kabir said:
Okay. But it might contain some other mods because they are from my ROM.. The zip is not flashable, extract it and place the files to their respective location.
Link: https://www.mediafire.com/?q5e9jnfvuapu73j
PS: I have a feeling that this might not work for you, if it doesn't then please tell me asap
Click to expand...
Click to collapse
wow!!!.... its working bt cnt we write jb instade of j

psycho_boy52 said:
wow!!!.... its working bt cnt we write jb instade of j
Click to expand...
Click to collapse
You should ask that to the creator of this thread, not me (because even I don't know how to change this letter to some other letter)

Sami Kabir said:
You should ask that to the creator of this thread, not me (because even I don't know how to change this letter to some other letter)
Click to expand...
Click to collapse
anyways !!! thnx a lot bro for helping me

bt buddy dere is a problm wid dis mod... its not cumming lyk d 2nd scrnsht.... how to fix it

Related

[HOW TO] Extended Power Menu with no header (reboot / download / recovery)

[HOW TO] Extended Power Menu (reboot / download / recovery) with no header
This HOW TO is rewritten from a French tutorial (HERE) itself rewritten from a XDA tutorial (HERE, and modified using this other one : HERE
Thanks to :
Okarin
untermensch
PaoloM70
Click to expand...
Click to collapse
warnings :
- This tutorial is for people who know what they will do, a mistake can fit your phone unusable so ...
- A modification of system files is always a delicate operation, pay attention and do not rush
Click to expand...
Click to collapse
Prerequisites :
First and foremost, you must master the decompilation / recompilation of APK and JAR using APK_Manager and smali/baksmali.
Click to expand...
Click to collapse
Mod the power menu :
Here is the way to add the options "Reboot", "Recovery" and "Download" to the Power menu (long press the power button)
For this part, we will work on 2 files:
framework res.apk
android.policy.jar
Click to expand...
Click to collapse
You can decompile the first with APK Manager, and the second with baksmali.
1/ framework-res.apk :
Extract it with APK_Manager (extracted in /project folder)
a/ Then, before going any further, you will have to find three new .PNG images to be displayed in the power menu, and name them :
"ic_lock_reboot.png" for reboot menu
"ic_lock_recovery.png" to enter recovery
"ic_lock_download.png" for download Mode
Click to expand...
Click to collapse
Place these 3 images in the : APK_Manager/project/framework-res.apk/res/drawable-hdpi
where you will find the other pictures already in the menu concerned.
It is easier for beginners to add customised icons (like for power off, silent or plane modes icons )after recompilation, using 7zip for example. .
b/ With NotePad + +, edit the file " res/values/strings.xml "
Go to the end of the file, and add before the last line "</resources>", the three lines:
Code:
<string name="reboot_recovery">Recovery</string>
<string name="reboot_download">Download</string>
<string name="reboot">Reboot</string>
This should give you something like this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
c/ Save your file.
d/ Now you can recompile the file "framework-res.apk" with APK Manager.
Remember that this is an APK system and delete the "keep/resources.arsc", since we have modified an XML file.
You will have a your moded apk here : "place-apk-here-for-modding/unsignedframework-res.apk"
Warning: You should not have errors when you re-compil. don't forget to add 3 new icons;
e/ using APK-Manager, decompil "place-apk-here-for-modding/unsignedframework-res.apk".
*Go to res/values/public.xml and edit with Notepad ++
*public.xml is auto-generated from others modifications during APK_MANAGER re-compilation. 6 new lines have been added, with 6 new Hex numbers. You will need these numbers later ...
Look for :
Code:
<public type="string" name="reboot" id="[B]0x01040488[/B]" />
<public type="string" name="reboot_recovery" id="[B]0x01040489[/B]" />
<public type="string" name="reboot_download" id="[B]0x0104048a[/B]" />
and for :
Code:
<public type="drawable" name="ic_lock_reboot" id="[B]0x010803d2[/B]" />
<public type="drawable" name="ic_lock_recovery" id="[B]0x010803d3[/B]" />
<public type="drawable" name="ic_lock_download" id="[B]0x010803d4[/B]" />
f/ Now you just have to rename "place-apk-here-for-modding/unsignedframework-res.apk" to "framework-res.apk" and voila!
Edit : never sign a system File using APK_Manager.
Here is the first part ended.
A tip, try this file on your phone, if it restarts fine, then the mod is correct, otherwise you can start over
It is important to test step by step, because it lets you know exactly from witch file comes the error.
2/ Now, we attack the second file "android.policy.jar".
Once decompiled with baksmal, edit the "out/com/android/internal/policy/impl/GlobalActions.smali."
Caution: Do not confuse it with the file "GlobalActions$Action.Smali"
a/ Find the line ".method private createDialog()Landroid/app/AlertDialog;"
then a few lines below, replace "const/4 v9, 0x4" with "const/4 v9, 0x7".
This line indicates the number of menu entries of extinction, we move from 4 to 7 (3 mor entries). You should have this after the changes made:
b/ Then find the line "
Code:
invoke-static {v0}, Lcom/google/android/collect/Lists;->newArrayList([Ljava/lang/Object;)Ljava/util/ArrayList;
" and insert just above:
Code:
const/4 v1, 0x4
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$8;
const v3, 0x10803d2
const v4, 0x1040488
invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$8;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
aput-object v2, v0, v1
const/4 v1, 0x5
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$9;
const v3, 0x10803d3
const v4, 0x1040489
invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$9;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
aput-object v2, v0, v1
const/4 v1, 0x6
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$10;
const v3, 0x10803d4
const v4, 0x104048a
invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$10;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
aput-object v2, v0, v1
You will notice in the code, the previous hex numbers generated. You have to modify the hex numbers quoted with the hex numbers you found in step 2 after decompilation of unsignedframework-res.apk
Warning in this code, the hex numbers have a 0 in less after the "0x" like : 0x1234567... and not 0x011234567 like in string.xml[/COLOR]...
Please not in the code you just added the GlobalActions$8, GlobalActions$9, GlobalActions$10 : you will add files .smali with same name later. If in your firmware GlobalActions$8 is already existing, then modify the "$X" to follow last used number
To help, here's what you should have:
3/ If you want to remove the header of the extended power menu, not having to scroll,
a/ search for ".method private prepareDialog()",
then look a few lines below, you should find "const v4, 0x104014a"
where This hexadecimal digit corresponds to the entry "<public type="string"name="global_actions" id="0x0104014a" /> in the "public.xml" file, which itself refers to the text of the menu in" string.xml " :
b/ find the corresponding hexadecimal number 0xXXXXX to the entry "<string name="config_tether_apndata" />" in the "string.xml" file. This entry has no text.
Now replace in "const v4, 0x104014a" with "const v4, 0xXXXXX," so it will not show anything in the power menu.
Save the file.
c/ Come on, we're almost there ...
Now copy the "out/com/android/internal/policy/impl/GlobalActions$4.Smali" to "out/com/android/internal/policy/impl/GlobalActions$8.Smali".
We choose #4 because it is one that contains the shutdown of the phone. We will rename it 8 because it's 8 in the next free issue ...
Remember this if ever in a future version of the files they are change.
d/ Now open the new file "out/com/android/internal/policy/impl/GlobalActions$8.Smali" and replace in, all occurrences of "\GlobalActions$4" with "\GlobalActions$8"
Then, Replace :
Code:
const/4 v1, 0x1
invoke-static {v0, v1}, Lcom/android/internal/app/ShutdownThread;->shutdown(Landroid/content/Context;Z)V
With :
Code:
const/4 v1, 0x1
const-string v2, "now"
invoke-static {v0, v2, v1}, Lcom/android/internal/app/ShutdownThread;->reboot(Landroid/content/Context;Ljava/lang/String;Z)V
e/ Save the file and copy it to "out/com/android/internal/policy/impl/GlobalActions$9.Smali"
Open it and replace in, all occurrences of "\GlobalActions$8" with "\GlobalActions$9
and
const-string v2, "now" with const-string v2, "recovery"
f/ Save the file and copy it to "out/com/android/internal/policy/impl/GlobalActions$10.Smali"
Open it and replace in, all occurrences of "\GlobalActions$9" with "\GlobalActions$10
and
const-string v2, "recovery" with const-string v2, "download"
Save the file and then ... compile it all!
The result, you will see that I also forgot to replace an icon:
Thanks you! finally someone willing to write a tutorial on this.
great tutorial.
thanx, we all need help sometimes
Excellent. Now for a tutorial on how to get the mobile data toggle in the notification bar and we can all build custom roms.
Sent from my GT-I9100 using Tapatalk
Wow, u really went the whole 9 yards explaining this, thanks, as always grateful for ur sharing....
Seems like you put a lot of time and effort in this post.
Very good and clear instructions on something I wanted to add to my custom rom for a long time. (without just adding some files)
Thank you very much.
No credit for the how to you copied this from?
what a shame
http://forum.xda-developers.com/showthread.php?t=811532
Nice guide. Two things when using apkmanager:
1) Never ever edit the public.xml
2) When Recompiling: Never sign system files. Copy their signature!
Sent from my GT-I9100 using XDA Premium App
designgears said:
No credit for the how to you copied this from?
what a shame
http://forum.xda-developers.com/showthread.php?t=811532
Click to expand...
Click to collapse
as Cognition user i can only agree with "my" developer, that most of the statings above are simply coppied - Ctrl+a--->Ctrl+V ---> well done
_JKay_ said:
Nice guide. Two things when using apkmanager:
1) Never ever edit the public.xml
2) When Recompiling: Never sign system files. Copy their signature!
Sent from my GT-I9100 using XDA Premium App
Click to expand...
Click to collapse
If we don't edit Public.xml, how are going to achieve this? I keep getting errors while recompiling using apkmanager? They sometimes don't even extract the resources.arsc and throw a lot of errors.
I'm working on adding a few options in the settings apk and neither apkmanger nor apktool is letting me decompile settings apk. It always throws errors. I need to decompile to edit a few xml in values which i don't find if i unzip it with 7-zip or winrar! Editing smali files is not a prob for now!
Any solutions?
@ sicopat
All three options call the Shutdown thread and present the "Your phone will shutdown" dialog. How do we change this?
And i also want to add the subtext in all three options in the main options, where are those located?
Ghostbustersin said:
If we don't edit Public.xml, how are going to achieve this? I keep getting errors while recompiling using apkmanager? They sometimes don't even extract the resources.arsc and throw a lot of errors.
I'm working on adding a few options in the settings apk and neither apkmanger nor apktool is letting me decompile settings apk. It always throws errors. I need to decompile to edit a few xml in values which i don't find if i unzip it with 7-zip or winrar! Editing smali files is not a prob for now!
Any solutions?
Click to expand...
Click to collapse
public.xml is auto-generated! Try add a string or a png and compile then decompile again. You will see that the new resources has been added to the public.xml
The ids MUST be unique and increased by one! Its all done in the apktool!
designgears said:
No credit for the how to you copied this from?
what a shame
http://forum.xda-developers.com/showthread.php?t=811532
Click to expand...
Click to collapse
You are totaly right.
I didn't find lines to modify,
I just built a new How To, from a french one I found here : http://www.galaxys-team.fr/viewtopic.php?f=6&t=14562
I believe this french How To took its inspiration from this thread : http://forum.xda-developers.com/showthread.php?t=811532
I didn't found this thread myself, you found it for me.
I finished to write this thread at 1h30 AM and I am going just now correct this mistake ...
Sorry for this
_JKay_ said:
Nice guide. Two things when using apkmanager:
1) Never ever edit the public.xml
2) When Recompiling: Never sign system files. Copy their signature!
Sent from my GT-I9100 using XDA Premium App
Click to expand...
Click to collapse
1/ Why never edit public.xml ?
2/ You are right for that
_JKay_ said:
public.xml is auto-generated! Try add a string or a png and compile then decompile again. You will see that the new resources has been added to the public.xml
The ids MUST be unique and increased by one! Its all done in the apktool!
Click to expand...
Click to collapse
Ok but i never had errors using this How To and so, modifing public.xml.
But I will add your recommandation for people to try this How To, without modifing public.xml.
Thanks
sicopat said:
I insist on it here: only perform additions, never modify the images during the decompilation / recompilation of APK with APK_Manager.
Thanks
Click to expand...
Click to collapse
Why this statement? I'd rather say ONLY edit PNGs when decompiled!
_JKay_ said:
Why this statement? I'd rather say ONLY edit PNGs when decompiled!
Click to expand...
Click to collapse
Cause when using Apk manager, during re-compilation a keep folder is created and if you don't delete every files (and png) you modified in this keep folder, then after recompilation you will have olds .png from the keep folder and not your new png from your project folder.
It is easier to just push your new .png after recompilation.
I am just a noob who want to help a little with my short experience.
I am ready to learn and to optimise my how to
Sent from my GT-I9100 using XDA Premium App
sicopat said:
Cause when using Apk manager, during re-compilation a keep folder is created and if you don't delete every files (and png) you modified in this keep folder, then after recompilation you will have olds .png from the keep folder and not your new png from your project folder.
It is easier to just push your new .png after recompilation.
I am just a noob who want to help a little with my short experience.
I am ready to learn and to optimise my how to
Sent from my GT-I9100 using XDA Premium App
Click to expand...
Click to collapse
Its true you need to delete the files you modify from the keep folder. But you should never try and modify 9patch pngs if they are not decompiled!!
_JKay_ said:
Its true you need to delete the files you modify from the keep folder. But you should never try and modify 9patch pngs if they are not decompiled!!
Click to expand...
Click to collapse
Yes i agree with you.
But in this How to, you don't need to edit 9patch.png
For begginers i think it's easier to push the customised reboot, power off, download mode icons ... after recompilation.
Sent from my GT-I9100 using XDA Premium App
sicopat said:
Yes i agree with you.
But in this How to, you don't need to edit 9patch.png
For begginers i think it's easier to push the customised reboot, power off, download mode icons ... after recompilation.
Sent from my GT-I9100 using XDA Premium App
Click to expand...
Click to collapse
Ok...... But I think this could make beginners believe that this is always the case and how it should always be done. I rather teach them the right way

[MOD] no am/pm on ics status bar for the devs

The rom devs will know what this is ....
did this for skyrocket devs but works for your ics ports as well.
made this thread over here so i can stop getting pms from this side on howtos...
info http://forum.xda-developers.com/showthread.php?t=1591030
Remove AM/PM
1. Decompile SystemUI.apk
2. Goto: /systemui.apk /smali/com/android/systemui/statusbar/policy
3. edit Clock.smali
4. the line you want is typically 36 (its the static constructor)
5. change "const/4 v0, 0x0" to "const/4 v0, 0x2"
6. yup thats right, 1 character edit!
7. save and recompile
Color for Clock (if you havnt already)
1. Decompile SystemUI.apk
2. Goto: /res/values/
3. edit styles.xml
4. the style you want is "<style name="TextAppearance.StatusBar.Clock" parent="@android:style/TextAppearance.StatusBar.Icon">"
5. change "<item name="android:textColor">#ff33b5e5</item>" under this style (this is android blue, change at will)
6. save and recompile
enjoy!!
Will be put to use. Thanks.
theHOTNESS said:
The rom devs will know what this is ....
did this for skyrocket devs but works for your ics ports as well.
made this thread over here so i can stop getting pms from this side on howtos...
info http://forum.xda-developers.com/showthread.php?t=1591030
Remove AM/PM
1. Decompile SystemUI.apk
2. Goto: /systemui.apk /smali/com/android/systemui/statusbar/policy
3. edit Clock.smali
4. the line you want is typically 36 (its the static constructor)
5. change "const/4 v0, 0x0" to "const/4 v0, 0x2"
6. yup thats right, 1 character edit!
7. save and recompile
Color for Clock (if you havnt already)
1. Decompile SystemUI.apk
2. Goto: /res/values/
3. edit styles.xml
4. the style you want is "<style name="TextAppearance.StatusBar.Clock" parent="@android:style/TextAppearance.StatusBar.Icon">"
5. change "<item name="android:textColor">#ff33b5e5</item>" under this style (this is android blue, change at will)
6. save and recompile
enjoy!!
Click to expand...
Click to collapse
Tried it on stock FD10 ICS4.0.3 build for E4GT.
Didn't work unfortunately.
I found 3 instances of const/4 v0, 0x0 and changing any of them or any combination of 2 of them didn't remove AM/PM from status bar clock.
Any ideas or suggestions?
I also am trying this mod and would like to know what are the lines before or after the mod. Just to make sure I am making the changes to the right one since I also see 3 of them... Thanks in Advance
agat63 said:
Tried it on stock FD10 ICS4.0.3 build for E4GT.
Didn't work unfortunately.
I found 3 instances of const/4 v0, 0x0 and changing any of them or any combination of 2 of them didn't remove AM/PM from status bar clock.
Any ideas or suggestions?
Click to expand...
Click to collapse
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
`SBR` said:
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
Click to expand...
Click to collapse
actually I do not see static constructor but public constructor and lines 34-41 show this
Code:
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.parameter "context"
.prologue
.line 72
const/4 v0, 0x0
`SBR` said:
Use notepad++ and go to line 36 and change the value
Sent from my SGH-T989 using Tapatalk 2
Click to expand...
Click to collapse
I'm using notepad++.
There is no instance/value on line 36 in ICS file for E4GT.
First instance is on line 39.
Did try it. No dice.
And as mentioned above did try any combination of 3 instances of that value thru the file. No go.
May be ICS for E4GT is different and we should look somewhere else.
playya said:
actually I do not see static constructor but public constructor and lines 34-41 show this
Code:
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.locals 1
.parameter "context"
.prologue
.line 72
const/4 v0, 0x0
Click to expand...
Click to collapse
agat63 said:
I'm using notepad++.
There is no instance/value on line 36 in ICS file for E4GT.
First instance is on line 39.
Did try it. No dice.
And as mentioned above did try any combination of 3 instances of that value thru the file. No go.
May be ICS for E4GT is different and we should look somewhere else.
Click to expand...
Click to collapse
Hope you're looking into the file in the below path.
SystemUI\smali\com\android\systemui\statusbar\policy\Clock.smali
and search for the below line
Code:
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
above the line
Code:
const/4 v0, 0x0
change the 0 to 2 like below, it will be like this .
Code:
const/4 v0, 0x2
Save it and decompile the systemui.apk
`SBR` said:
Hope you're looking into the file in the below path.
SystemUI\smali\com\android\systemui\statusbar\policy\Clock.smali
and search for the below line
Code:
sput v0, Lcom/android/systemui/statusbar/policy/Clock;->AM_PM_STYLE:I
above the line
Code:
const/4 v0, 0x0
change the 0 to 2 like below, it will be like this .
Code:
const/4 v0, 0x2
Save it and decompile the systemui.apk
Click to expand...
Click to collapse
yea been there and its a no go apparently my Clock.smali is dfferent
playya said:
yea been there and its a no go apparently my Clock.smali is dfferent
Click to expand...
Click to collapse
I confirm that.
There is no such line in Clock.smali in E4GT ICS SystemUI.apk smali file.
There has been a lot of changes in apk, dex and jar files from GB to ICS.
agat63 said:
I confirm that.
There is no such line in Clock.smali in E4GT ICS SystemUI.apk smali file.
There has been a lot of changes in apk, dex and jar files from GB to ICS.
Click to expand...
Click to collapse
shhhhhhoooot I am trying to do it on GB but I looked in ICS as well and did not see it. I looked in services.jar and did not see it.. Believe me I know it should be out there somewhere but other than TSM mods I can not seem to find any tutorials on how to just remove am/pm... If anyone knows how to do this on GB or ICS which may be similiar please let me know. Its for the E4GT
Thx

[GUIDE][GB] how to add ScreenShot EPM

hi guys. i'll tell you how to add Screenshot EPM. for screenies, check attach
first, download this file
https://www.dropbox.com/s/z0owyuwxmjm59dx/bahan.zip
note: DO BACKUP FIRST.
Stuff:
1. android.policy.jar
2. Framework-res.apk
3. Tools to decompile and compile .apk files like apk multitool or baksmali manager for .jar files . you can search it to google
4. brain
5. patient
+FIRST STEP:
1. decompile framework-res.apk
2. extract the files we have downloaded
3. put the ic_clock_screenshoot.png to the drawable-ldpi
4. open strings.xml
5. add this
Code:
<string name="screenshoot">Capture Image</string>
before line
Code:
</resources>
6. save and compile. make sure you don't get any errors when compiling
7. after all finished, decompile again the result was
8. go to public.xml
9. then see the hex code from the image and the strings that we created earlier like this
Code:
<public type="string" name="screenshoot" id="0x0[B]10404d6[/B]" />
<public type="drawable" name="ic_lock_screenshot" id="0x0[B]10804b4[/B]" />
10. the bold text is what we need for next step
+LAST STEP:
1. decompile android.policy.jar
2. put the GlobalActions$12.smali and GlobalActions$12$1.smali to the com\android\internal\policy\impl\here
3. then, open GlobalActions.smali
4. search this line
Code:
new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;
5. above it, there is const /4 v0, 0x3, change to const /4 v0, 0x4
6. then, look at the pict
7. add this line below it
Code:
const/4 v1, 0x3
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$12;
const v3, 0x108xxxx -> ic__lock_screenshoot.png
const v4, 0x104xxxx -> screencapture string
invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$12;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
aput-object v2, v0, v1
8. see on this
9. change const/4 v1, 0x3 to const/4 v1, 0x4
10. save and compile
11. after all steps completed, flash it via CWM
NB:
-i made this guide from original based stockrom DXLF, it will different if you have EPM (data mode, reboot mode, recovery mode, download mode) first. for who have epm first and will add this features, go to HERE
-if you don't understand / get error, report here and i'll help you
Will this work with other devices?
nolinuxnoparty said:
Will this work with other devices?
Click to expand...
Click to collapse
If you focus and understand, it will probably work on other devices
Nice guide, thanks pressed.
For who have epm
this is for you who have EPM (Sound mode, Data mode, Airplane mode, Reboot mode, Recovery mode, Download mode, Power Off). little modification on smali
Tuts:
1. for editing Framework-res.apk, it same as like first post
2. decompile android.policy.jar
3. search
Code:
new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;
4. look above it, if showing const/4 v0, 0x7 ignore it. if not, if showing anything else like const/4 v0, 0x6, change 0x6 to 0x7
5. on this step, you need to editing the download mode line (i think download mode is useless, the features like reboot/restart and doesn't lead to download mode)
6. change the bold to
Code:
const/4 v1, 0x3
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$12;
const v3, 0x108xxxx -> ic_lock_screenshoot.png
const v4, 0x104xxxx -> screenshoot string
invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$12;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
aput-object v2, v0, v1
7. save and compile. make sure you don't get errors
8. flash it via cwm
CharsiBabu said:
Nice guide, thanks pressed.
Click to expand...
Click to collapse
thankyou
Will try it now
Reserved.
jpdesuasido said:
Will try it now
Reserved.
Click to expand...
Click to collapse
good luck bro
ocoot said:
good luck bro
Click to expand...
Click to collapse
Thanks :angel: (2 times pressed )
up
doesnt understand
i have an epm but your smali and my smali differrent?
Just 1 word required to define this Guide. AWESOME
Sent from my GT-S6102 using Xparent BlueTapatalk 2
NgamTeroxx said:
i have an epm but your smali and my smali differrent?
Click to expand...
Click to collapse
i think you need a little bit more experience to learning smali bro
samsoul16 said:
Just 1 word required to define this Guide. AWESOME
Sent from my GT-S6102 using Xparent BlueTapatalk 2
Click to expand...
Click to collapse
thanks sirrrrr
I can not find it or anything like it, you can help me put it in another location not
Code:
new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;
zangge34 said:
I can not find it or anything like it, you can help me put it in another location not
Code:
new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;
Click to expand...
Click to collapse
you can see on the screenies sir. may on other phone/rom it's little bit different http://forum.xda-developers.com/showpost.php?p=43256383&postcount=2
I want you to help me review my file GlobalActions.smali.
If you help me I will be very happy and thank you.
mediafire.com/download/3wzk47a10w93cv9/GlobalActions.smali[/url]
thanks for the info
Good Job Broo
Great Guide .
I have successfully done step 1 but not able to do step 2 .
Can you help me ?? plz

[Guide] SuperuserMod for all 6.x Devices/Roms

Updated the SuperUser mode .. Click here
Firstly thanks to sagitt67 from 4PDA ( he did it )
I grabbed it and tested and working
Hope this should help all others
Requirements :-
* core-libart.jar
* services.jar
* Apktool/tickle my android
and patience
1. Decompile core-libart.jar
2. open core-libart/smali/java/security/Signature.smali
look for this method
Code:
.method public final verify([B)Z
in that method find this line
Code:
invoke-virtual {p0, p1}, Ljava/security/Signature;->engineVerify([B)Z
[COLOR="Red"]move-result v0[/COLOR]
Replace the red code with this
Code:
const/4 v0, 0x1
now find this method
Code:
.method public final verify([BII)Z
in that method find this line
Code:
invoke-virtual {p0, p1, p2, p3}, Ljava/security/Signature;->engineVerify([BII)Z
[COLOR="red"]move-result v0[/COLOR]
replace the red line with this
Code:
const/4 v0, 0x1
save and close
3. Now open this core-libart/smali/java/security/MessageDigest.smali
find this method
Code:
.method public static isEqual([B[B)Z
.registers 7
[COLOR="red"]const/4 v2, 0x0 [/COLOR]
Change the red line to this
Code:
const/4 v2, 0x1
save and close
Compile it and Replace
and Continued in next post
Continued
Now decompile services.jar
1. open services/smali/com/android/server/accounts/AccountManagerService.smali
Find this method
Code:
.method private isAccountPresentForCaller(Ljava/lang/String;Ljava/lang/String;)Z
look for this lines
Code:
iget-object v4, v0, Landroid/accounts/Account;->name:Ljava/lang/String;
invoke-virtual {v4, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
[COLOR="Red"] move-result v4
if-eqz v4, :cond_2c[/COLOR]
cond_2c may vary with your code
in that 2 lines do the changes like this
Code:
[COLOR="red"]move-result v4 [/COLOR] to const/4 v4, 0x0
if-[COLOR="red"]eqz[/COLOR] v4, :cond_2c to if-[COLOR="Red"]nez[/COLOR] v4, :cond_2c
save and Close
3. Now open this services/smali/com/android/server/pm/PackageManagerService$InstallParams.smali
look for this method
Code:
.method private installLocationPolicy(Landroid/content/pm/PackageInfoLite;)I
find these lines
Code:
iget v8, p0, Lcom/android/server/pm/PackageManagerService$InstallParams;->installFlags:I
:try_end_22
.catchall {:try_start_10 .. :try_end_22} :catchall_5f
[COLOR="red"]and[/COLOR]-int/lit16 v8, v8, 0x80
Change the red to this
Code:
[COLOR="red"]or[/COLOR]-int/lit16 v8, v8, 0x80
save and Close
4. Now open this services/smali/com/android/server/pm/PackageManagerService.smali
in that look for this method
Code:
.method private checkUpgradeKeySetLP(Lcom/android/server/pm/PackageSetting;Landroid/content/pm/PackageParser$Package;)Z
in that look for these lines
Code:
iget-object v4, p2, Landroid/content/pm/PackageParser$Package;->mSigningKeys:Landroid/util/ArraySet;
invoke-virtual {v4, v3}, Landroid/util/ArraySet;->containsAll(Ljava/util/Collection;)Z
[COLOR="red"]move-result v4
if-eqz v4, :cond_20[/COLOR]
cond_20 may be different with your code
Change re lines to these
Code:
[COLOR="red"]move-result v4[/COLOR] to this const/4 v4, 0x0
if-[COLOR="red"]eqz[/COLOR] v4, :cond_20 to this if-[COLOR="red"]nez[/COLOR] v4, :cond_20
Now look for this method
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
and replace with this
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
.locals 11
const/4 v7, 0x0
return v7
.end method
and look for this method
Code:
.method private packageIsBrowser(Ljava/lang/String;I)Z
in that find these lines
Code:
iget-object v4, v4, Landroid/content/pm/ActivityInfo;->packageName:Ljava/lang/String;
invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
[COLOR="red"]move-result v4
if-eqz v4, :cond_22[/COLOR]
cond_22 may be different with your code
Change re lines to these
Code:
[COLOR="red"]move-result v4[/COLOR] to this const/4 v4, 0x0
if-[COLOR="red"]eqz[/COLOR] v4, :cond_22 to this if-[COLOR="red"]nez[/COLOR] v4, :cond_22
Now save all and compile
replace both and Reboot
Tada
SuperUserMod Done....
#YourWish for this
Additional for Unlocked Bootloaders click here (complete mod)
Have Fun guys
Dont forget to mention me If you use my work
Thanks alot Buddy, really useful, I've been looking for this on some old thread.
Sent from my E6683 using Tapatalk
@venkat kamesh bro thanks for your tut
i do this but get error in service.jar
after edit , i want to recompile it but get this error:
Code:
Recompiling "services.jar" With Original Signature,
in work area "_WorkArea1", using "apktool_2.2.1.jar"
With Tickle My Android 14.2.0.0.
(tinyurl.com\ticklemyandroid)
----------------
I: Using Apktool 2.2.1
I: Smaling smali folder into classes.dex...
..\_WorkArea1\_working\services.jar\smali\com\android\server\pm\PackageManagerService.smali[7670,4] missing EOF at '.locals'
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: com/android/server/pm/PackageManagerService.smali
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:77)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:61)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:38)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:405)
at brut.androlib.Androlib.buildSources(Androlib.java:336)
at brut.androlib.Androlib.build(Androlib.java:292)
at brut.androlib.Androlib.build(Androlib.java:264)
at brut.apktool.Main.cmdBuild(Main.java:227)
at brut.apktool.Main.main(Main.java:84)
----------------
Recompile Not Successful!
how can i solve that?
Hamidreza2010 said:
@venkat kamesh bro thanks for your tut
i do this but get error in service.jar
after edit , i want to recompile it but get this error:
Code:
Recompiling "services.jar" With Original Signature,
in work area "_WorkArea1", using "apktool_2.2.1.jar"
With Tickle My Android 14.2.0.0.
(tinyurl.com\ticklemyandroid)
----------------
I: Using Apktool 2.2.1
I: Smaling smali folder into classes.dex...
..\_WorkArea1\_working\services.jar\smali\com\android\server\pm\PackageManagerService.smali[7670,4] missing EOF at '.locals'
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file: com/android/server/pm/PackageManagerService.smali
at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:77)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:61)
at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:38)
at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:405)
at brut.androlib.Androlib.buildSources(Androlib.java:336)
at brut.androlib.Androlib.build(Androlib.java:292)
at brut.androlib.Androlib.build(Androlib.java:264)
at brut.apktool.Main.cmdBuild(Main.java:227)
at brut.apktool.Main.main(Main.java:84)
----------------
Recompile Not Successful!
how can i solve that?
Click to expand...
Click to collapse
bro seems you deleted '.locals'
please recheck it
nothing more
Goodluck bro
what´s the diferencce with the davidMKD´s tutorial disable signature verification http://forum.xda-developers.com/showthread.php?t=2458144
I ve been using this method since kit kat and its working fine, and you only modified slightly services.jar nothing else. cheers
juanpirulo said:
what´s the diferencce with the davidMKD´s tutorial disable signature verification http://forum.xda-developers.com/showthread.php?t=2458144
I ve been using this method since kit kat and its working fine, and you only modified slightly services.jar nothing else. cheers
Click to expand...
Click to collapse
haha well said bro
but structure of signature verification is not same since 4.4 to till date
there are lot of modification in structure and security level of api developed in their best
seems you just seen the services.jar changes hmm
had you looked to core-libart.jar ?
and you just see lines bro ?
why don't you look the code back to java ( i meant from smali to java ) so you can know the changes what i did
read the java imports
https://github.com/frohoff/jdk8u-dev-jdk/tree/master/src/share/classes/java/security
read it get it
i had those changes too
the old guide is just allowing to install temporary ( if you already had old install and data is present)
but not a complete SuperUserMod
just for you to prove ( try only with marshmallow and this guide is from marshmallow )
for example add new settings.apk with new signatures replace it
clear data from recovery and check if your settings are there or not
Before commenting of comparison please go through the google, and try to read what changes are done ( analyze them in java )
then come to thread and give a comment
we are not ready to post something which is already persist/Working
Do tests and get back to here bro
Good luck bro
First, this is not superuser mod, this is three android patches from LuckyPatcher.apk
First two makes your phone very vulnerable, because you makes signature verification always true and disable .apk signature verification. (core-libart.jar)
Superusermod is just
Code:
comparesignatures
const/4 v7, 0x0
bla bla
All other just give you access for downgrade your installed apk (services.jar)
I think you must add this info (about core-libart.jar) to first post. Thanks.
Did it.all good!
Thanks bro!
@venkat kamesh bro is this need to do after these steps?
http://forum.xda-developers.com/showpost.php?p=68965462&postcount=1264
i mean we should to do it or steps of this page is enough ? ( i have unlocked bootloader )
venkat kamesh said:
haha well said bro
but structure of signature verification is not same since 4.4 to till date
there are lot of modification in structure and security level of api developed in their best
seems you just seen the services.jar changes hmm
had you looked to core-libart.jar ?
and you just see lines bro ?
why don't you look the code back to java ( i meant from smali to java ) so you can know the changes what i did
read the java imports
https://github.com/frohoff/jdk8u-dev-jdk/tree/master/src/share/classes/java/security
read it get it
i had those changes too
the old guide is just allowing to install temporary ( if you already had old install and data is present)
but not a complete SuperUserMod
just for you to prove ( try only with marshmallow and this guide is from marshmallow )
for example add new settings.apk with new signatures replace it
clear data from recovery and check if your settings are there or not
Before commenting of comparison please go through the google, and try to read what changes are done ( analyze them in java )
then come to thread and give a comment
we are not ready to post something which is already persist/Working
Do tests and get back to here bro
Good luck bro
Click to expand...
Click to collapse
sorry bro when i said "you just modified slightly the services.jar" I didnt meant yourself i meant in the david tutorial no your tutorial. i just wanted your explanation about yours because i didnt know the difference. Now its ok
juanpirulo said:
sorry bro when i said "you just modified slightly the services.jar" I didnt meant yourself i meant in the david tutorial no your tutorial. i just wanted your explanation about yours because i didnt know the difference. Now its ok
Click to expand...
Click to collapse
haha no worries bro
happy to explain
Good luck bro
Hamidreza2010 said:
@venkat kamesh bro is this need to do after these steps?
http://forum.xda-developers.com/showpost.php?p=68965462&postcount=1264
i mean we should to do it or steps of this page is enough ? ( i have unlocked bootloader )
i need to do both of them?
Click to expand...
Click to collapse
@venkat kamesh would you please clear me here?
thanks bro
As always venkat kamesh! Great guide bro!
venkat kamesh said:
haha no worries bro
happy to explain
Good luck bro
Click to expand...
Click to collapse
i dont know why Xperia M4 Services.jar and other file not have Smali Folder
Hello! Does this work on stock marshmallow .291 for sony devices? Also, does this work on locked bootloaders? Great tutorial BTW!
Can I do this if my services.jar is from another systemUI. I have a z3c and I flashed Xperia X sysui and it replaced my stock systemUi and services.jar
thank you bro
but after edit
any app not installed.
russel5 said:
First, this is not superuser mod, this is three android patches from LuckyPatcher.apk
First two makes your phone very vulnerable, because you makes signature verification always true and disable .apk signature verification. (core-libart.jar)
Superusermod is just
Code:
comparesignatures
const/4 v7, 0x0
bla bla
All other just give you access for downgrade your installed apk (services.jar)
I think you must add this info (about core-libart.jar) to first post. Thanks.
Click to expand...
Click to collapse
@russel5,
I am not familiar with how to decompile services.jar, and I am not sure I understand what this is. Do you know of any more basic of a guide on services.jar, deodexing and what it achieves?
Thanks a lot in advance,
MW
I have been served this guide to enable superuser mod in my xperia x
music widget particles requires superuser mod but my xperia x has it

[Guide][TUT][MM] Dynamic StatusBar (lib based) [DSB] Official [All Devices MM]

Hello guys
After a long time here is a new Guide
Thanks to @kingdj and dedy (my friends)
a ParaS.H.I.T team
We worked for months spent sleepless nights on this mod
This mod got extinct on 4.4 seems lol
Now we successfully done till MM
This works for all variety of devices (samsung/sony/ all devices running MM )
Sony theme works so no worries
Check the Video on how it look like
Requirements:-
1. Make sure you had SuperUserMod
2. SystemUI.apk (deodexed)
3. Settings.apk (deodexed)
4. TickleMyAndroid by @Ticklefish or Advanced APK Tool
Start:- (also included with 3 Dot Menu)
1. Download this View attachment SystemUI.apk.zip
2. Decompile SystemUI.apk
3. Merge the complete files to your SystemUI.apk (no worries)
4. Open systemui.apk/res/values/colors.xml
add these
Code:
<color name="status_bar_background_opaque">@color/system_bar_background_opaque</color>
<color name="status_bar_background_semi_transparent">@color/system_bar_background_semi_transparent</color>
<color name="status_bar_background_transparent">@color/system_bar_background_transparent</color>
<color name="navigation_bar_background_opaque">@color/system_bar_background_opaque</color>
<color name="navigation_bar_background_semi_transparent">@color/system_bar_background_semi_transparent</color>
<color name="navigation_bar_background_transparent">@color/system_bar_background_transparent</color>
<color name="keyguard_default_primary_text_color">#ffffffff</color>
<color name="keyguard_default_secondary_text_color">#b3ffffff</color>
<color name="keyguard_default_icon_color">#ffffffff</color>
5. Compile and decompile
6. Compare Public ids and replace or Use this Amazing tool Public ID Converter by @loserskater as this tool replaces IDS
The Remain part continued in next post
SystemUI part 2
Continuation
1. Open SystemUI.apk/smali/com/android/systemui/statusbar/phone/PhoneStatusBar.smali
look for this code
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/statusbar/phone/PhoneStatusBar$DozeServiceHost;,
After this line
Code:
Lcom/android/systemui/statusbar/phone/PhoneStatusBar$DozeServiceHost;,
Add this Annotation
Code:
Lcom/android/systemui/statusbar/phone/PhoneStatusBar$100000023;,
Find this
Code:
# static fields
Below that add this
Code:
.field public static mExpandedVisible:Z
Find this line and Delete
Code:
.field mExpandedVisible:Z
Find this
Code:
# instance fields
Below add these lines
Code:
.field private mOverrideIconColor:I
.field private mPreviousOverrideIconColor:I
1.2. Now Find this method
Code:
.method public constructor <init>()V
find this line (v3 may vary)
Code:
iput v3, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNaturalBarHeight:I
Below add these lines
Code:
iput v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPreviousOverrideIconColor:I
iput v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mOverrideIconColor:I
1.3 Find this method
Code:
.method private addNavigationBar()V
Before that method add these methods
Code:
.method static synthetic access$L1000016(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)I
.locals 1
iget v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPreviousOverrideIconColor:I
return v0
.end method
.method static synthetic access$L1000017(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)I
.locals 1
iget v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mOverrideIconColor:I
return v0
.end method
.method static synthetic access$S1000016(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;I)V
.locals 0
iput p1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPreviousOverrideIconColor:I
return-void
.end method
.method static synthetic access$S1000017(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;I)V
.locals 0
iput p1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mOverrideIconColor:I
return-void
.end method
1.4 now you need to change Instance to Static
Using Notepad++ find this mExpandedVisible:Z
so you get similar lines like this
Code:
[COLOR="red"]i[/COLOR]get-boolean v0, [COLOR="Blue"]p0,[/COLOR] Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->[COLOR="red"]mExpandedVisible:Z[/COLOR]
In the above line do changes
Replace iget-boolean to sget-boolean and delete blue p0,
and it look like this after Edit
Code:
[COLOR="Red"]s[/COLOR]get-boolean v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;-[COLOR="red"]>mExpandedVisible:Z[/COLOR]
So like this you need to change them (Around 8 need to be changed )
Comparing files are available below
1.5 Find this method
Code:
.method protected makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
at the end of that method find this line
Code:
invoke-static {v4, v5}, Landroid/view/ThreadedRenderer;->overrideProperty(Ljava/lang/String;Ljava/lang/String;)V
After that line add these lines
Code:
const/4 v2, 0x1
new-array v2, v2, [Lcom/android/systemui/statusbar/phone/BarBackgroundUpdater$UpdateListener;
const/4 v3, 0x0
new-instance v4, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$100000023;
move-object/from16 v0, p0
move-object/from16 v1, p0
invoke-direct {v4, v0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$100000023;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Ljava/lang/Object;)V
aput-object v4, v2, v3
invoke-static {v2}, Lcom/android/systemui/statusbar/phone/BarBackgroundUpdater;->addListener([Lcom/android/systemui/statusbar/phone/BarBackgroundUpdater$UpdateListener;)V
Now find this method
Code:
.method public setSystemUiVisibility(II)V
in that find this lines
Code:
move-object/from16 v0, p0
iget-object v5, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mIconController:Lcom/android/systemui/statusbar/phone/StatusBarIconController;
above move-object/from16 v0, p0
Add this line
Code:
sget-boolean v5, Lcom/android/systemui/statusbar/phone/BarBackgroundUpdater;->mStatusEnabled:Z
save and close PhoneStatusBar.smali
2. Search for this mExpandedVisible:Z in child files of PhoneStatusBar$xx.smali
in Sony i found in PhoneStatusBar$11.smali
so same
from
Code:
[COLOR="Red"]i[/COLOR]get-boolean v0, [COLOR="Blue"]v0,[/COLOR] Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->[COLOR="red"]mExpandedVisible:Z[/COLOR]
to
Code:
[COLOR="red"]s[/COLOR]get-boolean v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->[COLOR="red"]mExpandedVisible:Z[/COLOR]
3. Now open SystemUI.apk/smali/com/android/systemui/statusbar/phone/StatusBarIconController.smali
find this line
Code:
.field private final mHandler:Landroid/os/Handler;
Replace that line to this
Code:
.field public final mHandler:Landroid/os/Handler;
Now save and Close all
Complie and replace
For compare Download this files View attachment dsb_compare_statusbar.zip
Now you need to place the Lib to you SystemUI.apk
Merge this lib to system/priv-app ( use any root explorer )
For 64 bit devices :- View attachment 64bit_lib_systemui_dsb.zip
For ARM / 32 bit devices :- View attachment arm_32bit_lib_systemui_dsb.zip
For x86_x64 devices :- View attachment 3940776
After Placing lib replace systemUI.apk and reboot tada
Video soon available
For settings Look for next post
settings.apk final part and Video
Settings Final part:-
1. Decompile Settings.apk
2. Download this View attachment settings.apk.zip
3. Extract and Merge it
4. Open Settings.apk/res/values/strings.xml
add these lines
Code:
<string name="dynamic_system_bars_category_title">Dynamic system bars</string>
<string name="dynamic_status_bar_title">Dynamic status bar</string>
<string name="dynamic_status_bar_summary">Automatically update the background of the status bar</string>
<string name="dynamic_navigation_bar_title">Dynamic navigation bar</string>
<string name="dynamic_navigation_bar_summary">Automatically update the background of the navigation bar</string>
<string name="dynamic_system_bars_gradient_title">System bar gradient</string>
<string name="dynamic_system_bars_gradient_summary">Overlay a gradient on the system bars</string>
<string name="dynamic_status_bar_filter_title">Darker status bar</string>
<string name="dynamic_status_bar_filter_summary">Overlay a darkening filter on the status bar</string>
5. Add this any where to your settings (display_settings.xml or your wish)
Code:
<PreferenceScreen android:icon="@drawable/kryp_dsb" android:id="@+id/dsb" android:title="Dinamic Engine" android:summary="Amaze Your view of Status and Navigation Bar" android:fragment="com.android.settings.kryp.Dsb" />
6. As this mod also contain 3 Dot mod to add settings Follow this post
7. Compile and Decomopile the Settings.apk
Compare ids (provided my public.xml) and replace the Ids
Recompile and replace
reboot and test
This is Part of My Rom Kryptonian
Dont Forget to mention me if you use My work
That feels me Happy
does this framework running just like as flat style colored bar module on xposed?
Intriguing. I'll have to keep an eye on this thread..
SystemUI.apk.zip not failed extrack?
ryandxter said:
does this framework running just like as flat style colored bar module on xposed?
Click to expand...
Click to collapse
Check video below bro
Ticklefish said:
Intriguing. I'll have to keep an eye on this thread..
Click to expand...
Click to collapse
Sure i can seen your Blink eye
vandiaz_sairavinz said:
SystemUI.apk.zip not failed extrack?
Click to expand...
Click to collapse
download again and try bro
Here is the Video On how the mod works
@venkat kamesh as always , your done best
DSB to lolipop bro...
Do you Have tutorial....
Nice, great work Sir VK
and thanks you.
excuse me,,could you please help me,.. im in step 1,after this one :
3. Merge the complete files to your SystemUI.apk (no worries)
4. Open systemui.apk/res/values/colors.xml
add these
5. Compile and decompile
6. Compare Public ids and replace or Use this Amazing tool Public ID Converter by @loserskater as this tool replaces IDS
I have read the tool,and we need Source smail file for compare IDs,,but could you please tell me which smail file in this file 1. Download this SystemUI.apk.zip is Source smail
Nice nice
Does this require UB? also, can I install on X system UI on a z3c? The framework res is from z3c
panzerox123 said:
Does this require UB? also, can I install on X system UI on a z3c? The framework res is from z3c
Click to expand...
Click to collapse
You don't need UB and it will work on that framework and systemUI
DavidMKD said:
You don't need UB and it will work on that framework and systemUI
Click to expand...
Click to collapse
Thanks!
Will it work if I used zervices.Jar SuperUserMod by Rajeev?
panzerox123 said:
Thanks!
Will it work if I used zervices.Jar SuperUserMod by Rajeev?
Click to expand...
Click to collapse
It should, just backup in case
DavidMKD said:
It should, just backup in case
Click to expand...
Click to collapse
Ok. Thanks!
And will it work with Xperia X SystemUI on z3c?
panzerox123 said:
Ok. Thanks!
And will it work with Xperia X SystemUI on z3c?
Click to expand...
Click to collapse
It should work on any SystemUI as long it is MM and it has those lines
DavidMKD said:
It should work on any SystemUI as long it is MM and it has those lines
Click to expand...
Click to collapse
Ok thanks!
Question: HOW DO I REPLACE PUBLIC IDS!! omg im hyperventilating..... sorry/// But how do I replace public ids?

Categories

Resources