[Guide][How To] Adding Brightness Bar Slider to Status Bar - Sony Xperia S, Acro S, Ion

++++++++++++++++++++++++++++++++++
UPDATED July 10, 2013: This GUIDE was written back for ICS firmware, although it might still work for JB - I couldn't confirm that due to the fact I had stopped developing/modding. Keep in mind you need to use the latest APKtool - From Here - for JB system. Also don't forget to copy from original apk "AndroidManifest.xml" file and "META-INF" folder for the New "modded" SystemUI.apk to work.
++++++++++++++++++++++++++++++++++
I was helping a member learn how to add the brightness bar slider to his/her status bar. Since I spend a good amount of time typing it up. So I might as well post it here for everyone
General Knowledge
LEARN how to decompile/Compile APK
APK Tool I used APK 1.5.0
Click to expand...
Click to collapse
PART I: Download resource file here: SystemX.zip
Decompile your SystemUI
Copy from the file/folder in SystemX to same location on your SystemUI:
icon: /res/drawable-hdpi/quickpanel_brightness_icon.png
(could be different folder based on your device, where ever your toggle icons put it there)
file: res/layout/quickpanel_brightness_settings.xml
folder: /smali/com/android/systemui/statusbar/quickpanel folder
PART II: Now you need to declare all added variants:
Ids - Open /res/values/ids.xml - Add these three lines at the end. Close & save.
Code:
<item type="id" name="title">false</item>
<item type="id" name="brightness_slider">false</item>
<item type="id" name="automatic">false</item>
Strings - Open /res/values/strings.xml - Add these two lines at the end. Close & save.
Code:
<string name="brightness_settings_title">Brightness</string>
<string name="brightness_settings_automatic">Fixed</string>
Public - Open /res/values/public.xml - Add to end of each section - Continue with the last id called out.
Code:
....
<public type="drawable" name="quickpanel_brightness_icon" id=[color=red]"0x7f020166"[/color] />
....
<public type="layout" name="quickpanel_brightness_settings" id=[color=red]"0x7f03001e"[/color] />
...
<public type="string" name="brightness_settings_title" id=[color=red]"0x7f08009e"[/color] />
<public type="string" name="brightness_settings_automatic" id=[color=red]"0x7f08009f"[/color] />
...
<public type="id" name="title" id=[color=red]"0x7f0e009d"[/color] />
<public type="id" name="brightness_slider" id=[color=red]"0x7f0e009e"[/color] />
<public type="id" name="automatic" id=[color=red]"0x7f0e009f"[/color] />
*Change those in red per your ids - best open public.xml in Excel, sort by id - you will see the last number was used in each section.
PART III: Now we need to edit the Smali associated with your Public.xml Id's:
Open /smali/com/android/systemui/statusbar/quickpanel/BrightnessSettingsView.smali in Notepad++ (or similar) - Change if needed:
@ line 201
Code:
const v1, [color=red]0x7f08009e[/color]
ID associated with public.xml string section name="brightness_setting_title"
@ line 207
Code:
const v1, [color=red]0x7f08009f[/color]
ID associated with public.xml string section name="brightness_settings_automatic"
@ line 257
Code:
const v1, [color=red]0x7f0e009d[/color]
ID associated with public.xml id section name="title"
@ line 267
Code:
const v1, [color=red]0x7f0e009e[/color]
ID associated with public.xml id section name="brightness_slider"
@ line 308
Code:
const v1, [color=red]0x7f0e009f[/color]
ID associated with public.xml id section name="automatic"
Save & Close.
Open /smali/com/android/systemui/statusbar/phone/PhoneStatusBar.smali in Notepad++ (or similar)
Find this Section:
Code:
....
.method protected makeStatusBarView()Landroid/view/View;
.locals 13
.prologue
const/16 v12, 0x8
.....
[i](very long find the last line in this section)[/i]
.....
[color=blue].line 382
return-object v4[/color]
.line 311
.end local v2 #filter:Landroid/content/IntentFilter;
.end local v6 #signalCluster:Lcom/android/systemui/statusbar/SignalClusterView;
.end local v7 #statSysNoSim:Landroid/widget/ImageView;
.end local v8 #tickerView:Lcom/android/systemui/statusbar/phone/TickerView;
:catch_0
move-exception v9
goto/16 :goto_0
.end method
.method onBarViewAttached()V
......
In between .line 382 (this line number is not important - ignore whatever it is, only make sure it's the last line in this section) and return-object v4 - Add:
Code:
[color=indigo][color=blue].line 382[/color]
const v6, [color=red]0x7f03001e[/color]
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;
invoke-virtual {v5}, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;->init()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
const/4 p0, 0x1
invoke-virtual {v6, v5, p0}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=blue]return-object v4[/color][/color]
ID associated with public.xml layout section name="quickpanel_brightness_settings"
Note: If you already had Toggle Mod - It should look like this:
Code:
[color=blue].line 382[/color]
iget-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBroadcastReceiver:Landroid/content/BroadcastReceiver;
invoke-virtual {v0, v9, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
const v6, 0x7f03001c
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/lidroid/systemui/quickpanel/PowerWidget;
invoke-virtual {v5}, Lcom/lidroid/systemui/quickpanel/PowerWidget;->setupWidget()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
invoke-virtual {v6, v5, v11}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=indigo]const v6, [color=red]0x7f03001e[/color]
invoke-static {v0, v6, v11}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;
move-result-object v5
check-cast v5, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;
invoke-virtual {v5}, Lcom/android/systemui/statusbar/quickpanel/BrightnessSettingsView;->init()V
iget-object v6, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedView:Lcom/android/systemui/statusbar/phone/ExpandedView;
const/4 p0, 0x1
invoke-virtual {v6, v5, p0}, Lcom/android/systemui/statusbar/phone/ExpandedView;->addView(Landroid/view/View;I)V
[color=blue]return-object v4[/color][/color]
Save & Close
PART IV: Compile & push to your system, don't forget to set your permission to rw-r--r-- ! DONE.
The End: That's all - Wasn't that hard, wasn't it ? :silly: .... Good Luck !!! :highfive:
Disclaimer:
I didn't write up the code for quickpanel brightness settings, it has been pass on from forum to forum - I do not know the original author. If it's your please let me know so we all can give proper thanks.
Click to expand...
Click to collapse

+1

+thanks for you.
Yeeeah, I think we need more people like you

thanks for the tutorial.

How would you go about removing the brightness bar (manually)?

fcb13 said:
How would you go about removing the brightness bar (manually)?
Click to expand...
Click to collapse
The quickest way is take out the Added code in the PhoneStatusBar.smali. You can ignore the rest. But it would be more clean if you reverse the guide.

is it working on other phone such samsung or only xperia??

d3cka said:
is it working on other phone such samsung or only xperia??
Click to expand...
Click to collapse
NO, this guide is for Xperia - Samsung had a different layout in SystemUI

Ohh thanks for the answer
Sent from my GT-S5360 using xda premium

can someuone upload the edited SystemUI? I dont have a pc right now only phone

Awesome work.

Worked for me. Can't say anything changes in touchscreen sensitivity, it was fine before. But the capacitive buttons were always kind of a pain in the .ss, now they respond much better. Thanks a lot for this mod. Xperia Ion.

My phone doesn't have phonestatusbar.smali
Sent from my XT530 using xda app-developers app

I don' t know if this work.
I have a problem, decompile e recompile SystemUI.apk without an error, but when use SystemUI recompileted it's don't work.
Can Someone help me?

Where I should add line from part III? In file extracted from systemX.zip I have no one "line" with needed id.
Oh, it was my mistake - i searched for ".line"
Thank you for this guide!

great tutorial:good:

+1 thanks
Sent from my LT26i using xda app-developers app

I wanna add the slider in 2.3 but i could not find phonestatubar.smali
what can I do?

i think you can code a patch to help every body

Great tutorial! thanks!
on other manufacturers phones, it is /smali/com/android/systemui/statusbar/StatusBarService.smali

Related

[MOD][GUIDES] SecMms.apk TouchWiz Mods! [5.26.2013]

Hello to all Developers and XDA members! I have come here to give you a couple of guides on how to enable a bunch of the Stock Messaging App "SecMms" Mods and other good stuff so here is how you can do it!
What Is Required...
★ First you need to have experience and know how to decompile/recompile apks with Apktools, apkmanager, smali, and baksmali
★ Have 7-zip installed onto your computer/laptop
★ Make sure you have Notepad++ also installed!
★HOW TO ENABLE THE SCREEN ON/OFF TOGGLE AND ADD THE VIBRATION, SIGNATURE OPTIONS★
WHAT DOES THIS MOD DO: This mod will let you enable the Screen on/off toggle, vibration, and signature options in the messaging app.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
res/xml/mms_config.xml
Click to expand...
Click to collapse
Now open up "mms.config.xml" with Notepad++ then go and find:
Code:
<bool name="enable_screen_onoff_option">false</bool>
<bool name="enable_signature_settings">false</bool>
<bool name="enable_vibration_option">false</bool>
<bool name="enable_signature">false</bool>
Now what your going to do is where it says "false" your going to change it to "true" to enable it. Once done it will look something like this:
Code:
<bool name="enable_screen_onoff_option">true</bool>
<bool name="enable_signature_settings">true</bool>
<bool name="enable_vibration_option">true</bool>
<bool name="enable_signature">true</bool>
Now save this file with the new edits with Notepad++ and head to the next step!
STEP 2
Once your done enabling the bools, now you have to go into:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++ which all should be almost towards the bottom of the file, So what you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
FIND:
Code:
[COLOR="Green"]const-string v11, "pref_key_spam_settings"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 813
invoke-virtual {p0}, Lcom/android/mms/ui/MessagingPreferenceActivity;->getPreferenceScreen()Landroid/preference/PreferenceScreen;
move-result-object v10
[COLOR="Green"]const-string v11, "pref_key_spam_settings"[/COLOR]
invoke-virtual {p0, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v11
[COLOR="Red"]invoke-direct {p0, v10, v11}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
.line 824
:cond_10
:goto_5
invoke-static {}, Lcom/android/mms/MmsConfig;->getDisableConvertingEffectBetweenSMSMMS()Z
move-result v10
if-eqz v10, :cond_11
FIND:
Code:
[COLOR="Green"]const-string v10, "pref_notification_settings"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 825
[COLOR="Green"]const-string v10, "pref_notification_settings"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v1
check-cast v1, Landroid/preference/PreferenceCategory;
.line 826
.local v1, MmsCategory:Landroid/preference/PreferenceCategory;
const-string v10, "pref_key_mms_change_over_alarm"
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v1, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
FIND:
Code:
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 767
[COLOR="Green"]const-string v10, "pref_key_backlight"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v2, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
Now once your done with modifying the "MessagingPreferenceActivity.smali", Recompile your SecMms.apk using apktool or smali commands and your DONE! You should now see the Screen On/Off Toggle in the Messaging app Settings! Also if you didn't have the vibration or signature options in your Messaging app settings this guide will also enable it! Enjoy!
★HOW TO ENABLE THE TOUCHWIZ GROUP MESSAGING, SAVE / RESTORE, AND SCHEDULED MESSAGING FEATURES★
WHAT DOES THIS MOD DO: This mod will let you enable some features in the messaging app such as group messaging, save / restore, and also the scheduled messaging.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
TO ENABLE GROUP MESSAGING...
FIND:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.locals 1
.prologue
.line 766
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableGroupMessage()Z[/COLOR]
.locals 1
.prologue
.line 766
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
TO ENABLE THE SAVE / RESTORE FEATURE...
FIND:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.locals 1
.prologue
.line 774
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSaveRestoreSDCardMessage()Z[/COLOR]
.locals 1
.prologue
.line 774
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
TO ENABLE SCHEDULED MESSAGING...
FIND:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.locals 1
.prologue
.line 878
const/4 v0, 0x0
return v0
.end method
NOW CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableScheduledMessage()Z[/COLOR]
.locals 1
.prologue
.line 878
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
return v0
.end method
The only thing your doing is changing 0x0 to 0x1 which "0" means disabled and "1" means enabled. Once your done now recompile your SecMms.apk and that's it your DONE!
★SMS 1000/UNLIMITED RECIPIENT LIMIT★
WHAT DOES THIS MOD DO: This mod will let you send your message to more than 1000 people at the same time.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.locals 1
.prologue
.line 630
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getRecipientLimit()I[/COLOR]
.locals 1
.prologue
.line 630
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
Now save the changes, recompile your SecMms.apk and your DONE!
★HOW TO CHANGE THE MESSAGING TIME STAMPS TO ITS ORIGINAL TIME★
WHAT DOES THIS MOD DO: This mod will show the exact sent time of received messages, not the moment when you actually received it on your phone.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/transactionSMSReceiverService.smali
Click to expand...
Click to collapse
Now open up "SMSReceiverService.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
LOOK FOR:
Code:
[COLOR="Green"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
THIS SAME LINE THAT YOU HAVE JUST LOOKED FOR, IS ALSO THE LINE YOUR GOING TO HAVE TO REMOVE WHICH SHOULD LOOK LIKE THIS:
Code:
.line 1395
:cond_7
const-string v3, "date"
[COLOR="Red"]invoke-static {}, Ljava/lang/System;->currentTimeMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_1
.end method
AND THEN CHANGE IT TO THIS:
Code:
.line 1395
:cond_7
const-string v3, "date"
[COLOR="Blue"]invoke-virtual {p1}, Landroid/telephony/SmsMessage;->getTimestampMillis()J[/COLOR]
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v4
invoke-virtual {v1, v3, v4}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
goto/16 :goto_1
.end method
Once finished... Save changes, recompile your SecMms.apk and that's it your DONE!
★HOW TO DISABLE THE SMS TO MMS AUTO-CONVERSION★
WHAT DOES THIS MOD DO: This mod will let you type very long text messages and it won't automatically convert it into MMS.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
.line 149
[COLOR="Red"]sput v7, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
.line 150
[COLOR="Red"]const/16 v0, 0xc8[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mDefaultSMSMessagesPerThread:I
AND CHANGE TO:
Code:
[COLOR="Green"]sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidthRestrictedMode:I[/COLOR]
.line 149
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
.line 150
[COLOR="Blue"]sput v0, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mDefaultSMSMessagesPerThread:I
SEARCH FOR:
Code:
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
NOW REMOVE:
Code:
.line 157
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
.line 160
[COLOR="Red"]const/4 v0, 0x4[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I
AND CHANGE TO:
Code:
.line 157
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mAllowAttachAudio:Z[/COLOR]
.line 160
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I
SEARCH FOR:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.locals 1
.prologue
.line 2146
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMaxRecipientLength()I[/COLOR]
.locals 1
.prologue
.line 2146
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.locals 1
.prologue
.line 2379
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mMmsRecipientLimit:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getMmsMaxRecipient()I[/COLOR]
.locals 1
.prologue
.line 2379
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.locals 1
.prologue
.line 559
[COLOR="Red"]sget v0, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
return v0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getSmsToMmsTextThreshold()I[/COLOR]
.locals 1
.prologue
.line 559
[COLOR="Blue"]const/16 v0, 0x3e8[/COLOR]
return v0
.end method
SEARCH FOR:
Code:
[COLOR="Green"]sput v9, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 1553
const-string v9, "CscFeature_Message_MaxRecipientLengthAs"
invoke-virtual {v1, v9}, Lcom/sec/android/app/CscFeature;->getInteger(Ljava/lang/String;)I
move-result v9
[COLOR="Blue"]const/16 v9, 0x3e8[/COLOR]
[COLOR="Green"]sput v9, Lcom/android/mms/MmsConfig;->mMaxRecipientLength:I[/COLOR]
.line 1554
sget v9, Lcom/android/mms/MmsConfig;->mMinRecipientLength:I
SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mSmsToMmsTextThreshold:I[/COLOR]
.line 1729
const-string v1, "Mms/MmsConfig"
SEARCH FOR:
Code:
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
ABOVE THIS SAME LINE YOU HAVE TO ADD A NEW LINE WHICH IS IN BLUE:
Code:
.line 1733
const-string v1, "pref_key_max_recipient"
invoke-interface {v0, v1, v4}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I
move-result v1
[COLOR="Blue"]const/16 v1, 0x3e8[/COLOR]
[COLOR="Green"]sput v1, Lcom/android/mms/MmsConfig;->mRecipientLimit:I[/COLOR]
.line 1734
const-string v1, "Mms/MmsConfig"
Now save changes, Recompile your SecMms.apk and that's it you are now DONE!!!
★INCREASE THE SMS LIMIT PER HOUR★
WHAT DOES THIS MOD DO: This mod will increase the SMS hour limit to 1000.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/util/RateController.smali
Click to expand...
Click to collapse
Now open up "RateController.smali" with your notepad++ for editing.
Now for this guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
LOOK FOR:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I = 0x64[/COLOR]
IN THIS SAME EXACT LINE REMOVE:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Red"]0x64[/COLOR]
AND CHANGE IT TO:
Code:
[COLOR="Green"].field private static final RATE_LIMIT:I =[/COLOR] [COLOR="Blue"]0x3e8[/COLOR]
The value that you see is in hexadecimal format, so 0x64 = "100". So we changed it to 0x3e8 which in hexadecimal format means "1000". Now save your changes, recompile the SecMms.apk and you are now FINISHED!!!
★HOW TO ENABLE SPLIT-VIEW MODE ON/OFF TOGGLE★
WHAT DOES THIS MOD DO: This mod will let you enable split view on landscape screen so you can see the contacts lists of the people who messaged you while looking at your text at the same time.
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools, apkmanager, or baksmali and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/ui/MessagingPreferenceActivity.smali
Click to expand...
Click to collapse
Now open up "MessagingPreferenceActivity.smali" with your notepad++ for editing.
For this part of the guide what i have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely which is the "invoke-direct" line which has "removePreference" in it:
SEARCH FOR:
Code:
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
Here is what it should look like, Now remove what you see in RED:
Code:
.line 733
[COLOR="Green"]const-string v10, "pref_key_split_view"[/COLOR]
invoke-virtual {p0, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->findPreference(Ljava/lang/CharSequence;)Landroid/preference/Preference;
move-result-object v10
[COLOR="Red"]invoke-direct {p0, v5, v10}, Lcom/android/mms/ui/MessagingPreferenceActivity;->removePreference(Landroid/preference/PreferenceGroup;Landroid/preference/Preference;)V[/COLOR]
.line 735
:cond_2
invoke-static {}, Lcom/android/mms/MmsConfig;->getEnableWapPush()Z
Once done save your changes, now go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, What you see in "RED" is the line you have to remove/delete completely, And also what you see in "BLUE" is the line you have to make changes to:
SEARCH FOR:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
NOW REMOVE:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.locals 1
.prologue
.line 903
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_0
.line 904
const/4 v0, 0x1
.line 906
:goto_0
return v0
:cond_0
[COLOR="Red"]sget-boolean v0, Lcom/android/mms/MmsConfig;->mEnableSplitMode:Z[/COLOR]
goto :goto_0
.end method
AND CHANGE TO:
Code:
[COLOR="Green"].method public static getEnableSplitMode()Z[/COLOR]
.locals 1
.prologue
.line 903
invoke-static {}, Lcom/android/mms/MmsConfig;->hasLargerThan5inchScreen()Z
move-result v0
if-eqz v0, :cond_0
.line 904
const/4 v0, 0x1
.line 906
:goto_0
return v0
:cond_0
[COLOR="Blue"]const/4 v0, 0x1[/COLOR]
goto :goto_0
.end method
Now save changes, Recompile your SecMms.apk and that's it you are now DONE! Now you should see the "Split View" Toggle In Your Messaging App Settings!
★HOW TO INCREASE MMS MAX SIZE + INCREASE MMS IMAGE SIZE★
WHAT DOES THIS MOD DO: This mod will increase the MMS Max size to 2048000 bytes and also increase the MMS Image size to 4096x2048 [8.4MP].
STEP 1
★ Go into your system/app folder and take out your "SecMms.apk"
★ Then use one of the applications such as apktools or apkmanager and then use the commands to decompile the SecMms.apk
★ Once you have decompiled the SecMms.apk, go to:
smali/com/android/mms/MmsConfig.smali
Click to expand...
Click to collapse
Now open up "MmsConfig.smali" with your notepad++ for editing.
Now for this part of this guide what I have highlighted in "GREEN" text is what you have to find using Notepad++, And what you see in "BLUE" is the line you have to make changes to:
INCREASE MMS MAX SIZE TO 2048000 BYTES...
FIND:
Code:
.line 137
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mMmsWidgetEnabled:Z[/COLOR]
.line 138
const v0, 0x4b000
sput v0, Lcom/android/mms/MmsConfig;->mMaxMessageSize:I
NOW CHANGE TO:
Code:
.line 137
[COLOR="Green"]sput-boolean v2, Lcom/android/mms/MmsConfig;->mMmsWidgetEnabled:Z[/COLOR]
.line 138
[COLOR="Blue"]const v0, 0x1f4000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxMessageSize:I
INCREASE MMS IMAGE SIZE TO 4096x2048 [8.4MP]...
FIND:
Code:
.line 144
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->mEmailGateway:Ljava/lang/String;[/COLOR]
.line 145
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_HEIGHT:I
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageHeight:I
.line 146
sget v0, Lcom/android/mms/MmsConfig;->MAX_IMAGE_WIDTH:I
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidth:I
NOW CHANGE TO:
Code:
.line 144
[COLOR="Green"]sput-object v4, Lcom/android/mms/MmsConfig;->mEmailGateway:Ljava/lang/String;[/COLOR]
.line 145
[COLOR="Blue"]const/16 v0, 0x800[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageHeight:I
.line 146
[COLOR="Blue"]const/16 v0, 0x1000[/COLOR]
sput v0, Lcom/android/mms/MmsConfig;->mMaxImageWidth:I
Once your done. Now recompile your SecMms.apk and that's it your DONE!
another one just in case! :good:
Thanks for doing this bro, ill have to check it out!
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods!
sbreen94 said:
Thanks for doing this bro, ill have to check it out!
Click to expand...
Click to collapse
Your welcome bro hopefully i get to update it later on tonight with more mods.
Sent from my SGH-T999 using Tapatalk 2
Updated it with even more mods!
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods! [3.3.2013]
jovy23 said:
Updated it with even more mods!
Click to expand...
Click to collapse
Awww yeah
Sent from my SCH-I605 using xda premium
Excellent guide mate, :highfive: :good::good:
awesome! it send it but the replies do not come back in the same thread.the people respond in another individual thread...is there anyway to enable the responses to be all in one thread?
EDIT: also, after sending the first group message, i can't send another one. i think it is because the thread is now labeled: "Anonymous" and the app doesn't know who to send it to..
can you possibly post your SecMMS.apk? i've decompiled it and made some edits successfully, but one of the smali files i have is missing some lines from this guide...
also, group text doesnt work still i get the same bug as above. we must be missing something. anyone have the latest OTA update and are rooted? lets compare files!
Everything is OK, but when I choose to send message from contact list: Still 10 recipient limit. How to solve this?
Would this work for the Note 2? And could someone upload the APK? If you need my Note 2 version I can send it to you but I think its the same as the S3.
I successfully was able to make the sms to mms conversion change along with the recipient limit change. But whenever I make a change to the xml files it breaks the array in values where the <3 doesn't link to the heart properly it only shows the <3 in the text message. this happened after I tried to add the screen on/off change. I have read it is something to do with a compression error. Do you know a workaround for this? Hope so, or maybe someone has a fix for this
Second question is how to change the default order of the smilies when you insert from the menu?
Thanks in advance...
Is this thread still active and up?
Re: [MOD][GUIDES] SecMms.apk TouchWiz Mods! [3.3.2013]
mgbotoe said:
Is this thread still active and up?
Click to expand...
Click to collapse
It still works if that's what you're asking
Sent from my SGH-T889 using Tapatalk 2
jovy23 said:
Updated it with even more mods!
Click to expand...
Click to collapse
I would love to have these on my t-999 but I'm having trouble understanding all this development jargon. I've spent the entire day trying to create my own mod, but with no success. My eyes now hurt from staring at my pc since 7 am Do you have a mod for the t-999 stock rom I could flash?
Thanks so much for this great how to! Very clear and easy to follow!
My smali folder does not get extracted...tried so many things to get it fix. anyone else experiencing this....
mgbotoe said:
My smali folder does not get extracted...tried so many things to get it fix. anyone else experiencing this....
Click to expand...
Click to collapse
What do you mean?
Did you decompile the secmms.apk using apktool or apk manager?
Smali folder will be there if you successfully decompiled it.
Sent from my GT-I9100 using Tapatalk 2
engloa said:
What do you mean?
Did you decompile the secmms.apk using apktool or apk manager?
Smali folder will be there if you successfully decompiled it.
Sent from my GT-I9100 using Tapatalk 2
Click to expand...
Click to collapse
Yes ive even setup the apk manager again same thing

(Guide)How to port Ics lockscreen to Gb for Micromax a57 / A54/ Samsung galaxy y

I am Suraj ​
again with New guide
How to port ICs lockscreen TO GB
{
"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"
}
Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device
THis is full explained Guide dont bore
So let start
We have to Follow 5 step for gettings ics lockscreen
first step here start
download this zip firststep.zip
1.copy res folder to your framework-res folder
2. Open ids.xml under res/values foler and add these in last above
Code:
<item type="id" name="rl_multiWaveView">false</item>
<item type="id" name="digital_clock">false</item>
<item type="id" name="dateShow">false</item>
<item type="id" name="iv_drop">false</item>
<item type="id" name="ib_greenorange">false</item>
<item type="id" name="rl_click_after">false</item>
<item type="id" name="ib_photo">false</item>
<item type="id" name="ib_greenorange_gone">false</item>
<item type="id" name="ib_phone">false</item>
<item type="id" name="tv_phone_unread">false</item>
<item type="id" name="ib_sms">false</item>
<item type="id" name="tv_sms_unread">false</item>
<item type="id" name="ib_home">false</item>
<item type="id" name="tv_remind">false</item>
<item type="id" name="rl_multiWaveViewforsimulateics">false</item>
<item type="id" name="iv_wave">false</item>
<item type="id" name="iv_wave1">false</item>
<item type="id" name="iv_wave2">false</item>
<item type="id" name="iv_circle">false</item>
3.. compile the framework-res.apk
4.Now decompile your framework-res.apk
Now open your public.xml
Leave it alone Now first step complete
:fingers-crossed:
TIME TO DO SECOND SEC0ND STEP
HERE WE START
dOWNLAOD THIS zIP.(SECOND STEP.ZIP)
thats our smalli editing part
1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)
NOW copy all smalli to your decompiled android.policy .jar folder one by one
Now open all files related to com\android\internal\policy\impl mine files
Search " 0x10" Copy the whole id .
Open my provided public.xml
Search for that id in my public.xml
Copy the text of that id.
Like if my Public id is "0x101000e"
but in you pubilc.xml it start from "0x0101000e" means you have to add 0 before 1
its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop
NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART
SO HERE WE START
DOWNLOAD THIS ZIP (THIRD PART.ZIP)
thats our Main and difficult part
in your android.policy.jar decompiled folder
search for LockPatternKeyguardView.smalli
open it ..
then search for
.field private mScreenOn:Z
Click to expand...
Click to collapse
then below it add
.field private mStartForIntent:Landroid/content/Intent;
Click to expand...
Click to collapse
then search for
.method createLockScreen()Landroid/view/View;
Click to expand...
Click to collapse
then after
.prologue
Click to expand...
Click to collapse
add this
.prologue
.line 660
const-string v3, "true"
const-string v2, "ro.origin.lockscreen"
.line 711
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "false"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_24
.line 712
new-instance v0, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallbackV
.line 726
:goto_23
return-object v0
.line 718
:cond_24
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "simulateICS"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_44
.line 719
new-instance v0, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallbackV
goto :goto_23
:cond_44
Click to expand...
Click to collapse
then search for
.method static synthetic access$100(Lcom/android/internal/policy/impl/LockPatternKeyguardViewZ
.registers 2
.parameter "x0"
.prologue
.line 65
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsVerifyUnlockOnly:Z
return v0
.end method
Click to expand...
Click to collapse
then add this code under
.method static synthetic access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardViewLandroid/content/Intent;
.registers 2
.parameter "x0"
.prologue
.line 65
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
return-object v0
.end method
.method static synthetic access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/IntentLandroid/content/Intent;
.registers 2
.parameter "x0"
.parameter "x1"
.prologue
.line 65
iput-object p1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
return-object p1
.end method
Click to expand...
Click to collapse
Now our third step is completed
---------------------------------------------------------------------------------
Now our forth step here start
1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)
search for LockPatternKeyguardView$1.smalli
Now open it
then search for
.method public goToUnlockScreen()V
Click to expand...
Click to collapse
then you will see this method
.method public goToUnlockScreen()V
.registers 3
to
#calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$ModeV
invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$ModeV
goto :goto_8
.end method
Click to expand...
Click to collapse
so delete this full method
and add this
.method public goToUnlockScreen()V
.registers 6
.prologue
const/4 v2, 0x1
const-string v4, "true"
const-string v3, "ro.origin.lockscreen"
.line 248
invoke-virtual {p0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->isSecure()Z
move-result v0
if-nez v0, :cond_3d
.line 249
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "false"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_1f
.line 250
invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V
.line 259
:goto_1e
return-void
.line 251
:cond_1f
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "simulateICS"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_33
.line 252
invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V
goto :goto_1e
.line 254
:cond_33
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;
move-result-object v0
invoke-interface {v0, v2}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V
goto :goto_1e
.line 257
:cond_3d
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
sget-object v1, Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;->UnlockScreen:Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;
#calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$ModeV
invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$ModeV
goto :goto_1e
.end method
Click to expand...
Click to collapse
Now search for
.method public isSecure()Z
Click to expand...
Click to collapse
then above it add this
.method public isGotoUnlockscreen(Landroid/content/IntentV
.registers 3
.parameter "intent"
.prologue
.line 398
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
#setter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0, p1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/IntentLandroid/content/Intent;
.line 399
return-void
.end method
Click to expand...
Click to collapse
========================================================================================================
Now search for
.method public keyguardDone(Z)V
Click to expand...
Click to collapse
replace full method with
.method public keyguardDone(Z)V
.registers 6
.parameter "authenticated"
.prologue
const-string v3, "true"
const-string v2, "ro.origin.lockscreen"
.line 334
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "false"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_3c
.line 335
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;
move-result-object v0
invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V
.line 336
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardViewLandroid/content/Intent;
move-result-object v0
if-eqz v0, :cond_3b
.line 337
sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;
const-string v1, "mStartForIntent"
invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/StringV
.line 338
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;
move-result-object v0
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardViewLandroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/IntentV
.line 349
:cond_3b
:goto_3b
return-void
.line 340
:cond_3c
const-string v0, "ro.origin.lockscreen"
const-string v0, "true"
invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/StringLjava/lang/String;
move-result-object v0
const-string v1, "simulateICS"
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/ObjectZ
move-result v0
if-eqz v0, :cond_6d
.line 341
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;
move-result-object v0
invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V
.line 342
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardViewLandroid/content/Intent;
move-result-object v0
if-eqz v0, :cond_3b
.line 343
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;
move-result-object v0
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardViewLandroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/IntentV
goto :goto_3b
.line 346
:cond_6d
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;
invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;
move-result-object v0
invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V
goto :goto_3b
.end method
Click to expand...
Click to collapse
--------------------------------------------------------------------------------------------------------------------------------------
Now save this Smalli
Now search for this
KeyguardScreenCallback.smalli
then search for
.method public abstract goToUnlockScreen()V
.end method
Click to expand...
Click to collapse
then add this below this code
.method public abstract isGotoUnlockscreen(Landroid/content/IntentV
.end method
Click to expand...
Click to collapse
Here our fourth step is completed
Now here we start our 5th step
downlaod this Zip (5th step)
Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)
Now open you build.prop
then search for
# ADDITIONAL_BUILD_PROPERTIES
Click to expand...
Click to collapse
then above it add
#add wanglu 20120811 start
#do not greenorging lockscreen
ro.origin.lockscreen=simulateICS
#add wanglu 20120811 end
Click to expand...
Click to collapse
I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)
Note:
1 .if you are using my work so plz give me credit . because i spend many night and days for getting success.
and
If you are porting this guide To another thread inform me first . then i will create a seprate guide for your device.
by giving you credit and tester
​
@SK(SurajKumar) will it can work in Galaxy Y without got bootloop ? Cause i follow your guide in other thread but i got Bootloop
galaxy y question
GSculerlor said:
@SK(SurajKumar) will it can work in Galaxy Y without got bootloop ? Cause i follow your guide in other thread but i got Bootloop
Click to expand...
Click to collapse
if your are facing bootloop.
that means lockscreen trying to work.
problem may be you place wrong ids . paste your logcat here i will help you.
i already to told you all to work carefully
Great
working with karbonn a9 but need hdpi icons...
Like a Charm
SK(SurajKumar) said:
I am Suraj ​
again with New guide
How to port ICs lockscreen TO GB
Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device
THis is full explained Guide dont bore
So let start
We have to Follow 5 step for gettings ics lockscreen
first step here start
download this zip firststep.zip
1.copy res folder to your framework-res folder
2. Open ids.xml under res/values foler and add these in last above
Code:
<item type="id" name="rl_multiWaveView">false</item>
<item type="id" name="digital_clock">false</item>
<item type="id" name="dateShow">false</item>
<item type="id" name="iv_drop">false</item>
<item type="id" name="ib_greenorange">false</item>
<item type="id" name="rl_click_after">false</item>
<item type="id" name="ib_photo">false</item>
<item type="id" name="ib_greenorange_gone">false</item>
<item type="id" name="ib_phone">false</item>
<item type="id" name="tv_phone_unread">false</item>
<item type="id" name="ib_sms">false</item>
<item type="id" name="tv_sms_unread">false</item>
<item type="id" name="ib_home">false</item>
<item type="id" name="tv_remind">false</item>
<item type="id" name="rl_multiWaveViewforsimulateics">false</item>
<item type="id" name="iv_wave">false</item>
<item type="id" name="iv_wave1">false</item>
<item type="id" name="iv_wave2">false</item>
<item type="id" name="iv_circle">false</item>
3.. compile the framework-res.apk
4.Now decompile your framework-res.apk
Now open your public.xml
Leave it alone Now first step complete
:fingers-crossed:
TIME TO DO SECOND SEC0ND STEP
HERE WE START
dOWNLAOD THIS zIP.(SECOND STEP.ZIP)
thats our smalli editing part
1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)
NOW copy all smalli to your decompiled android.policy .jar folder one by one
Now open all files related to com\android\internal\policy\impl mine files
Search " 0x10" Copy the whole id .
Open my provided public.xml
Search for that id in my public.xml
Copy the text of that id.
Like if my Public id is "0x101000e"
but in you pubilc.xml it start from "0x0101000e" means you have to add 0 before 1
its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop
NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART
SO HERE WE START
DOWNLOAD THIS ZIP (THIRD PART.ZIP)
thats our Main and difficult part
in your android.policy.jar decompiled folder
search for LockPatternKeyguardView.smalli
open it ..
then search for
then below it add
then search for
then after
add this
then search for
then add this code under
Now our third step is completed
---------------------------------------------------------------------------------
Now our forth step here start
1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)
search for LockPatternKeyguardView$1.smalli
Now open it
then search for
then you will see this method
so delete this full method
and add this
Now search for
then above it add this
========================================================================================================
Now search for
replace full method with
--------------------------------------------------------------------------------------------------------------------------------------
Now save this Smalli
Now search for this
KeyguardScreenCallback.smalli
then search for
then add this below this code
Here our fourth step is completed
Now here we start our 5th step
downlaod this Zip (5th step)
Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)
Now open you build.prop
then search for
then above it add
I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)
Note:
1 .if you are using my work so plz give me credit . because i spend many night and days for getting success.
and
If you are porting this guide To another thread inform me first . then i will create a seprate guide for your device.
by giving you credit and tester
​
Click to expand...
Click to collapse
Works on galaxy pocket..
But from step 4,
It should be LockPatternKeyguardView$2.smali
-- Please include this on the Guide..
JUST PRESS THANKS !!
i got too much error tring tmrw again with fresh mind @SK Bro
i have galaxy pocket duos tdy tried but getting bootloop error and other error too much
Jom_o1 said:
[/HIDE]
Works on galaxy pocket..
But from step 4,
It should be LockPatternKeyguardView$2.smali
-- Please include this on the Guide..
JUST PRESS THANKS !!
Click to expand...
Click to collapse
thanks bro actually every device have different way to port lockscreen or lockscreen smalli so we have to find it our self . but thanks bro i will edit my thread
it can be port easily but need to do little bit more hard work
djraje said:
i got too much error tring tmrw again with fresh mind @SK Bro
i have galaxy pocket duos tdy tried but getting bootloop error and other error too much
Click to expand...
Click to collapse
it can be port easily but need to do little bit more hard work
ya bro i back
SK(SurajKumar) said:
it can be port easily but need to do little bit more hard work
Click to expand...
Click to collapse
tell bro
upload your logcat
djraje said:
tell bro
Click to expand...
Click to collapse
bro can you upload your logcat
SK(SurajKumar) said:
bro can you upload your logcat
Click to expand...
Click to collapse
cant bro coz i delete it after flash... when it not work ........
Re i am having compiling errors
Cyber Assassin said:
i am having compiling errors
View attachment 3111087
help me plz
my stock android.policy.jar
link: db.tt/wZKnMk1i
my modified classout
link: db.tt/9v2FMj0j
Sent from my mediatek gb device
Click to expand...
Click to collapse
Wait for some day i will uplaod for you
guys can u explain to me about this part???
1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)
NOW copy all smalli to your decompiled android.policy .jar folder one by one
Now open all files related to com\android\internal\policy\impl mine files
Search " 0x10" Copy the whole id .
Open my provided public.xml
Search for that id in my public.xml
Copy the text of that id.
Like if my Public id is "0x101000e"
but in you pubilc.xml it start from "0x0101000e" means you have to add 0 before 1
its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop
Click to expand...
Click to collapse
with SS pls ty

[GUIDE][PORT] [cm11] Dinamic statusbar

what is Dinamic statusbar??
can you see here
or here my original facebook post​
i comparing from another rom include this feature to pure CM11 base
big thanks to
Allah swt
my family
CyanogenMod
@ocoot
@bamzzz
@qoejohn
prabu siliwangi
anggi muhammad
syaeful anwar
deddy kitul
you
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk and JAR file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else ( i use apktool 1.5.2 )
download file recources below
Settings.apk
Decompile Settings.apk
add string
Code:
<string name="dynamic_system_bars_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>
open
res/xml/display_settings.xml
add wherever you want
Code:
<PreferenceScreen android:title="Dinamic Status Bar" android:fragment="com.android.settings.oplosandev.DSBSettings" />
place DSBSettings.smali into folder "smali" ,after recompile and decompile automatic place directories name smali
Recompile
Decompile
open
DSBSettings.smali
matched
const v0, 0x7f050071 #type="xml" name="dsb_settings"
Recompile
sign
push
SystemUI.apk
decompile SystemUI
open
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions.smali
find
Code:
# instance fields
add above
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$1;,
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$GradientObserver;,
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;
}
.end annotation
findmethod
Code:
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;)V
replace with
Code:
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;)V
.locals 4
.parameter "view"
.prologue
const/4 v3, 0x1
.line 47
new-instance v1, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;
invoke-virtual {p1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->getContext()Landroid/content/Context;
move-result-object v2
invoke-direct {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable;-><init>(Landroid/content/Context;)V
invoke-direct {p0, p1, v1}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 48
iput-object p1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
.line 49
iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
invoke-virtual {v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->getContext()Landroid/content/Context;
move-result-object v1
invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
.line 50
.local v0, res:Landroid/content/res/Resources;
const v1, 0x7f0b002b [COLOR="Red"]#type="dimen" name="status_bar_icon_drawing_alpha"[/COLOR]
invoke-virtual {v0, v1, v3, v3}, Landroid/content/res/Resources;->getFraction(III)F
move-result v1
iput v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions;->mIconAlphaWhenOpaque:F
.line 51
return-void
.end method
skip this step if in your have it
add this
dimens.xml
Code:
<item type="dimen" name="status_bar_icon_drawing_alpha">75.0%</item>
colors.xml
Code:
<color name="status_bar_background_opaque">#ff000000</color>
<color name="status_bar_background_semi_transparent">#66000000</color>
intergers.xml
Code:
<integer name="dsb_transition_duration">500</integer>
push smali
recoompile
decompile
open public.xml
and matched all id
Lcom/android/systemui/statusbar/phone/PhoneStatusBarTransitions$PhoneStatusBarBackgroundDrawable.smali
Code:
const v1, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable.smali
Code:
const v1, 0x7f090015 #type="integer" name="dsb_transition_duration"
Navbar
open
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;
find code
Code:
# instance fields
.field private final mBarService:Lcom/android/internal/statusbar/IStatusBarService;
add above
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$GradientObserver;,
Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;
}
.end annotation
find
Code:
.method public constructor
change like it
Code:
# direct methods
.method public constructor <init>(Lcom/android/systemui/statusbar/phone/NavigationBarView;)V
.locals 3
.parameter "view"
.prologue
.line 50
new-instance v0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;
invoke-virtual {p1}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->getContext()Landroid/content/Context;
move-result-object v1
invoke-direct {v0, v1}, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$NavigationBarBackgroundDrawable;-><init>(Landroid/content/Context;)V
invoke-direct {p0, p1, v0}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 242
new-instance v0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$2;
invoke-direct {v0, p0}, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions$2;-><init>(Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;)V
iput-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mLightsOutListener:Landroid/view/View$OnTouchListener;
.line 52
iput-object p1, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mView:Lcom/android/systemui/statusbar/phone/NavigationBarView;
.line 53
const-string v0, "statusbar"
invoke-static {v0}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
move-result-object v0
invoke-static {v0}, Lcom/android/internal/statusbar/IStatusBarService$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/statusbar/IStatusBarService;
move-result-object v0
iput-object v0, p0, Lcom/android/systemui/statusbar/phone/NavigationBarTransitions;->mBarService:Lcom/android/internal/statusbar/IStatusBarService;
.line 55
return-void
.end method
save
open
Lcom/android/systemui/statusbar/phone/NavigationBarView$StatusBarBlockerTransitions;
find
Code:
.method public constructor
change to
Code:
# direct methods
.method public constructor <init>(Landroid/view/View;)V
.locals 5
.parameter "statusBarBlocker"
.prologue
.line 1268
new-instance v0, Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;
invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v1
const v2, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;-><init>(Landroid/content/Context;III)V
invoke-direct {p0, p1, v0}, Lcom/android/systemui/statusbar/phone/BarTransitions;-><init>(Landroid/view/View;Lcom/android/systemui/statusbar/phone/BarTransitions$BarBackgroundDrawable;)V
.line 1273
return-void
.end method
and matched all id
Code:
const v2, 0x7f07000a #type="color" name="status_bar_background_opaque"
const v3, 0x7f07000b #type="color" name="status_bar_background_semi_transparent"
const v4, 0x7f0201dd #type="drawable" name="status_background"
do enabling navigation bar via build.prop
add this code at ADDITIONAL_BUILD_PROPERTIES
Code:
qemu.hw.mainkeys=0
push
Settings.apk /system/priv-app/here
SystemUI.apk /system/priv-app/here
systemui.so /system/lib/here
or other way, u can try methode flasahble.zip,adb,or other
Hi will it work in gingerbread phones? coz my systemui does not have phone folder under com/android/systemui/statusbar/
RESERVED !!!
nice share omm...
Jedz77 said:
Hi will it work in gingerbread phones? coz my systemui does not have phone folder under com/android/systemui/statusbar/
Click to expand...
Click to collapse
cm11 only.....
stock kk adjust
dugeriss said:
cm11 only.....
stock kk adjust
Click to expand...
Click to collapse
oh my bad. sorry. i really like it though. anyways thanks maan nice mod btw
dugeriss said:
what is Dinamic statusbar??
can you see here
or here my original facebook post​
i comparing from another rom include this feature to pure CM11 base
big thanks to
Allah swt
my family
CyanogenMod
@ocoot
@bamzzz
@qoejohn
prabu siliwangi
anggi muhammad
syaeful anwar
deddy kitul
you
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk and JAR file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else ( i use apktool 1.5.2 )
download file recources below
Click to expand...
Click to collapse
Hey Great Guide!!Thank you for the willingness!Please could you make a guide on how to port Hover to cm11 ?Please it's so important for me and I've searched so many times on web but I haven't found nothing and I don't know how to do it,Please
ah..... great work sir :good: :fingers-crossed:
kitul..!!
Nice :good:
Ahmm .. Sir... I tried This one on cm11 ... but it doesnt force closes .. rather it gets black screen? i tried your guide twice .. but the same thing happens.. Please Help... BTw this guide is good
Thanks...
my Stock Kitkat 4.4.2 :good:
Can someone help me to upload cm 11 r26 statusbar without sim number indicator ??, my pc Hard disk got broken , lost all data, thanks
Thank you sir ,,
Micky99 said:
Hey Great Guide!!Thank you for the willingness!Please could you make a guide on how to port Hover to cm11 ?Please it's so important for me and I've searched so many times on web but I haven't found nothing and I don't know how to do it,Please
Click to expand...
Click to collapse
Hover is not easy because it gas so many commits with many additions and a lot of files changed
srisurya95 said:
Hover is not easy because it gas so many commits with many additions and a lot of files changed
Click to expand...
Click to collapse
Should I see your answer as a "no I won't help you",or do you mean you want to help me but it won't be easy?What's the problem?Do you think the hover related commits are too much for only two persons?
Micky99 said:
Should I see your answer as a "no I won't help you",or do you mean you want to help me but it won't be easy?What's the problem?Do you think the hover related commits are too much for only two persons?
Click to expand...
Click to collapse
I say its not possible/not so easy
srisurya95 said:
I say its not possible/not so easy
Click to expand...
Click to collapse
Dont you absolutely know some of the hover related commits?

[Guide][tut][UP 21/JAN/15] Show/Hide Brightness Slider on notification Quick settings

Hello guys
Happy new Year for first
This is my first tut in This new year 2016
All you need is Deodexed SystemUI.apk and Settings.apk
1. Decompile SystemUI.apk
2. Open SystemUI.apk/smali/com/android/systemui/qs/QSPanel.smali
3. Find this code
Code:
.field private mBrightnessPaddingTop:I
Below that add this code
Code:
.field private mBrightnessSliderEnabled:Z
4. Search for this Method
Code:
.method private setDetailRecord(Lcom/android/systemui/qs/QSPanel$Record;)V
and above that method add this complete method
Code:
.method private isBrightnessSliderEnabled()I
.locals 4
const/4 v3, 0x0
iget-object v0, p0, Lcom/android/systemui/qs/QSPanel;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
const-string v1, "brightness_slider_show"
const/4 v2, 0x1
invoke-static {v0, v1, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
if-eqz v0, :cond_0
const/4 v3, 0x1
:cond_0
iput-boolean v3, p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessSliderEnabled:Z
return v3
.end method
5. Search for this method
Code:
.method private showDetail(ZLcom/android/systemui/qs/QSPanel$Record;)V
Above that method, add this method
Code:
.method private showBrightnessSlider()Z
.locals 5
const/16 v3, 0x8
const/4 v2, 0x0
const v1, 0x7f10012e
invoke-direct {p0}, Lcom/android/systemui/qs/QSPanel;->isBrightnessSliderEnabled()I
move-result v4
invoke-virtual {p0, v1}, Lcom/android/systemui/qs/QSPanel;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Lcom/android/systemui/settings/ToggleSlider;
if-eqz v4, :cond_0
iget-boolean v1, p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessSliderEnabled:Z
if-eqz v1, :cond_0
iget-object v1, p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessView:Landroid/view/View;
invoke-virtual {v1, v2}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v0, v2}, Lcom/android/systemui/settings/ToggleSlider;->setVisibility(I)V
:goto_0
invoke-virtual {p0}, Lcom/android/systemui/qs/QSPanel;->updateResources()V
iget-boolean v1, p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessSliderEnabled:Z
return v1
:cond_0
iget-object v1, p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessView:Landroid/view/View;
invoke-virtual {v1, v3}, Landroid/view/View;->setVisibility(I)V
invoke-virtual {v0, v3}, Lcom/android/systemui/settings/ToggleSlider;->setVisibility(I)V
goto :goto_0
.end method
6. Now Look for this Code
Code:
if-eqz p1, :[COLOR="red"]cond_3[/COLOR]
.line 216
iget-object [COLOR="Red"]v2[/COLOR], p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessController:Lcom/android/systemui/settings/BrightnessController;
Add the code above the .line 216 ( this .line 216 will not be same with all devices )
Code:
invoke-direct {p0}, Lcom/android/systemui/qs/QSPanel;->showBrightnessSlider()Z
move-result [COLOR="red"]v2[/COLOR]
if-eqz [COLOR="red"]v2[/COLOR], :[COLOR="red"]cond_3[/COLOR]
Finally it looks like
Code:
if-eqz p1, [COLOR="blue"]:cond_3[/COLOR]
[COLOR="Red"] invoke-direct {p0}, Lcom/android/systemui/qs/QSPanel;->showBrightnessSlider()Z
move-result [COLOR="blue"]v2[/COLOR]
if-eqz [COLOR="blue"]v2[/COLOR], [COLOR="blue"]:cond_3[/COLOR][/COLOR]
.line 216
iget-object [COLOR="Blue"]v2[/COLOR], p0, Lcom/android/systemui/qs/QSPanel;->mBrightnessController:Lcom/android/systemui/settings/BrightnessController;
After adding that
replace this Public id
<public type="id" name="brightness_slider" id="0x7f10012e" />
6. Now compile the SystemUI.apk and sign it and replace
Now time to add in the settings look for post #2
adding to Settings
Welcome to easy part on adding the option to hide/show in settings
Method 1
1. Decompile the settings.apk
2. Download this View attachment Slider_Settings.zip and merge to your settings
3. Add the below code to your settings ( i had added to my own settings ) and your wish
Code:
<PreferenceScreen android:title="Statusbar Mod" android:key="statusmod" android:fragment="com.android.settings.rz.Statusmod" />
4. Compile it and Decompile and open
Settings.apk/smali/com/android/settings/rz/Statusmod.smali
5. Compare the Public ID and replace it and recompile
6. God you did man,,, now replace and have fun
Method 2
1. Decompile the Settings.apk
2. Download this View attachment settings.zip and merge to your settings
3. Add the below code to your settings ( i had added to my own settings.xml )
you can add in settings.apk/res/xml/Dispaly_settings.xml
HTML:
<com.android.settings.cyanogenmod.SystemSettingSwitchPreference android:title="Brightness Slider" android:key="brightness_slider_show" android:defaultValue="0" android:summaryOn="Brightness Slider Shown" android:summaryOff="Brightness Slider Hidden" />
and then compile/sign and replace your settings
OR
Try download this ROM Control application (View attachment app-release.apk ) where you can Easily control
All you is just install and have fun
Thanks to @daxgirl for the app source ​
now have fun guys
Thanks to cyanogenmod
Dont Forget to mention me if you used my work
that feels me happy
hello venkat ,
I 've implemented a tutor in, but why every time I switch Brightness Hide its always off if i back from settings..
Can you help me to fix it ???
aNgga - Fe Hung said:
hello venkat ,
I 've implemented a tutor in, but why every time I switch Brightness Hide its always off if i back from settings..
Can you help me to fix it ???
Click to expand...
Click to collapse
thanks for identifying this ( even it works the switch turns off)
i had forgot to define the return value of switch
now its fixed
just replace the settings.zip
and everything will be ok
venkat kamesh said:
thanks for identifying this ( even it works the switch turns off)
i had forgot to define the return value of switch
now its fixed
just replace the settings.zip
and everything will be ok
Click to expand...
Click to collapse
still the same as before ny : ' (
Can you help me bro ??
aNgga - Fe Hung said:
still the same as before ny : ' (
Can you help me bro ??
Click to expand...
Click to collapse
Impossible bro
Try from first if in case
I had tested and many of my team too got it working
venkat kamesh said:
Impossible bro
Try from first if in case
I had tested and many of my team too got it working
Click to expand...
Click to collapse
I try with ur new settings smali and still don't working the switch when I enable and then return to desactivate the switch is unable and don't hide the brightness bar
Bro i think that I found the problem I compare the two smali that u update on the hide show album art and this and are the same maybe u forgot to upload the new
raziel zarafan said:
I try with ur new settings smali and still don't working the switch when I enable and then return to desactivate the switch is unable and don't hide the brightness bar
Click to expand...
Click to collapse
raziel zarafan said:
Bro i think that I found the problem I compare the two smali that u update on the hide show album art and this and are the same maybe u forgot to upload the new
Click to expand...
Click to collapse
No way bro
I had updated both of same file
Tested Moor than enough
If not go through my setting bro
Bin thanks for your tut ! Can you do some tuto with navbar tuning ? Appreciate it
Envoyé de mon E6653 en utilisant Tapatalk
After adding that
replace this Public id
<public type="id" name="brightness_slider" id="0x7f10012e" />
bro i dont understand very well , the public id that i need to replace where i can find the new id , i know to i must open res/xml/public and replace the line that u publish but what new id i must put or where i can find it
raziel zarafan said:
After adding that
replace this Public id
<public type="id" name="brightness_slider" id="0x7f10012e" />
bro i dont understand very well , the public id that i need to replace where i can find the new id , i know to i must open res/xml/public and replace the line that u publish but what new id i must put or where i can find it
Click to expand...
Click to collapse
In the method you have const v1 0x7f10012e
Go to you public.xml and serch for <public type="id" name="brightness_slider, and the public id you have copy and change 0x7f10012e for you public id you copy
dark90 said:
In the method you have const v1 0x7f10012e
Go to you public.xml and serch for <public type="id" name="brightness_slider, and the public id you have copy and change 0x7f10012e for you public id you copy
Click to expand...
Click to collapse
The public id and the const value are the same bro .-. And when I replace the systemui and enable hide it don't work T-T
raziel zarafan said:
The public id and the const value are the same bro .-. And when I replace the systemui and enable hide it don't work T-T
Click to expand...
Click to collapse
You are right i tried and didnt work too
dark90 said:
You are right i tried and didnt work too
Click to expand...
Click to collapse
Maybe something is wrong bro
Not working for me too.. I think some problems with the smali file .. Waiting for OP's replay
raziel zarafan said:
The public id and the const value are the same bro .-. And when I replace the systemui and enable hide it don't work T-T
Click to expand...
Click to collapse
dark90 said:
You are right i tried and didnt work too
Click to expand...
Click to collapse
raziel zarafan said:
Maybe something is wrong bro
Click to expand...
Click to collapse
Rajeev said:
Not working for me too.. I think some problems with the smali file .. Waiting for OP's replay
Click to expand...
Click to collapse
Brothers every thing is working
I had already provided my settings
May be issue from settings
I will provide rom control app
Sure it helps you
venkat kamesh said:
Brothers every thing is working
I had already provided my settings
May be issue from settings
I will provide rom control app
Sure it helps you
Click to expand...
Click to collapse
Already compared ur settings and all bro. Not working..
Rajeev said:
Already compared ur settings and all bro. Not working..
Click to expand...
Click to collapse
Don't worry brother
I already had alternate for this to work
On all switch properties tuts of mine
Now just a moment back I fixed my pc
Once done I will update threads
dark90 said:
You are right i tried and didnt work too
Click to expand...
Click to collapse
raziel zarafan said:
Maybe something is wrong bro
Click to expand...
Click to collapse
Rajeev said:
Not working for me too.. I think some problems with the smali file .. Waiting for OP's replay
Click to expand...
Click to collapse
Brothers The Tut got updated
with new settings smali
i tough smali will make you confused so not provided
any how there are three ways and now its your wish
1.Smali
2.Smali with no Id
or the app control

[Guide][tut] [LP/MM] Cyanogenmod Battery Styles (stock/circle dotted/percentage/cm)

Hello guys
today i would like to post a small tut battery styles
as per users request
first i would like to thank
aliv Rom, Basar and Vanya Melnechenko from MAAADR group
from their source i had ported for LP/MM with small changes
This is specially for sony ( if for any other roms Please compare system_icon.xml )
Features:
Hide/Show Stock battery
Battery Styles
Icon
Percentage
Icon with Percentage
Icon with percentage (JB style)
Circle
Circle with percentage
Dotted Circle
Dotted circle with percentage
No battery
Battery color
Circle animation speed
Percent text color
precent text charging color
apply mods
For this all you required :-
Deodexed SystemUI.apk and patience
look for post #2
Systemui ( First part )
1. Decompile SystemUI.apk
2. Download this Attchment View attachment SystemUI.zip and merge
open systemui.apk/res/arrays.xml
before </resources> add this
Code:
<integer-array name="batterymeter_color_levels_1">
<item>4</item>
<item>15</item>
<item>100</item>
</integer-array>
<array name="batterymeter_color_values_1">
<item>#ffff3300</item>
<item>#ffff3300</item>
<item>#ffffffff</item>
</array>
<integer-array name="batterymeter_inverted_bolt_points">
<item>743</item>
<item>73</item>
<item>743</item>
<item>292</item>
<item>442</item>
<item>201</item>
<item>442</item>
<item>400</item>
<item>0</item>
<item>20</item>
<item>369</item>
<item>157</item>
<item>369</item>
<item>0</item>
</integer-array>
open systemui.apk/res/attrs.xml
before </resources> add this
Code:
<attr name="batteryView" format="string" />
open systemui.apk/res/colors.xml
before </resources> add this
Code:
<color name="batterymeter_critical">#ffff3300</color>
<color name="batterymeter_low">#ffff3300</color>
<color name="batterymeter_full">#ffffffff</color>
<color name="battery_text_color">#ffffffff</color>
<color name="statusbar_clock_color">#ffffffff</color>
open systemui.apk/res/styles.xmlbefore </resources> add this
Code:
<style name="TextAppearance.StatusBar.Battery" parent="@android:style/TextAppearance.StatusBar.Icon">
<item name="android:textSize">13.0dip</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">@color/status_bar_clock_color</item>
</style>
now compile and decompile for public ids
Now open com/android/systemui/statusbar/phone/phonestatusbar.smali
find this
Code:
Lcom/android/systemui/statusbar/phone/PhoneStatusBar$H;
before that add this line
Code:
Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatterySettingsObserver;,
now look for this
Code:
.field private mBackdropInterpolator:Landroid/view/animation/Interpolator;
below that add these lines
Code:
.field private mBattery:Lcom/android/systemui/BatteryMeterViewMod;
.field private mCircleBattery:Lcom/android/systemui/BatteryCircleMeterView;
find this access code
Code:
.method static synthetic access$7800(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)Landroid/widget/ImageView;
access$7800 may differ so dont worry
above that add this
Code:
.method static synthetic access$77000(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;)V
.locals 0
.param p0, "x0" # Lcom/android/systemui/statusbar/phone/PhoneStatusBar;
.prologue
.line 155
invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->updateBatteryIcons()V
return-void
.end method
now look for this method
Code:
.method private updateClearAll()V
above that add this method
Code:
.method private updateBatteryIcons()V
.locals 2
.prologue
const/4 v1, 0x0
.line 723
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBattery:Lcom/android/systemui/BatteryMeterViewMod;
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mCircleBattery:Lcom/android/systemui/BatteryCircleMeterView;
if-eqz v0, :cond_0
.line 724
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBattery:Lcom/android/systemui/BatteryMeterViewMod;
invoke-virtual {v0, v1}, Lcom/android/systemui/BatteryMeterViewMod;->updateSettings(Z)V
.line 725
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mCircleBattery:Lcom/android/systemui/BatteryCircleMeterView;
invoke-virtual {v0, v1}, Lcom/android/systemui/BatteryCircleMeterView;->updateSettings(Z)V
.line 727
:cond_0
return-void
.end method
now look for this method
Code:
.method protected makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
in that method
look for this line
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
below that line add this code
Code:
move-object/from16 v0, p0
iget-object v1, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
const v2, 0x7f10021d
invoke-virtual {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;
move-result-object v1
check-cast v1, Lcom/android/systemui/BatteryMeterViewMod;
move-object/from16 v0, p0
iput-object v1, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBattery:Lcom/android/systemui/BatteryMeterViewMod;
iget-object v1, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
const v2, 0x7f10021c
invoke-virtual {v1, v2}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->findViewById(I)Landroid/view/View;
move-result-object v1
check-cast v1, Lcom/android/systemui/BatteryCircleMeterView;
move-object/from16 v0, p0
iput-object v1, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mCircleBattery:Lcom/android/systemui/BatteryCircleMeterView;
invoke-direct/range {p0 .. p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->updateBatteryIcons()V
change the ids compare with mine and replace with yours
now look for this method
Code:
.method public start()V
in that find this line
Code:
new-instance v2, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;
above that line add this
Code:
new-instance v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatterySettingsObserver;
iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHandler:Lcom/android/systemui/statusbar/BaseStatusBar$H;
invoke-direct {v0, p0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatterySettingsObserver;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/os/Handler;)V
invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$BatterySettingsObserver;->observe()V
save it and close
3. Now open com/android/systemui/R$styleable.smali
look for this
Code:
.field public static final AnalogClock:[I
below that add this
Code:
.field public static final BatteryIcon:[I
now look for this
Code:
sput-object v0, Lcom/android/systemui/R$styleable;->AnalogClock:[I
below add this
Code:
new-array v0, v3, [I
const v1, 0x7f01003c
aput v1, v0, v2
sput-object v0, Lcom/android/systemui/R$styleable;->BatteryIcon:[I
compare id from mine and replace
save it and close
compare my public ids and replace with your ids
from these files
com/android/systemui/BatteryCircleMeterView
com/android/systemui/BatteryMeterView
com/android/systemui/BatteryMeterView$BatteryTracker
and you are finally done
save it all and compile and replace
settings.apk final part editing
1. Download this app View attachment app-release.apk
2. Install the app
3. Have fun with this mod
no time to make settings
but one fine day i will add tut to add in settings app
Have fun
Dont forget to mention me if you used my work
Mod edit:
OP quote removed
wait for add to settings sir :fingers-crossed:
Work for systemui xperia X mod?
InitialL_Dee said:
wait for add to settings sir :fingers-crossed:
Click to expand...
Click to collapse
yhu dnt need to quote tha whole post just to post please.... edit please!
InitialL_Dee said:
wait for add to settings sir :fingers-crossed:
Click to expand...
Click to collapse
Hmm sure I will add but when I am free haha
Delete the quote bro
Make thread clean
vandiaz_sairavinz said:
Work for systemui xperia X mod?
Click to expand...
Click to collapse
Yes will work bro tested
@venkat kamesh thanks for the guide. I am going to have a busy weekend. ?
Sent from my SM-G935F using Tapatalk
Nice guide sir..
And By the way, did you ever try to port battery style from bliss pop 5.1..?
Screenshot please. thanks
venkat kamesh said:
vandiaz_sairavinz said:
Work for systemui xperia X mod?
Click to expand...
Click to collapse
Yes will work bro tested
Click to expand...
Click to collapse
I'm using Xperia X SystemUI, but my .smali doesn't have these lines:
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
Code:
new-instance v2, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;
Is there something else I should be looking for?
@venkat kamesh
Hi bro
I can't find this line
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
I am using Xperia X SystemUI. U told its working with X SystemUI too.
@Bloodlvst bro same here.
Awsm mod bro ?
Any guide(mod or theming) of xperia x systemui for cm12.1 ☺
Thx bro
Bloodlvst said:
I'm using Xperia X SystemUI, but my .smali doesn't have these lines:
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
Code:
new-instance v2, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;
Is there something else I should be looking for?
Click to expand...
Click to collapse
Rajeev said:
@venkat kamesh
Hi bro
I can't find this line
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
I am using Xperia X SystemUI. U told its working with X SystemUI too.
@Bloodlvst bro same here.
Click to expand...
Click to collapse
Instead of this
Code:
invoke-virtual {v0, v3, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
Search for this
Code:
invoke-virtual/range {v4 .. v9}, Landroid/content/Context;->registerReceiverAsUser(Landroid/content/BroadcastReceiver;Landroid/os/UserHandle;Landroid/content/IntentFilter;Ljava/lang/String;Landroid/os/Handler;)Landroid/content/Intent;
Instead of this
Code:
new-instance v2, Lcom/android/systemui/statusbar/phone/PhoneStatusBarPolicy;
Search for this
Code:
:cond_0
invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->addNavigationBar()V
Just search these lines instead of those two and do all stuff as said by op.
jitz975 said:
Just search these lines instead of those two and do all stuff as said by op.
Click to expand...
Click to collapse
Gave this a shot, but I'm getting force close in SystemUI.
Couple of notes - the 2 files at the end:
BatteryMeterView
BatteryMeterView$BatteryTracker
Am I editing those or am I editing:
BatteryMeterViewMod
BatteryMeterViewMod$BatteryTracker
I ask because the puiblic ID's in BatteryMeterView don't match at all with the public(compare).xml, but the "mod" ones do. Is there a step missing?
Hopefully it's just a small issue! :fingers-crossed:
Bloodlvst said:
Gave this a shot, but I'm getting force close in SystemUI.
Couple of notes - the 2 files at the end:
BatteryMeterView
BatteryMeterView$BatteryTracker
Am I editing those or am I editing:
BatteryMeterViewMod
BatteryMeterViewMod$BatteryTracker
I ask because the puiblic ID's in BatteryMeterView don't match at all with the public(compare).xml, but the "mod" ones do. Is there a step missing?
Hopefully it's just a small issue! :fingers-crossed:
Click to expand...
Click to collapse
Bro i did this mod, only using this guide and it worked at first go.
jitz975 said:
Bro i did this mod, only using this guide and it worked at first go.
Click to expand...
Click to collapse
Did you change the ID's in:
BatteryMeterView
BatteryMeterView$BatteryTracker
Or the ones in:
BatteryMeterViewMod
BatteryMeterViewMod$BatteryTracker
I'll give it another go!
Bloodlvst said:
Did you change the ID's in:
BatteryMeterView
BatteryMeterView$BatteryTracker
Or the ones in:
BatteryMeterViewMod
BatteryMeterViewMod$BatteryTracker
I'll give it another go!
Click to expand...
Click to collapse
Yes, id's are in these two
BatteryMeterViewMod
BatteryMeterViewMod$BatteryTracker, op missed that mod part
If using Xperia X UI, you will need to replace your system_icons.xml with the following code:
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:gravity="center_vertical" android:id="@id/system_icons" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<com.android.keyguard.AlphaOptimizedLinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="0.0dip" layout="@layout/signal_cluster_view" />
<com.android.systemui.BatteryMeterViewMod android:id="@+id/battery_stock" android:visibility="gone" android:layout_width="10.5dip" android:layout_height="16.0dip" android:layout_marginBottom="1.0px" android:layout_marginStart="0.0dip" systemui:batteryView="statusbar" />
<com.android.systemui.BatteryCircleMeterView android:textAppearance="@style/TextAppearance.StatusBar.Battery" android:gravity="bottom" android:id="@+id/circle_battery" android:paddingLeft="0.0dip" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" systemui:batteryView="statusbar" />
<com.android.systemui.rz.LeftLayout android:layout_width="wrap_content" android:layout_height="wrap_content" key="battery_hide">
<LinearLayout android:gravity="center_vertical" android:id="@id/battery_group" android:layout_width="wrap_content" android:layout_height="wrap_content">
<com.sonymobile.systemui.BatteryLevelView android:textSize="@dimen/battery_level_text_size" android:textColor="#ffffffff" android:layout_gravity="center_vertical" android:id="@id/battery_level" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:importantForAccessibility="noHideDescendants" />
<com.android.systemui.BatteryMeterView android:id="@id/battery" android:layout_width="9.5dip" android:layout_height="14.5dip" android:layout_marginBottom="@dimen/battery_margin_bottom" android:layout_marginStart="@dimen/battery_margin_start" />
</LinearLayout>
</com.android.systemui.rz.LeftLayout>
</LinearLayout>
@venkat kamesh - Bro, is there any plans to make it so you don't need to restart systemUI to make changes? Or is this a limitation of Marshmallow?

Categories

Resources