Related
MOD/DEV/GUIDE
TABBED SETTINGS WITH SWIPE FOR CM9/CM10/CM10.1
{
"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"
}
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Click to expand...
Click to collapse
Hi..Hi..hello XDA, esspecially for Developer only
I want to share to you all how to modded your settings to have three tabs with swipe
I am coming from this guide thread,. http://forum.xda-developers.com/showthread.php?t=2103158
big thanks to the author BigSplit
but I got error when following the step of the guide, and finally thanks to Recognized Contributor tdunham for helping me solving my error and explained that some part of the guide is not for all rom ,
you can read his explanation of additional porting instructions if you want to apply this mod to all ICS+ base rom, in post #33 of the author guide -> http://forum.xda-developers.com/showpost.php?p=40907670&postcount=33,
now in here what I'm trying to share to you all is what have recognized contributor tdunham explained in his additional porting guide, and re-write again here as simple as easy to understand,. I hope so ,.lollss ,.
I use CM9, CM10, and CM10.1 here as base
And here are example that I've made for my device Samsung Galaxy Wonder GT-I8150
[MOD][CM9] Tabbed settings with swipe
[MOD][CM10] Tabbed settings with swipe
[MOD][CM10.1] Tabbed settings with swipe
ok lets go to guide:
First of all need some requirement for this mod-guide
Requirement:
- Brain
- Patient
- Experience
- Know how to decompile/recompiling apk file
- Notepad++
- Tool for decompiling, : Apkmanager/apktool/virtous/apkmultitools/ or else
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Click to expand...
Click to collapse
Click to expand...
Click to collapse
LET'S Continue to the GUIDE
Next, go to Post #2, Post #3, Post #4
CREDIT & THANKS TO :
ORIGINAL AUTHOR "BigSplit
Recognized Contributor "tdunham"
XDA
CYANOGENMOD
ALL OF YOU
Sorry if I've missed it
OKE LETS GO TO GUIDE
STEP -1
Decompile your CM9, CM10. or CM10.1 Settings.apk
Open 'res/values/strings.xml' from the decompiled settings apk in your favorite text editor and add the following to the end of the list of strings...
Code:
<string name="personalized_setting">Personal</string>
<string name="device_setting">System</string>
<string name="app_setting">Applications</string>
Open 'res/values/ids.xml' from the decompiled settings apk in your favorite text editor and add the following to the end of the list of ID's
Code:
<item type="id" name="linearLayout1">false</item>
<item type="id" name="personalized_tab">false</item>
<item type="id" name="device_tab">false</item>
<item type="id" name="app_tab">false</item>
<item type="id" name="cursor">false</item>
<item type="id" name="vPager">false</item>
for CM9 download this : CM9_SOURCE_TABBED_SETTINGS
exstract it and merge it to your decompiled settings.apk
for CM10 and CM10.1 download this : CM10_and_CM10.1_SOURCE_TABBED_SETTINGS
exstract it and merge it to your decompiled settings.apk
STEP -2
FOR CM9
go to :
\smali\com\android\settings\
Copy
Settings.smali
Settings$1.smali
Settings$HeaderAdapter$HeaderViewHolder.smali
Settings$HeaderAdapter.smali
to 3 part :
1st part , rename them from :
Copy of Settings.smali to AppSettings.smali
Copy of Settings$1.smali to AppSettings$1.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to AppSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to AppSettings$HeaderAdapter.smali
2nd part , rename them from :
Copy of Settings.smali to DeviceSettings.smali
Copy of Settings$1.smali to DeviceSettings$1.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to DeviceSettings$HeaderAdapter.smali
3rd part, rename them from :
Copy of Settings.smali to PersonalSettings.smali
Copy of Settings$1.smali to PersonalSettings$1.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to PersonalSettings$HeaderAdapter.smali
STEP -3
We are going to edit all lines that contain this line
Code:
Lcom/android/settings/Settings
Lcom/android/settings/Settings$1
Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder
Lcom/android/settings/Settings$HeaderAdapter
in all renamed smali
but Before doing STEP -3, you must read this first : http://forum.xda-developers.com/showpost.php?p=41286468&postcount=3
Open in text editor/Notepad++
AppSettings.smali
AppSettings$1.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
edit all lines in that all smali from :
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/AppSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/AppSettings$1
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/AppSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/AppSettings$HeaderAdapter
and so is edit all lines in
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
DeviceSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/DeviceSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/DeviceSettings$1
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter
and so is edit all lines in
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
PersonalSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/PersonalSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/PersonalSettings$1
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter
STEP -2
FOR CM10
go to :
\smali\com\android\settings\
Copy
Settings.smali
Settings$1.smali
Settings$2.smali
Settings$HeaderAdapter$HeaderViewHolder.smali
Settings$HeaderAdapter.smali
to 3 part :
1st part , rename them from :
Copy of Settings.smali to AppSettings.smali
Copy of Settings$1.smali to AppSettings$1.smali
Copy of Settings$2.smali to AppSettings$2.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to AppSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to AppSettings$HeaderAdapter.smali
2nd part , rename them from :
Copy of Settings.smali to DeviceSettings.smali
Copy of Settings$1.smali to DeviceSettings$1.smali
Copy of Settings$2.smali to DeviceSettings$2.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to DeviceSettings$HeaderAdapter.smali
3rd part, rename them from :
Copy of Settings.smali to PersonalSettings.smali
Copy of Settings$1.smali to PersonalSettings$1.smali
Copy of Settings$2.smali to PersonalSettings$2.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to PersonalSettings$HeaderAdapter.smali
STEP -3
We are going to edit all lines that contain this line
Code:
Lcom/android/settings/Settings
Lcom/android/settings/Settings$1
Lcom/android/settings/Settings$2
Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder
Lcom/android/settings/Settings$HeaderAdapter
in all renamed smali
but Before doing STEP -3, you must read this first : http://forum.xda-developers.com/showpost.php?p=41286468&postcount=3
Open in text editor/Notepad++
AppSettings.smali
AppSettings$1.smali
AppSettings$2.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
edit all lines in that all smali from :
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/AppSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/AppSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/AppSettings$2
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/AppSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/AppSettings$HeaderAdapter
and so is edit all lines in
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$2.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
DeviceSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/DeviceSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/DeviceSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/DeviceSettings$2
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter
and so is edit all lines in
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$2.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
PersonalSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/PersonalSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/PersonalSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/PersonalSettings$2
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter
STEP -2
FOR CM10.1
go to :
\smali\com\android\settings\
Copy
Settings.smali
Settings$1.smali
Settings$2.smali
Settings$3.smali
Settings$HeaderAdapter$HeaderViewHolder.smali
Settings$HeaderAdapter.smali
to 3 part :
1st part , rename them from :
Copy of Settings.smali to AppSettings.smali
Copy of Settings$1.smali to AppSettings$1.smali
Copy of Settings$2.smali to AppSettings$2.smali
Copy of Settings$3.smali to AppSettings$3.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to AppSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to AppSettings$HeaderAdapter.smali
2nd part , rename them from :
Copy of Settings.smali to DeviceSettings.smali
Copy of Settings$1.smali to DeviceSettings$1.smali
Copy of Settings$2.smali to DeviceSettings$2.smali
Copy of Settings$3.smali to DeviceSettings$3.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to DeviceSettings$HeaderAdapter.smali
3rd part, rename them from :
Copy of Settings.smali to PersonalSettings.smali
Copy of Settings$1.smali to PersonalSettings$1.smali
Copy of Settings$2.smali to PersonalSettings$2.smali
Copy of Settings$3.smali to PersonalSettings$3.smali
Copy of Settings$HeaderAdapter$HeaderViewHolder.smali to PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
Copy of Settings$HeaderAdapter.smali to PersonalSettings$HeaderAdapter.smali
STEP -3
We are going to edit all lines that contain this line
Code:
Lcom/android/settings/Settings
Lcom/android/settings/Settings$1
Lcom/android/settings/Settings$2
Lcom/android/settings/Settings$3
Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder
Lcom/android/settings/Settings$HeaderAdapter
in all renamed smali
but Before doing STEP -3, you must read this first : http://forum.xda-developers.com/showpost.php?p=41286468&postcount=3
Open in text editor/Notepad++
AppSettings.smali
AppSettings$1.smali
AppSettings$2.smali
AppSettings$3.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
edit all lines in that all smali from :
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/AppSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/AppSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/AppSettings$2
if the line is, Lcom/android/settings/Settings$3 edit it to become Lcom/android/settings/AppSettings$3
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/AppSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/AppSettings$HeaderAdapter
and so is edit all lines in
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$2.smali
DeviceSettings$3.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
DeviceSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/DeviceSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/DeviceSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/DeviceSettings$2
if the line is, Lcom/android/settings/Settings$3 edit it to become Lcom/android/settings/DeviceSettings$3
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/DeviceSettings$HeaderAdapter
and so is edit all lines in
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$2.smali
PersonalSettings$3.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
PersonalSettings$HeaderAdapter.smali
if the line is, Lcom/android/settings/Settings edit it to become Lcom/android/settings/PersonalSettings
if the line is, Lcom/android/settings/Settings$1 edit it to become Lcom/android/settings/PersonalSettings$1
if the line is, Lcom/android/settings/Settings$2 edit it to become Lcom/android/settings/PersonalSettings$2
if the line is, Lcom/android/settings/Settings$3 edit it to become Lcom/android/settings/PersonalSettings$3
if the line is, Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter$HeaderViewHolder
if the line is, Lcom/android/settings/Settings$HeaderAdapter edit it to become Lcom/android/settings/PersonalSettings$HeaderAdapter
DONE AND COMPILE ,
FOR CM9, CM10 & CM10.1 CONTINUE TO NEXT STEP
STEP 4 IN POST #4
ATTENTION !!!
there is an exception of editing all line, that you must not edit or not allowed to edit All lines on annotation section in :
FOR CM9
in
AppSettings.smali
AppSettings$1.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smal i
DeviceSettings$HeaderAdapter.smali
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.sm ali
PersonalSettings$HeaderAdapter.smali
FOR CM10
in
AppSettings.smali
AppSettings$1.smali
AppSettings$2.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$2.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smali
DeviceSettings$HeaderAdapter.smali
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$2.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
PersonalSettings$HeaderAdapter.smali
FOR CM10.1
in
AppSettings.smali
AppSettings$1.smali
AppSettings$2.smali
AppSettings$3.smali
AppSettings$HeaderAdapter$HeaderViewHolder.smali
AppSettings$HeaderAdapter.smali
DeviceSettings.smali
DeviceSettings$1.smali
DeviceSettings$2.smali
DeviceSettings$3.smali
DeviceSettings$HeaderAdapter$HeaderViewHolder.smal i
DeviceSettings$HeaderAdapter.smali
PersonalSettings.smali
PersonalSettings$1.smali
PersonalSettings$2.smali
PersonalSettings$3.smali
PersonalSettings$HeaderAdapter$HeaderViewHolder.sm ali
PersonalSettings$HeaderAdapter.smali
below is an example for CM10.1 !!!
EXAMPLE FOR CM10.1
do not edit all red line on annotation section
in AppSettings.smali, DeviceSettings.smali, PersonalSettings.smali
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
[COLOR="Red"]Lcom/android/settings/Settings$SystemSettingsActivity;,
Lcom/android/settings/Settings$DreamSettingsActivity;,
Lcom/android/settings/Settings$QuietHoursSettingsActivity;,
Lcom/android/settings/Settings$ProfilesSettingsActivity;,
Lcom/android/settings/Settings$ApnEditorActivity;,
Lcom/android/settings/Settings$ApnSettingsActivity;,
Lcom/android/settings/Settings$AnonymousStatsActivity;,
Lcom/android/settings/Settings$WifiDisplaySettingsActivity;,
Lcom/android/settings/Settings$AndroidBeamSettingsActivity;,
Lcom/android/settings/Settings$TextToSpeechSettingsActivity;,
Lcom/android/settings/Settings$AdvancedWifiSettingsActivity;,
Lcom/android/settings/Settings$DataUsageSummaryActivity;,
Lcom/android/settings/Settings$DeviceAdminSettingsActivity;,
Lcom/android/settings/Settings$CryptKeeperSettingsActivity;,
Lcom/android/settings/Settings$AccountSyncSettingsActivity;,
Lcom/android/settings/Settings$PowerUsageSummaryActivity;,
Lcom/android/settings/Settings$RunningServicesActivity;,
Lcom/android/settings/Settings$PrivacySettingsActivity;,
Lcom/android/settings/Settings$LocationSettingsActivity;,
Lcom/android/settings/Settings$SecuritySettingsActivity;,
Lcom/android/settings/Settings$AccessibilitySettingsActivity;,
Lcom/android/settings/Settings$DevelopmentSettingsActivity;,
Lcom/android/settings/Settings$StorageUseActivity;,
Lcom/android/settings/Settings$ManageApplicationsActivity;,
Lcom/android/settings/Settings$DeviceInfoSettingsActivity;,
Lcom/android/settings/Settings$DisplaySettingsActivity;,
Lcom/android/settings/Settings$SoundSettingsActivity;,
Lcom/android/settings/Settings$UserDictionarySettingsActivity;,
Lcom/android/settings/Settings$LocalePickerActivity;,
Lcom/android/settings/Settings$SpellCheckersSettingsActivity;,
Lcom/android/settings/Settings$KeyboardLayoutPickerActivity;,
Lcom/android/settings/Settings$InputMethodAndLanguageSettingsActivity;,
Lcom/android/settings/Settings$WifiP2pSettingsActivity;,
Lcom/android/settings/Settings$WifiSettingsActivity;,
Lcom/android/settings/Settings$StorageSettingsActivity;,
Lcom/android/settings/Settings$DateTimeSettingsActivity;,
Lcom/android/settings/Settings$VpnSettingsActivity;,
Lcom/android/settings/Settings$TetherSettingsActivity;,
Lcom/android/settings/Settings$WirelessSettingsActivity;,
Lcom/android/settings/Settings$BluetoothSettingsActivity;,
Lcom/android/settings/Settings$HeaderAdapter;[/COLOR]
}
.end annotation
do not edit red line on annotation section
in AppSettings$1.smali, DeviceSettings$1.smali, PersonalSettings$1.smali
Code:
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = [COLOR="Red"]Lcom/android/settings/Settings[/COLOR] ;->onCreate(Landroid/os/Bundle;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
do not edit red line on annotation section
in AppSettings$2.smali, DeviceSettings$2.smali, PersonalSettings$2.smali
Code:
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = [COLOR="Red"]Lcom/android/settings/Settings[/COLOR] ;->onResume()V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
do not edit red line on annotation section
in AppSettings$3.smali, DeviceSettings$3.smali, PersonalSettings$3.smali
Code:
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = [COLOR="Red"]Lcom/android/settings/Settings[/COLOR] ;->insertAccountsHeaders(Ljava/util/List;I)I
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/util/Comparator",
"<",
"Landroid/preference/PreferenceActivity$Header;",
">;"
}
.end annotation
do not edit red line on annotation section
in AppSettings$HeaderAdapter$HeaderViewHolder.smali, DeviceSettings$HeaderAdapter$HeaderViewHolder.smali, PersonalSettings$HeaderAdapter$HeaderViewHolder.smali
Code:
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = [COLOR="Red"]Lcom/android/settings/Settings$HeaderAdapter;[/COLOR]
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "HeaderViewHolder"
.end annotation
do not edit red line on annotation section
in AppSettings$HeaderAdapter.smali, DeviceSettings$HeaderAdapter.smali, PersonalSettings$HeaderAdapter.smali
Code:
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value =[COLOR="Red"]Lcom/android/settings/Settings[/COLOR] ;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "HeaderAdapter"
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
[COLOR="Red"]Lcom/android/settings/Settings$HeaderAdapter$HeaderViewHolder;[/COLOR]
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Landroid/widget/ArrayAdapter",
"<",
"Landroid/preference/PreferenceActivity$Header;",
">;"
}
.end annotation
OKE NEXT STEP IS STEP 4
Decompile the Newly recompiled Settings.apk again
go to
smali/com/android/settings/MainSettings.smali, open with Notepad++ MainSettings.smali, keep it open
AND
go to
res/values/public.xml
REPLACE ALL red ids in MainSettings.smali with your new ids in new public.xml
Code:
[B]MainSettings.smali[/B] new [B]public.xml[/B]
[COLOR="Red"]0x7f08022a[/COLOR] -> <public type="id" name="vPager" id="[COLOR="Red"]0x????????[/COLOR] " />
[COLOR="Red"]0x7f080229[/COLOR] -> <public type="id" name="cursor" id="[COLOR="Red"]0x????????[/COLOR] " />
[COLOR="Red"]0x7f080168[/COLOR] -> <public type="id" name="app_tab" id="[COLOR="Red"]0x????????[/COLOR] " />
[COLOR="Red"]0x7f080228[/COLOR] -> <public type="id" name="device_tab" id="[COLOR="Red"]0x????????[/COLOR] " />
[COLOR="Red"]0x7f080227[/COLOR] -> <public type="id" name="personalized_tab" id="[COLOR="Red"]0x????????[/COLOR] " />
[COLOR="Red"]0x7f040090[/COLOR] -> <public type="layout" name="mainsetting" id="[COLOR="Red"]0x????????[/COLOR] " />
NEXT
in public.xml
find
Code:
<public type="xml" name="settings_headers" id="[COLOR="Red"]0x????????[/COLOR]" />
KEEP IT OPEN, AND GO TO :
smali/com/android/settings/
and open with Notepad++
AppSettings.smali, DeviceSettings.smali, PersonalSettings.smali
and find settings_header ids , 0x???????? in all that 3 smali, so it's gonna be like this
Code:
[COLOR="Red"]0x????????[/COLOR] in AppSettings.smali
[COLOR="Red"]0x????????[/COLOR] in DeviceSettings.smali
[COLOR="Red"]0x????????[/COLOR] in PersonalSettings.smali
of course, the ids in all that three will be same, because all that three smali is copied of setting.smali,.
now we must change all red ids, with new ids in public.xml
Code:
[B]replace the Red Ids in AppSettings.smali, DeviceSettings.smali, PersonalSettings.smali, with new ids in public.xml :[/B]
in PersonalSettings.smali -> replace with <public type="xml" name="personal_settings_headers" id="[COLOR="Magenta"]0x????????[/COLOR]" />
in DeviceSettings.smali -> replace with <public type="xml" name="device_settings_headers" id="[COLOR="Green"]0x????????[/COLOR]" />
in AppSettings.smali -> replace with <public type="xml" name="app_settings_headers" id="[COLOR="Blue"]0x????????[/COLOR]" />
NEXT
go to res/xml/
app_settings_headers.xml
device_settings_headers.xml
personal_settings_headers.xml
open with Notepad++ all that xml, and chnge the line from
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
xmlns:android="http://schemas.android.com/apk/res/android" />
chnge to :
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
xmlns:android="http://schemas.android.com/apk/res/android">
</preference-headers>
NEXT
manage your settings shortcut in settings_header.xml copy it and paste it to the 3 empty xml
go to this page, and read my eplanation for adding 3 empty xml http://forum.xda-developers.com/showpost.php?p=41082390&postcount=46
NEXT
open up 'AndroidManifest.xml' of your decompiled settings.apk in a text editor./Notepad++
-Find a section similar to the below....
Code:
<activity android:label="@string/settings_label_launcher" android:name="Settings" android:taskAffinity="com.android.settings" android:clearTaskOnLaunch="true" android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
The important parts you are looking for are 'name="Settings" and the 'android.intent.category.LAUNCHER' lines, there *should* only be a single section with these.
Change this section to the below:
Code:
<activity android:label="@string/settings_label_launcher" android:name="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Directly above that section copy/paste the following
Code:
<activity android:name="MainSetting" android:theme="@android:style/Theme.NoTitleBar" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.settings.SETTINGS" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:label="@string/settings_label_launcher" android:name="PersonalSettings" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:label="@string/settings_label_launcher" android:name="DeviceSettings" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:label="@string/settings_label_launcher" android:name="AppSettings" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
<intent-filter>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
Recompile your settings.apk and sign it
You can try using any of the keys that come with whatever apk signing tool you use, but you will more then likely end up with a Settings.apk that wont show as being installed, you must sign it with platfrom keys from CyanogenMod's android_build github https://github.com/CyanogenMod/android_build/tree/jellybean/target/product/security
I usually use ApkMultitools for Decompiling, Recompiling, and signing apk, so if you use ApkMultitols, you can use my signer keys that I've modified included CM signer,
Download this, : http://d-h.st/mGS
exstract it, and merge it your ApkMultitolls/other/here
POST YOUR SCREENSHOT, INSTEAD OF JUST SAYING
"Thanks it's work" :good::laugh:
You should have a Recognized Contributor or Recognized Themer titles . Haha Nice job Adi
irfanharith said:
You should have a Recognized Contributor or Recognized Themer titles . Haha Nice job Adi
Click to expand...
Click to collapse
sure
let them decide that
for those who have followed my guide,
please check again on STEP - 1
I've fixed it
I forgot to add some lines to the end of your
settings/res/values/strings.xml'
Code:
<string name="personalized_setting">Personal</string>
<string name="device_setting">System</string>
<string name="app_setting">Applications</string>
and in settings/res/values/ids.xml
Code:
<item type="id" name="linearLayout1">false</item>
<item type="id" name="personalized_tab">false</item>
<item type="id" name="device_tab">false</item>
<item type="id" name="app_tab">false</item>
<item type="id" name="cursor">false</item>
<item type="id" name="vPager">false</item>
Still no luck on JB stock..
its CM only maybe??
Yes
@blackcoffe
@petu
Do not use BigSplit file or guide anymore.
Use my guide and donlod my source file
read my instructionn very carefully..
Sent from my GT-I8150 using xda app-developers app
thanks to this guide and Adi, i successfully implemented this mod into my AOSP ICS based Touchwized themed rom here
my rom is even more beautiful..
all thanks to @BigSplit and @Adi Aisiteru Reborn
Only one been succesfull ?
Sent from my GT-I8150 using xda app-developers app
Adi Aisiteru Reborn said:
Only one been succesfull ?
Sent from my GT-I8150 using xda app-developers app
Click to expand...
Click to collapse
go to res/layout/
app_settings_headers.xml
device_settings_headers.xml
personal_settings_headers.xml
or
go to res/xml/
app_settings_headers.xml
device_settings_headers.xml
personal_settings_headers.xml
because in your source 3 xml files in xml folder..
thanks
RATnt said:
go to res/layout/
app_settings_headers.xml
device_settings_headers.xml
personal_settings_headers.xml
or
go to res/xml/
app_settings_headers.xml
device_settings_headers.xml
personal_settings_headers.xml
because in your source 3 xml files in xml folder..
thanks
Click to expand...
Click to collapse
Ohh.. ya..Im sorryy,
. I'll fix it, thnks for reminding me ...
Yes, you are right
Res/xml/here
EDIT : Done, I'v fixed it
Sent from my GT-I8150 using xda app-developers app
Success
Got this working in my personal Hyperion ROM for Karbonn A9+ :good:
THANKS MAN!
joeyhuab said:
Got this working in my personal Hyperion ROM for Karbonn A9+ :good:
THANKS MAN!
Click to expand...
Click to collapse
Good
Sent from my GT-I8150 using xda app-developers app
Adi Aisiteru Reborn said:
Good
Sent from my GT-I8150 using xda app-developers app
Click to expand...
Click to collapse
i still force close C :crying:
RATnt said:
i still force close C :crying:
Click to expand...
Click to collapse
can you upload your fc settings.apk
I want to check it
Adi Aisiteru Reborn said:
can you upload your fc settings.apk
I want to check it
Click to expand...
Click to collapse
PM ... :good::good::good:
RXS DEV Team presents proudly
How to port Fully Xperia Themes To cm11
-Hi everyone,
-We will explain today how to port fully Xperia Themes to Cm11
Xda Portal News
http://www.xda-developers.com/android/port-xperia-themes-to-cyanogenmod-11/
Requirements
They are necessary for succesfully porting
Z2 framework of Ambor
Z2 Calendar
Z2 Settings of RXS
Z2 Clock
Z2 Widgets
Z2 Conversations
Z2 Soundrecorder
Z2 Systemui
Tools
Gimp2
http://www.gimp.org/downloads/
Total Commander
http://www.ghisler.com/deutsch.htm
Notepadd++
http://notepad-plus-plus.org/
Easy Compare
1)You can use [Total Commander] or [Notepad++]
2)For example
3)Go to my theme.apk/res/xml/android.xml
4)Open it and look at drawable line by line
How to use Gimp2
How to edit png files?
1)Watch this video
2)That´s it.
Info About RXS Theme Engine
All Z2 Apps
http://forum.xda-developers.com/showthread.php?t=2766508
Z2 Framework
http://forum.xda-developers.com/crossdevice-dev/sony/cm11-how-port-z2-framework-to-cm11-15-t2836856
Preparing Section
1)Download Xperia Themes from xperia threads,googleplay or somewhere.
2)Decompile it via any Apk Multi Tool
3)After decompiling
4)Go to xperia theme.apk/res/assests
5)You will see some zip files.
6)For example
PHP:
android.zip
com.android.systemui.zip
com.sonyericsson.home.zip
com.sonyericsson.uxp.zip
....
7)Change last name of all files from .zip to .apk
PHP:
Ex: old :android.zip
new:android.apk
8)Decompile all apk that you have renamed them.
9)Now download this theme from my thread.
maintheme.apk
http://www.mediafire.com/download/tlncyl0cjca1bqc/[21.09.14]maintheme.apk
10)Download new Public.xml of maintheme.apk
http://d-h.st/eEq
11)Decompile maintheme.apk
12)Replace public.xml with old one
13)Again return to step8
Porting Section
How to port framework of theme?
1)Download this file with this file you can find easily each png what you should change
http://d-h.st/3U2
2)Go to android.apk/res/drawable(all drawable files)
PHP:
ex:drawable-hdpi,-xhdpi,drawable-land-xhdpi....
3)Now you musst be carefull.
4)Compare all of them with drawable pngs of framework files and all name musst be same.
5)When some files are not same name,rename it
PHP:
ex:from "semc_ic_contact_picture_normal" to ic_contact_picture
6)Check them with all pngs of framework
7)You musst use Gimp2 for this files(.9.pngs)
8)Change color of those pngs according to your theme
PHP:
activity_picker_bg_activated.9
data_grid_border.9
data_grid_primary.9
day_picker_week_view_dayline_holo.9
drawer_list_divider.9
ic_lock_power_off
ic_lock_profile
ic_lock_reboot
ic_lock_screenshot
light_digital_alarm_icon
light_digital_colon
list_section_divider_holo_dark.9
list_section_divider_holo_light.9
numberpicker_selection_divider.9
overscroll_edge
overscroll_glow
plain_digital_alarm_icon
plain_digital_alarm_lockscreen
progressbar_indeterminate_holo1
progressbar_indeterminate_holo2
progressbar_indeterminate_holo3
progressbar_indeterminate_holo4
progressbar_indeterminate_holo5
progressbar_indeterminate_holo6
progressbar_indeterminate_holo7
progressbar_indeterminate_holo8
divider_strong_holo.9
semc_dialog_divider_holo_colored.9
fastscroll_thumb_default_holo
fastscroll_thumb_pressed_holo
tab_selected_holo.9
tab_selected_pressed_holo.9
ic_contact_picture
9)If android.apk has new pngs,go to maintheme.apk/res/xml/android.xml
10)Add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
11)Save it and delete all unneceassary pngs of framework theme(maintheme.apk)
How to port Home launcher of Theme?
1)Go to android.apk/res/drawable(all drawable files)
PHP:
ex:drawable-hdpi,-xhdpi,drawable-land-xhdpi....
2)Copy all pngs from Xperia Theme to your new ported theme(it musst copy same direction:from drawable-land hdpi to drawable-land hdpi )
3)Search this pngs and change color of them via Gimp2
PHP:
drawer_list_selected
4)Seach pngs when you see dopple pngs that they have same name,delete old pngs.
5)If com.sonyericsson.home.apk has new pngs,go to maintheme.apk/res/xml/com_sonyericsson_home_z2.xml and com_sonyericsson_home.xml
6)Add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
7)Save it and delete all unneceassary pngs of home theme(maintheme.apk)
How to make Clock app colorizable?
1)Search this pngs and change color of them via Gimp2
PHP:
nav_bar_alarm_theme
nav_bar_alarm_theme_v2
nav_bar_stopwatch_theme
nav_bar_stopwatch_theme_v2
nav_bar_timer_theme
nav_bar_timer_theme_v2
nav_bar_worldclock_theme
nav_bar_worldclock_theme_v2
2)If com.sonyericsson.organizer has new pngs,go to maintheme.apk/res/xml/com_sonyericsson_organizer and add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
3)Save it
How to make Calendar app colorizable?
1)For changing color of calendar app ,please go to Color Section
2)If com_android_calendar has new pngs,go to maintheme.apk/res/xml/com.android.calendar and add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
3)Save it
How to port Systemui of Theme?
1)Go to com.android.systemui.apk/res/drawable(all drawable files)
PHP:
ex:drawable-hdpi,-xhdpi,drawable-land-xhdpi....
2)Copy all pngs from Xperia Theme to your new ported theme(it musst copy same direction:from drawable-land hdpi to drawable-land hdpi )
3)Seach pngs when you see double pngs that they have same name,delete old pngs.
4)Search this pngs and change color of them via Gimp2
PHP:
statusbar_settings
status_bar_close_on.9
statusbar_brightness
5)If com.android.systemui.apk has new pngs,go to maintheme.apk/res/xml/com_android_systemui and add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
6)Save it and delete all unneceassary pngs of systemui theme(maintheme.apk)
How to port Conversation.apk of Theme?
1)Go to com.sonyericsson.conversations.apk/res/drawable(all drawable files)
PHP:
ex:drawable-hdpi,-xhdpi,drawable-land-xhdpi....
2)Copy all pngs from Xperia Theme to your new ported theme(it musst copy same direction:from drawable-land hdpi to drawable-land hdpi )
3)Seach pngs when you see double pngs that they have same name,delete old pngs.
4)If com.sonyericsson.conversations.apk has new pngs,go to maintheme.apk/res/xml/com_sonyericsson_conversations.xml and add line like this
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
5)Save it and delete all unneceassary pngs of conversation theme(maintheme.apk)
How to port Settings.apk of Theme?
1)Go to com.android.settings.apk/res/drawable(all drawable files)
PHP:
ex:drawable-hdpi,-xhdpi,drawable-land-xhdpi....
2)Copy all pngs from Xperia Theme to your new ported theme(it musst copy same direction:from drawable-land hdpi to drawable-land hdpi )
3)Seach pngs when you see double pngs that they have same name delete old pngs.
4)RepeXpersiS settings has some different pngs
5)Please rename those pngs according to RXS settings
PHP:
from ic_settings_personalization to ic_settings_personalization_settings
from ic_settings_connectivity to ic_settings_xperia_connectivity_settings
from ic_settings_sync to ic_settings_profiles
from ic_settings_call to ic_settings_callsettingsxperia
6)If com.android.settings.apk has new pngs,go to maintheme.apk/res/xml/com_android_settings and add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
7)Save it and delete all unneceassary pngs of settings theme(maintheme.apk)
How to port Soundrecorder of Theme?
1)Go to maintheme.apk/res/drawable-xxhdpi
2)Search this pngs and change color of them via Gimp2
PHP:
button_audio_quality_selected_disabled
button_audio_quality_selected_normal
button_audio_quality_unselected_disabled
button_audio_quality_unselected_normal
apptheme_scrubber_control_disabled_holo
apptheme_scrubber_control_normal_holo
apptheme_scrubber_primary_holo
apptheme_scrubber_secondary_holo
apptheme_scrubber_track_holo_light
apptheme_scrubber_control_pressed_holo
3)If com.sonymobile.androidapp.audiorecorder has new pngs,go to maintheme.apk/res/xml/com_sonymobile_androidapp_audiorecorder and add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
4)Save it and delete all unneceassary pngs of soundrecorder theme(maintheme.apk)
How to make Xperia Widgets colorizable?
1)Search this pngs and change color of them via Gimp2
PHP:
dark_analog_face
light_analog_face
dark_analog_hour_hand
drawable/dark_analog_minute_hand
dark_analog_second_hand
light_alarm_icon
light_analog_hour_hand
light_analog_minute_hand
light_analog_second_hand
progressbar_fill.9
progressbar_glow
music_particle_big
music_particle_med
music_particle_sml
default_contact
2)Name of Xperia Widgets packages
com.sonyericsson.advancedwidget.clock
com.sonyericsson.advancedwidget.music
com.sonymobile.advancedwidget.topcontacts
com.sonyericsson.advancedwidget.onoff
3)If xperia Widgets have new pngs,go to this locations
maintheme.apk/res/xml/com_sonyericsson_advancedwidget_clock
maintheme.apk/res/xml/com_sonyericsson_advancedwidget_clock
maintheme.apk/res/xml/com_sonyericsson_advancedwidget_clock
maintheme.apk/res/xml/com_sonyericsson_advancedwidget_clock
4)Add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
5)save it and delete all unneceassary pngs of settings theme(maintheme.apk)
How to make dialer and contacts colorizable?
1)Search this pngs and change color of them via Gimp2
PHP:
ic_menu_person_dk
ic_menu_star_dk
ic_menu_group_dk
3)If com.android.dialer.apk has new pngs,go to maintheme.apk/res/xml/com_android_dialer and com_android_contacts has new pngs,go to maintheme.apk/res/xml/com_android_contacts
4)Add line like this
PHP:
ex:<item name="drawable/your new png name">@drawable/your new png name</item>
5)Save it and delete all unneceassary pngs of dialer and contacts theme(maintheme.apk)
How to change of framework background?
1)You can change with them all background of apps
2)Go to android.apk/res/drawable-xxhdpi
3)Search them
semc_bg_dark_tile
semc_bg_light_tile
4)They have sometimes different names.Search as "semc_bg"
5)Change it
From semc_bg_dark_tile to semc_bg
From semc_bg_light_tile to semc_bg_light
6)Save it and delete all unneceassary pngs about background(maintheme.apk)
How to change of app icon,wallpaper and prewiew of Theme?
1)Go to maintheme.apk/res/drawable-xxhdpi
2)Copy all of them
3)Go to this page
http://www.picresize.com/
4)Resize it is like maintheme pngs
PHP:
Change from "semc_theme_lockscreen_wallpaper" to "app_icon"
from "semc_theme_preview" to "preview"
from "semc_theme_wallpaper" to "default_wallpaper"
5)Paste them to drawable-nodpi
6)Howewer paste default_wallpaper and preview to drawable-xxhdpi
paste app_icon to drawable-mdpi,hdpi.
How to add new apk support to your Theme?
1)I will explain it with an example
2)You want to add z2 album support in your theme
Steps
1)Decompile SemcAlbum.apk
2)Go to SemcAlbum.apk/res/AndroidManifest.xml
Search "package"
3)You will find ----->package="com.sonyericsson.album"
4)Copy "com.sonyericsson.album"
5)Go to maintheme.apk/res/xml
6)Download this file
http://d-h.st/5FM
7)And rename this file as com_sonyericsson_album.xml
8)Paste it to maintheme.apk/res/xml
9)Add related drawable lines into this xml file
10)Save it (com_sonyericsson_album.xml)
11)Open redirections.xml in maintheme.apk/res/xml
12)Add this line
PHP:
<package-redirections android:name="com.sonyericsson.album" android:resource="@xml/com_sonyericsson_album" android:minSdkVersion="9" />
13)Save it (redirections.xml)
Tutorial
PHP:
<package-redirections android:name="PACKAGE NAME" android:resource="@xml/XML NAME" android:minSdkVersion="9" />
ex:
1)Package name of Album:com.sonyericsson.album
2)XML name of Album:com_sonyericsson_album
3)Package name musst contents alway this sign "." between sentences
4)Xml name musst contents always this sign "_" between sentences.
5)Thats all.
How to change of appi con of Z2 apps?
1)Go to app.apk/res/mipmap and drawable(all drawable and mipmap files)
2)Most Apps have generally app icon in mipmap but sometimes in drawable
3)Search it as "launcher,app_icon..."
4)Copy png or pngs from app.apk to mipmap or drawable files(look at for it into xml folder in maintheme.apk.You will find related xml files and There is some drawable lines about it)
5)Save it and delete all unneceassary pngs about app icon(maintheme.apk)
Color Section
How to change color of Theme?
Related Packages
com.sonyericsson.uxp
com.sonyericsson.home
com.android.systemui
How to find Color Values?
1)Go to xxx(theme).apk/values/colors.xml
This is most important.I will explain detail
What is color value?
PHP:
ex:it is #fffcc68b (light brown)
How to get color value?
1)Go to this page
http://www.w3schools.com/cssref/css_colorsfull.asp
How to change of color?
PHP:
[B][U][COLOR="DarkGreen"]Old [/COLOR][/U][/B]
<color name="somc_color_dark">#fffcc68b</color>(Light-Brown)
[B][U][COLOR="DarkGreen"]New[/COLOR][/U][/B]
<color name="somc_color_dark">#ffd700</color>(Gold-Yellow)
#FFD700
1)Some colors are about systemui,android framework,calendar
Please dont change those colors[if you see new color on packages(above),change it ]
PHP:
<color name="home_badge_text_color">#e6303030</color>
<color name="apptray_background_color">#00000000</color>
<color name="apptray_drawer_text_color">#cbff0000</color>
<color name="apptray_drawer_badge_text_color">#e6303030</color>
<color name="cui_grid_divider_color">#30ffffff</color>
<color name="status_bar_light_background">#ff000000</color>
<color name="status_bar_opaque_background">#00570000</color>
<color name="semc_theme_illumination_color_Calendar">#fff4fa2f</color>
<color name="light_theme_accent_addition">#ff303030</color>
<color name="text_shadow_color">#e5000000</color>
<color name="memory_avail">#ffb2b2b2</color>
<item type="color" name="memory_apps_usage">@color/semc_theme_color_light</item>
<color name="memory_downloads">#fffcb13c</color>
<color name="memory_dcim">#ffdb6770</color>
<color name="memory_music">#ffd2b6dc</color>
<color name="memory_cache">#ff637085</color>
<color name="memory_misc">#ff4798d2</color>
<color name="memory_user_light">#ffcac5a5</color>
<color name="memory_user_dark">#ff7c9769</color>
<color name="system_bar_background_opaque">#78000000</color>
<color name="notification_panel_solid_background">#00000000</color>
<color name="moving_item_background">#80000000</color>
<item type="color" name="accent_color_illumination">@color/semc_theme_color_light</item>
<item type="color" name="somc_theme_accent_color_light">@color/accent_color_dark</item>
<item type="color" name="blue_focused">@color/semc_theme_color_light</item>
<item type="color" name="neutral_pressed">@color/semc_theme_color_light</item>
<item type="color" name="semc_text_color_highlight">@color/semc_theme_color_light</item>
<item type="color" name="linear_color_bar_left_color">@color/semc_theme_color_light</item>
<item type="color" name="linear_color_bar_middle_color">@color/semc_theme_color_light</item>
<color name="linear_color_bar_right_color">#ff888888</color>
<color name="linear_color_bar_gray_color">#ffd6d6d6</color>
<color name="data_usage_series_fill_color">#c0c961db</color>
<color name="data_usage_series_fill_color_secondary">#66c961db</color>
<color name="system_bar_background_semi_transparent">#ff5e5e5e</color>
<color name="system_ui_light_background">#ff5e5e5e</color>
<color name="system_bar_background_fully_transparent">#00000000</color>
<color name="status_bar_recents_app_label_color">#66000000</color>
<color name="notification_list_shadow_top">#80000000</color>
<color name="start_color">#ff181818</color>
<color name="end_color">#ff242424</color>
<color name="frame_color">#ff4d4d4d</color>
<color name="notification_panel_scrim_color">#ff000000</color>
<color name="scalebar_line_color">#fffcc68b</color>
<item type="color" name="blue_light">@color/semc_theme_color_light</item>
<color name="black_dark">#ff2a2a2a</color>
<color name="blue_medium">#66e4633a</color>
<color name="blue_dark">#ff112026</color>
<item type="color" name="blue_tab">@color/semc_theme_color_light</item>
<color name="list_item_selected_background">#ffffbe79</color>
<item type="color" name="status_bar_clock_color">@color/semc_theme_color_light</item>
<item type="color" name="semc_theme_accent_color_dark">@color/semc_theme_color_light</item>
Systemui and Framework values change it according to com.sonyericsson.uxp
PHP:
<color name="somc_color_dark">#fffcc68b</color>
<color name="somc_color_light">#fffcc68b</color>
<color name="somc_color_light_off">#fffcc68b</color>
<color name="somc_color_bright">#fffcc68b</color>
<color name="semc_theme_color_light">#fffcc68b</color>
<color name="semc_theme_color_dark">#fffcc68b</color>
<color name="accent_color_neutral">#fffcc68b</color>
<color name="accent_color_light">#fffcc68b</color>
<color name="semc_theme_illumination_color_light">#fffcc68b</color>
<color name="semc_theme_illumination_color_dark">#fffcc68b</color>
<color name="somc_theme_accent_color_dark">#fffcc68b</color>
Home Values(i remember it changes accent_color_dark color of home.apk but i am not sure please test it)
<color name="accent_color_neutral">#fffcc68b</color>
<color name="accent_color_light">#fffcc68b</color>
<color name="accent_color_dark">#fffcc68b</color>
Soundenchaments Values
PHP:
<color name="scalebar_line_color">#fffcc68b</color>
<color name="scalebar_center_line_color">#fffcc68b</color>
<color name="surround_preset_name_color">#fffcc68b</color>
<color name="surround_preset_summary_color">#fffcc68b</color>
<color name="freqnum_color">#fffcc68b</color>
Conversations Values
PHP:
<color name="somc_accent_color_neutral">#fffcc68b</color>
<color name="semc_theme_accent_color">#fffcc68b</color>
<color name="semc_theme_accent_color_sent">#fffcc68b</color>
Calendar Values
It changes otomatically according to framework color
Highlight_text Values
PHP:
<color name="link_text_dark">#fffcc68b</color>
<color name="link_text_light">#fffcc68b</color>
<color name="highlighted_text_holo_dark">#fffcc68b</color>
<color name="highlighted_text_holo_light">#fffcc68b</color>
<color name="suggestion_highlight_text">#fffcc68b</color>
<color name="perms_dangerous_grp_color">#ff224e74</color>
<color name="perms_dangerous_perm_color">#ff224e74</color>
<color name="keyguard_avatar_frame_pressed_color">#ff224e74</color>
Finishing Section
How to change Theme,Wallpaper,Author,App Name?
For this
1)Go to my theme.apk/res/values/strings.xml
PHP:
<string name="app_name">NewTheme for KK</string>
<string name="theme_name">NewTheme </string>
<string name="style_appearance_name">NewTheme </string>
<string name="author">Your name</string>
<string name="copyright">Your name</string>
<string name="wallpaper_label">NewTheme Wallpaper</string>
How to change package Name of your Theme?
1)You musst change package name.If your package name is same with old theme,you can not use both theme.
2)Go to mytheme.apk/res/androidmanifest.xml
3)Find this word "package"
PHP:
ex:com.gamzekal.themename.apk
4)Change it what do you want
-Compile your new theme.apk
-You have successfully ported Xperia Themes to Cm11
Credits
@ Ambor
Damn. This just made my nuts shrivel lol. I can't even...
Sent from my SM-N900T using XDA Free mobile app
nighthawk626 said:
Damn. This just made my nuts shrivel lol. I can't even...
Sent from my SM-N900T using XDA Free mobile app
Click to expand...
Click to collapse
Hello, this is my first thread
As you guys know, all of status bar icons in lollipop was hidden by google. There's no .png image in drawable folder for battery icon, signal, etc. That means, we're not able to change it with another image. But finally, i'm sucessfully change it. Now, we can say good bye to that annoying battery icon (yes, this tutorial is for kitkat too). Lets move to the tutorial.
Sorry for my bad english.
WHAT YOU NEED:
1). Brain
2). Patient
3).Apktool
4). Systemui.apk
5). Some .png images.
1). HOW TO CHANGE THAT ANNOYING BATTERY IMAGE?
Go to THIS thread. This guy will help you. All credit goes to him.
2). HOW TO CHANGE ANOTHER IMAGE ON YOUR STATUS BAR:
-). Decompile your Systemui.apk
-). Go to res/drawable.
-) In this folder, you will see the xml files for any icons on your status bar.
-). Delete those xml file. For example, if you wanna change the signal icon, just delete that stat_sys_signal_0, stat_sys_signal_0_fully, bla bla bla. Remember that xml file name before you delete it (Important!?).
-). Put that .png images for replacing xml files that you was deleted before on any drawable folder that fits your resolution (mine is drawable-hdpi). Ex: if you delete that stat_sys_signal_0 on your drawable folder, then you have to put that stat_sys_signal_0.png to replace it.
-). After you finish replacing all xml files with .png images, recompile it.
-). Don't forget to sign it and push into your system.
-). Done!
Here's my result on my device running cm12 for taoshan:
{
"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"
}
Can you share your SystemUI? I am taoshan user too
thanks
Bro can you share this battery icons ?
slir
upload ui plzzz
whychand said:
Hello, this is my first thread
As you guys know, all of status bar icons in lollipop was hidden by google. There's no .png image in drawable folder for battery icon, signal, etc. That means, we're not able to change it with another image. But finally, i'm sucessfully change it. Now, we can say good bye to that annoying battery icon (yes, this tutorial is for kitkat too). Lets move to the tutorial.
Sorry for my bad english.
WHAT YOU NEED:
1). Brain
2). Patient
3).Apktool
4). Systemui.apk
5). Some .png images.
1). HOW TO CHANGE THAT ANNOYING BATTERY IMAGE?
Go to THIS thread. This guy will help you. All credit goes to him.
2). HOW TO CHANGE ANOTHER IMAGE ON YOUR STATUS BAR:
-). Decompile your Systemui.apk
-). Go to res/drawable.
-) In this folder, you will see the xml files for any icons on your status bar.
-). Delete those xml file. For example, if you wanna change the signal icon, just delete that stat_sys_signal_0, stat_sys_signal_0_fully, bla bla bla. Remember that xml file name before you delete it (Important!?).
-). Put that .png images for replacing xml files that you was deleted before on any drawable folder that fits your resolution (mine is drawable-hdpi). Ex: if you delete that stat_sys_signal_0 on your drawable folder, then you have to put that stat_sys_signal_0.png to replace it.
-). After you finish replacing all xml files with .png images, recompile it.
-). Don't forget to sign it and push into your system.
-). Done!
Here's my result on my device running cm12 for taoshan:
Click to expand...
Click to collapse
@whychand can you upload your systemui ?
or statusbar icon ?
thanks
Thanks for the guide. I'm trying it now
Hope this process of decompile & recompile SystemUI will be simplified via xposed modules once xposed framework is working on lollipop
hi
reversegear said:
Thanks for the guide. I'm trying it now
Hope this process of decompile & recompile SystemUI will be simplified via xposed modules once xposed framework is working on lollipop
Click to expand...
Click to collapse
Dis u try this? If yes plz let me know did it work for u?
rajeshnitk said:
Dis u try this? If yes plz let me know did it work for u?
Click to expand...
Click to collapse
actually im interested in battery mods. for other components i use CM12 Themes
tried this guide http://forum.xda-developers.com/android/themes/how-to-change-battery-icon-kitkat-rom-t2919361/ and struck in this
Code:
!! You will do it manually so find your last drawable hex code and continue to it.. Then save & close..
still trying thank you for the reminder
reversegear said:
actually im interested in battery mods. for other components i use CM12 Themes
tried this guide http://forum.xda-developers.com/android/themes/how-to-change-battery-icon-kitkat-rom-t2919361/ and struck in this
Code:
!! You will do it manually so find your last drawable hex code and continue to it.. Then save & close..
still trying thank you for the reminder
Click to expand...
Click to collapse
Dont worry about this open public.xml and search drawable and the last drawable you get is your code
Tech N You said:
Dont worry about this open public.xml and search drawable and the last drawable you get is your code
Click to expand...
Click to collapse
i'm bit confused
can you help me in determining of hex code
ive attached my public.xml file
reversegear said:
i'm bit confused
can you help me in determining of hex code
ive attached my public.xml file
Click to expand...
Click to collapse
This your last drawable code <public type="drawable" name="APKTOOL_DUMMY_00fb" id="0x7f0200fb" />
Copy and paste these codes just after the above line highlighted in bold. Search for the above line in bold using Ctrl+F and just after that paste these codes.
Code:
<public type="drawable" name="stat_sys_battery" id="0x7f0200fc" />
<public type="drawable" name="stat_sys_battery_charge" id="0x7f0200fbd" />
it should look like this in your public.xml The bold part in this should be added where I added.
Code:
<public type="drawable" name="APKTOOL_DUMMY_0039" id="0x7f020039" />
<public type="drawable" name="APKTOOL_DUMMY_00ee" id="0x7f0200ee" />
<public type="drawable" name="APKTOOL_DUMMY_00f8" id="0x7f0200f8" />
<public type="drawable" name="APKTOOL_DUMMY_00fb" id="0x7f0200fb" />
[B]<public type="drawable" name="stat_sys_battery" id="0x7f0200fc" />
<public type="drawable" name="stat_sys_battery_charge" id="0x7f0200fd" />[/B]
<public type="mipmap" name="ic_daydreams" id="0x7f030000" />
<public type="mipmap" name="ic_launcher_dreams" id="0x7f030001" />
<public type="layout" name="app_circle_sidebar" id="0x7f040000" />
<public type="layout" name="carrier_label" id="0x7f040001" />
<public type="layout" name="circle_list_item" id="0x7f040002" />
Hope this helps. Hit thanks if I helped.
Tech N You said:
This your last drawable code <public type="drawable" name="APKTOOL_DUMMY_00fb" id="0x7f0200fb" />
Copy and paste these codes just after the above line highlighted in bold. Search for the above line in bold using Ctrl+F and just after that paste these codes.
Code:
<public type="drawable" name="stat_sys_battery" id="0x7f0200fc" />
<public type="drawable" name="stat_sys_battery_charge" id="0x7f0200fbd" />
it should look like this in your public.xml The bold part in this should be added where I added.
Code:
<public type="drawable" name="APKTOOL_DUMMY_0039" id="0x7f020039" />
<public type="drawable" name="APKTOOL_DUMMY_00ee" id="0x7f0200ee" />
<public type="drawable" name="APKTOOL_DUMMY_00f8" id="0x7f0200f8" />
<public type="drawable" name="APKTOOL_DUMMY_00fb" id="0x7f0200fb" />
[B]<public type="drawable" name="stat_sys_battery" id="0x7f0200fc" />
<public type="drawable" name="stat_sys_battery_charge" id="0x7f0200fd" />[/B]
<public type="mipmap" name="ic_daydreams" id="0x7f030000" />
<public type="mipmap" name="ic_launcher_dreams" id="0x7f030001" />
<public type="layout" name="app_circle_sidebar" id="0x7f040000" />
<public type="layout" name="carrier_label" id="0x7f040001" />
<public type="layout" name="circle_list_item" id="0x7f040002" />
Hope this helps. Hit thanks if I helped.
Click to expand...
Click to collapse
But same code already available in this lines
Code:
<public type="drawable" name="ic_qs_signal_g" id="0x7f0200fc" />
<public type="drawable" name="ic_qs_signal_h" id="0x7f0200fd" />
thanks I finally did it...
Thanks bro
I am not able to decompile lollipop system apks. I get this:
[*] _INPUT_APK\framework-res.apk
decompiling _INPUT_APK\framework-res.apk...
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file
at brut.androlib.res.decoder.ARSCDecoder.decode(Unknown Source)
at brut.androlib.res.AndrolibResources.getResPackagesFromApk(Unknown Source)
at brut.androlib.res.AndrolibResources.loadMainPkg(Unknown Source)
at brut.androlib.res.AndrolibResources.getResTable(Unknown Source)
at brut.androlib.Androlib.getResTable(Unknown Source)
at brut.androlib.ApkDecoder.getResTable(Unknown Source)
at brut.androlib.ApkDecoder.decode(Unknown Source)
at brut.apktool.Main.cmdDecode(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: java.io.IOException: Expected: 0x001c0001, got: 0x00000000
at brut.util.ExtDataInput.skipCheckInt(Unknown Source)
at brut.androlib.res.decoder.StringBlock.read(Unknown Source)
at brut.androlib.res.decoder.ARSCDecoder.readPackage(Unknown Source)
at brut.androlib.res.decoder.ARSCDecoder.readTable(Unknown Source)
... 9 more
[*] _INPUT_APK\SystemUI.apk
decompiling _INPUT_APK\SystemUI.apk...
I: Baksmaling...
I: Loading resource table...
Exception in thread "main" brut.androlib.AndrolibException: Could not decode arsc file
at brut.androlib.res.decoder.ARSCDecoder.decode(Unknown Source)
at brut.androlib.res.AndrolibResources.getResPackagesFromApk(Unknown Source)
at brut.androlib.res.AndrolibResources.loadMainPkg(Unknown Source)
at brut.androlib.res.AndrolibResources.getResTable(Unknown Source)
at brut.androlib.Androlib.getResTable(Unknown Source)
at brut.androlib.ApkDecoder.getResTable(Unknown Source)
at brut.androlib.ApkDecoder.decode(Unknown Source)
at brut.apktool.Main.cmdDecode(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: java.io.IOException: Expected: 0x001c0001, got: 0x00000000
at brut.util.ExtDataInput.skipCheckInt(Unknown Source)
at brut.androlib.res.decoder.StringBlock.read(Unknown Source)
at brut.androlib.res.decoder.ARSCDecoder.readPackage(Unknown Source)
at brut.androlib.res.decoder.ARSCDecoder.readTable(Unknown Source)
... 9 more
Click to expand...
Click to collapse
whychand said:
Hello, this is my first thread
As you guys know, all of status bar icons in lollipop was hidden by google. There's no .png image in drawable folder for battery icon, signal, etc. That means, we're not able to change it with another image. But finally, i'm sucessfully change it. Now, we can say good bye to that annoying battery icon (yes, this tutorial is for kitkat too). Lets move to the tutorial.
Sorry for my bad english.
WHAT YOU NEED:
1). Brain
2). Patient
3).Apktool
4). Systemui.apk
5). Some .png images.
1). HOW TO CHANGE THAT ANNOYING BATTERY IMAGE?
Go to THIS thread. This guy will help you. All credit goes to him.
2). HOW TO CHANGE ANOTHER IMAGE ON YOUR STATUS BAR:
-). Decompile your Systemui.apk
-). Go to res/drawable.
-) In this folder, you will see the xml files for any icons on your status bar.
-). Delete those xml file. For example, if you wanna change the signal icon, just delete that stat_sys_signal_0, stat_sys_signal_0_fully, bla bla bla. Remember that xml file name before you delete it (Important!?).
-). Put that .png images for replacing xml files that you was deleted before on any drawable folder that fits your resolution (mine is drawable-hdpi). Ex: if you delete that stat_sys_signal_0 on your drawable folder, then you have to put that stat_sys_signal_0.png to replace it.
-). After you finish replacing all xml files with .png images, recompile it.
-). Don't forget to sign it and push into your system.
-). Done!
Here's my result on my device running cm12 for taoshan:
Click to expand...
Click to collapse
reversegear said:
Thanks for the guide. I'm trying it now
Hope this process of decompile & recompile SystemUI will be simplified via xposed modules once xposed framework is working on lollipop
Click to expand...
Click to collapse
pls my android version is 2.3.6 but am running on a lollipop custom rom.can i also use this tut for theming my statusbar?
anyone know how to shift the signal icon to left fence, to close to the battery icon, im using cm12
thanks.
nilanko said:
I am not able to decompile lollipop system apks. I get this:
Click to expand...
Click to collapse
Did you load your framework-res.apk before decompiling?
bwar85 said:
Did you load your framework-res.apk before decompiling?
Click to expand...
Click to collapse
Thanks for response but all I needed was the new apktool, I was using an older one..
Where can i find the icon pack that are in the op
Please name icons pack
---------- Post added at 07:32 PM ---------- Previous post was at 07:19 PM ----------
what icon pack is that?
This is a guide by Fmd devs to get L panel in kitkat and jellybean devics...
It is time consuming and u need to be very patient.
It isn't for extreme noob but i shall try my best understand u in all possible ways
Take a backup of ur current systemUI.apk before following it
if this guide is already on xda, then let me know i'll close the thread
Let's start now
Things u need -
Apktool 1.5.2
SystemUI.apk
Notepad++
Brain.jar
Step 1:
- Decomile ur systemUI.apk (i m not gonna explain u how to decomile and recomile , there are already many guides for that )
Download systemuiFiles.zip from attachments, extract it merge the files to respective folders
- Go res/values
open ids.xml
Copy the codes below and paste them before </resources>
Code:
<item type="id" name="recents_clear">false</item>
<item type="id" name="LayE2">false</item>
<item type="id" name="owner">false</item>
<item type="id" name="photo_picker_cover">false</item>
<item type="id" name="owner_cover">false</item>
<item type="id" name="name_field_cover">false</item>
<item type="id" name="name_edit_cover">false</item>
<item type="id" name="image_cover">false</item>
<item type="id" name="photo_picker">false</item>
<item type="id" name="name_field">false</item>
<item type="id" name="name_edit">false</item>
<item type="id" name="colored_bar">false</item>
<item type="id" name="thumbnail_border">false</item>
Save the xml
- Open dimens.xml search for <dimen name="quick_settings_cell_height"> change its value to 90.0dip
Also search for <dimen name="quick_settings_cell_gap"> and replace its value with 0.0dip
Then save it
- Now open styles.xml
Find this -
Code:
<style name="TextAppearance.StatusBar.Expanded.Clock" parent="@style/TextAppearance.StatusBar.Expanded">
Change it to make it like -
Code:
<style name="TextAppearance.StatusBar.Expanded.Clock" parent="@style/TextAppearance.StatusBar.Expanded">
<item name="android:textSize">14.0sp</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#ffffffff</item>
<item name="android:fontFamily">sans-serif-medium</item>
</style>
Now find -
Code:
<style name="TextAppearance.StatusBar.Expanded.Date" parent="@style/TextAppearance.StatusBar.Expanded">
Change it to become like -
Code:
<style name="TextAppearance.StatusBar.Expanded.Date" parent="@style/TextAppearance.StatusBar.Expanded">
<item name="android:textSize">14.0sp</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#b2ffffff</item>
</style>
Add the codes below at the bottom before </resources>
Code:
<style name="TextAppearance.QuickSettings.Toggle" parent="@style/TextAppearance.QuickSettings">
<item name="android:textSize">12.0sp</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#b3ffffff</item>
<item name="android:fontFamily">sans-serif-regular-systemui</item>
</style>
<style name="Theme.Lalalee" parent="@*android:style/Theme.Holo.Light.Dialog">
<item name="android:windowBackground">@*android:color/transparent</item>
<item name="android:windowNoTitle">true</item>
</style>
Done Now save the xml
- Open arrays.xml
Add these codes at the bottom before</resources>
Code:
<integer-array name="batterymeter_color_levels">
<item>4</item>
<item>15</item>
<item>100</item>
</integer-array>
<array name="batterymeter_color_values">
<item>#ffff3300</item>
<item>#ffff3300</item>
<item>#ffffffff</item>
</array>
<integer-array name="batterymeter_bolt_points">
<item>73</item>
<item>0</item>
<item>392</item>
<item>0</item>
<item>201</item>
<item>259</item>
<item>442</item>
<item>259</item>
<item>4</item>
<item>703</item>
<item>157</item>
<item>334</item>
<item>0</item>
<item>334</item>
</integer-array>
Save arrays.xml
Search for them before adding, if these are already there, then skip this process...
- Open colors.xml
Copy the codes below and paste them before </resources>
Code:
<color name="qset_text_color_off">#b3ffffff</color>
<color name="qset_text_color_on">#b3ffffff</color>
<color name="qs_tile_normal">#ff263238</color>
<color name="batterymeter_charge_color">@android:color/white</color>
<color name="batterymeter_bolt_color">#b2000000</color>
Before doing this, search for them seperately , u must not add them twice.. If u find them, change the hex code only..
Save it...
- Open strings.xml
Add the codes below before </resources>
Code:
<string name="battery_meter_very_low_overlay_symbol">!</string>
Save the xml
Skip it if it is already there..
- Go back and open AndroidManifest.xml
Paste these codes below at the bottom before </application>
Code:
<activity android:theme="@style/Theme.Lalalee" android:name="com.android.settings.Profile">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
Save the xml
- Now go to smali/com/android/systemui
Open SystemUIService.smali
Copy the codes below and paste them after #virtual methods
Don't forget to add 1 gap after .end method
Code:
.method public FMDProfPic(Landroid/view/View;)V
.locals 3
.parameter "v"
.prologue
.line 2431
new-instance v0, Landroid/content/Intent;
invoke-direct {v0}, Landroid/content/Intent;-><init>()V
.line 2432
const-string v1, "com.android.systemui"
const-string v2, "com.android.settings.Profile"
invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
const/high16 v2, 0x1000
invoke-virtual {v0, v2}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;
move-result-object v0
.line 2433
invoke-virtual {p0, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
const-string v1, "statusbar"
invoke-virtual {p0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/app/StatusBarManager;
invoke-virtual {v0}, Landroid/app/StatusBarManager;->collapsePanels()V
.line 1720
return-void
.end method
Done Step 1, u can recompile systemui apk
Wait Wait!!!
If u're a KitKat user, u may get compiling error "no resource found @id/header_settings_button" something like that.. Then follow step 2.. If u hve succefully recompiled then skip that step...
Step 2:
- Download For_KitKat.zip from attachments and copy the files to respective folders
- Navigate to res/values , open ids.xml add the code below before </resources>
Code:
<item type="id" name="header_settings_button">false</item>
Done, Recompile ur systemui...
now u can proceed to Step 3
Step 3:
This step is for Id replacement, u must hve heard about it
- Decompile newly compiled systemUI.apk
- Open LBatteryBar$1.smali in /smali/com/fmd/btn
Search
0x7f020145
replace with the value of
<public type="drawable" name="stat_sys_battery_charge" from your public.xml
Search
0x7f02013c
replace with the value of
<public type="drawable" name="stat_sys_battery" from your public.xml
- Open SlideBrightness.smali in /smali/in/jmkl/dcsms/statusbargreper
Search
0x7f020263
replace with the value of
<public type="drawable" name="progress_horizontal" from your public.xml
Search
0x7f020270
replace with the value of
<public type="drawable" name="thumb" from your public.xml
- Open Profile.smali in /smali/com/android/settings
search code and replace with your public.xml
0x7f04004d = <public type="layout" name="profile_cover"
0x7f08012b = <public type="id" name="photo_picker_cover"
0x7f08012c = <public type="id" name="owner_cover"
0x7f08012d = <public type="id" name="name_field_cover"
0x7f08012e = <public type="id" name="name_edit_cover"
0x7f08012f = <public type="id" name="image_cover"
0x7f020264 = <public type="drawable" name="fmd_me"
- Open ProfilePicture$1.smali in /smali/com/android/settings
search code and replace with your public.xml
0x7f020264 = <public type="drawable" name="fmd_me"
- Open ProfilePicture.smali
Search code and replace with your public.xml
0x7f08000b = <public type="id" name="image"
0x7f020264 = <public type="drawable" name="fmd_me"
Done!!
Now ur Systemui is of FMD panel but the wifi and bt toggles are two, one is that of fmd and 2nd one is of ur stock.... :angel:
So, follow next step...
Step 4:
Open Quicksettings.smali in smali/com/android/systemui/statusbar/phone
For Jellybean -
To remove bluetooth toggle find this-
Code:
bluetoothTile:Lcom/android/systemui/statusbar/phone/QuickSettingsTileView;
then scroll until you find
Code:
Landroid/view/ViewGroup;->addView(Landroid/view/View;)V
delete all that including the invoke
(note: just scroll dont use search button so you won't
get confused)
For data connection toggle find-
Code:
dataconnectiontile:/Lcom/android/systemui/phone/Quicksettingstileview
then scroll until you find this
Code:
invoke-virtual {v0, v7}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V
Delete it..
now just search for other tiles that you want to remove in the quicksettings..
For Kitkat-
Copy the line below search for it
Code:
.method private addAudioProfileTile(Landroid/view/ViewGroup;Landroid/view/LayoutInflater;)V
that is the tile of audio profile if you want to remove it from your panel then scroll find this in the method:
Code:
Landroid/view/ViewGroup;->addView(Landroid/view/View;)V
delete that whole line including the .line at the top of it
also delete the gaps because there must be only 1 gap
if you want to delete wifi tile from your panel
then search:
Code:
.method private addWifiTile(Landroid/view/ViewGroup;Landroid/view/LayoutInflater;)V
that is the tile of wifi if you want to remove it from your panel then just find again the this line in the method
Code:
Landroid/view/ViewGroup;->addView(Landroid/view/View;)V
delete that whole line including the .line at the top of it
Do it with all the toggles which u wanna remove
This step is slightly confusing, just skip it if u r not getting
Step 5:
Now What! Recompile ur systemui
Patch ur services.jar, yes! U have edited Androidmanifest.xml , so u gotta sign it with custom signature
Don't know how to patch services.jar.. Just search on XDA, there are many guides
Now make flashable zip of systemUI.apk and flash it.
SystemUi force closed , same as mine! Don't Worry Follow next step
Step 6:
Download fix.zip from attachments below.. Copy png to res/drawable-hdpi folder
Recompile ur systemui.apk and again decomile it
Open SignalToggle in /smali/com/fmd/qset
find 0x7f0201f3
replace with
<public type="drawable" name="stat_sys_signal_null"
from your public.xml
Ah! Done Now. Recompile ur systemui and flash it.. Enjoy
Credits-
Fmd Devs
Klark Luis Peralta
Jeff Rivera
Aljhun Bumaya
b16h22
Maaadr
i m not so cheap to take credit only for sharing it
Just Hit Thank you button if i helped u in anyway
Screenshots
Great work..
Thanks bhai for your grat work.....
Help Required...
I tried steps as in the tutorial but im not able to recompile after step 1... its says @style/TextAppearance.QuickSettings no resources found that matches the name. ... am i doing sumething wrong?? plz help.... thanx
Gokulb1 said:
I tried steps as in the tutorial but im not able to recompile after step 1... its says @style/TextAppearance.QuickSettings no resources found that matches the name. ... am i doing sumething wrong?? plz help.... thanx
Click to expand...
Click to collapse
have add that line on your style?
There is a guide similar to this on XDA already but it didn't work for some of the members. You can leave your guide so that others may try.I know I will. Thanks and keep up tew good work. :good:
Ran out of thanks will thank you tomorrow
nophyan said:
have add that line on your style?
Click to expand...
Click to collapse
Yes bro...in the first step its there... if i delete that i get many other errors...
Help
I tried but got too many errors and didn't know how to solve them. Can i make a request that you do it for me and send back please. Here are the files and recompiling log from Tickle my Android. SystemUI.apk
Note: This might help, I have an Alcatel device so that means i have a custpack partition. In the custpack partition there is an apk file where the resources (res folder) for the SystemUI.apk is. It is called SystemUI-res.apk. So when decompiling you have to add the AndroidManifest.xml inside the apk before decompiling and remove it after recompiling. The files I've attached I've already done that for you so it would be great if someone can made the Android L for me .
Samsung SystemUI Support?
Is this method support samsung SystemUI..???
nashj1975 said:
I tried but got too many errors and didn't know how to solve them. Can i make a request that you do it for me and send back please. Here are the files and recompiling log from Tickle my Android. SystemUI.apk
Note: This might help, I have an Alcatel device so that means i have a custpack partition. In the custpack partition there is an apk file where the resources (res folder) for the SystemUI.apk is. It is called SystemUI-res.apk. So when decompiling you have to add the AndroidManifest.xml inside the apk before decompiling and remove it after recompiling. The files I've attached I've already done that for you so it would be great if someone can made the Android L for me .
Click to expand...
Click to collapse
Same problem here, does anyone have a solution?
http://pastebin.com/n0bZM60N
edit: found a solution in post http://forum.xda-developers.com/showpost.php?p=61808403&postcount=18
QuBeX said:
Same problem here, does anyone have a solution?
http://pastebin.com/n0bZM60N
Click to expand...
Click to collapse
I googled one of your errors this one
Code:
Error for input '.parameter': Invalid directive
and i realized that you need to use apktool 1.5.2 and not 2.0. Sadly I couldn't find anything with the other error
nashj1975 said:
I googled one of your errors this one
Code:
Error for input '.parameter': Invalid directive
and i realized that you need to use apktool 1.5.2 and not 2.0. Sadly I couldn't find anything with the other error
Click to expand...
Click to collapse
Yeah i googled it also, .parameter lines are for debugging so you can delete them all, or use baksmali instead of apktool.
Then the no viable alternative at input 'dx' is a syntax error, in the code it is like this .local v1, dy:F but you need to put " " at the dx in this case: .local v1, "dy":F
Gokulb1 said:
Yes bro...in the first step its there... if i delete that i get many other errors...
Click to expand...
Click to collapse
Make sure you merged all the files from the res folder into your res folder in SystemUI.apk
---------- Post added at 02:43 PM ---------- Previous post was at 02:41 PM ----------
QuBeX said:
Yeah i googled it also, .parameter lines are for debugging so you can delete them all, or use baksmali instead of apktool.
Then the no viable alternative at input 'dx' is a syntax error, in the code it is like this .local v1, dy:F but you need to put " " at the dx in this case: .local v1, "dy":F
Click to expand...
Click to collapse
Seems like a lot and i don't know much, hardly anything about smali code. So I'm hoping someone can patch my SystemUI.apk :fingers-crossed:
BRoy_98 said:
Is this method support samsung SystemUI..???
Click to expand...
Click to collapse
I think so... Give a try
@itsraj011 Can you help me? Are you in the process of helping? If so then my bad.
itsraj011 said:
I think so... Give a try
Click to expand...
Click to collapse
Hi, I am getting some error... Log is in attachment. Please help me.
QuBeX said:
Yeah i googled it also, .parameter lines are for debugging so you can delete them all, or use baksmali instead of apktool.
Then the no viable alternative at input 'dx' is a syntax error, in the code it is like this .local v1, dy:F but you need to put " " at the dx in this case: .local v1, "dy":F
Click to expand...
Click to collapse
Hi bro, can you tell me how to use baksmali to recompile it..???
BRoy_98 said:
Hi bro, can you tell me how to use baksmali to recompile it..???
Click to expand...
Click to collapse
Ok, the problem is that the smali code in the systemuifiles.zip has an old syntax...
Here is what i did:
1.- Baksmali SystemUI.apk classes.dex with baksmali 1.4.2
2.- Merge smali files from systemuifiles.zip
3.- Smali the folder with smali 1.4.2 and get a new-classes.dex
4.- Baksmali the new-classes.dex with baksmali 2.06 into a folder called "new-smali"
5.- Decompile SystemUI.apk with latest apktool
6.- Delete smali folder from working folder and copy new-smali folder into apktool working folder (renaming it to smali)
7.- Make all the changes
8.- Recompile with latest apktool
That should work, anyway I couldn't get it to work, after patching services.jar and pushing both systemui and services to the device the status bar doesn't change... Don't know why
QuBeX said:
Ok, the problem is that the smali code in the systemuifiles.zip has an old syntax...
Here is what i did:
1.- Baksmali SystemUI.apk classes.dex with baksmali 1.4.2
2.- Merge smali files from systemuifiles.zip
3.- Smali the folder with smali 1.4.2 and get a new-classes.dex
4.- Baksmali the new-classes.dex with baksmali 2.06 into a folder called "new-smali"
5.- Decompile SystemUI.apk with latest apktool
6.- Delete smali folder from working folder and copy new-smali folder into apktool working folder (renaming it to smali)
7.- Make all the changes
8.- Recompile with latest apktool
That should work, anyway I couldn't get it to work, after patching services.jar and pushing both systemui and services to the device the status bar doesn't change... Don't know why
Click to expand...
Click to collapse
I asked what are the commands to use the baksmali.jar or smali.jar..? Did you seen my log..?? Can you tell me what should I do??
nashj1975 said:
@itsraj011 Can you help me? Are you in the process of helping? If so then my bad.
Click to expand...
Click to collapse
U r getting error in styles.xml if I m right.. Search for the lines before adding them. Only change their values if it is already there Or wait for some days, I'll do it for u when i shall get time
Dynamic Status Bar (JB 4.2)
TESTED and is 100% working on GSmart Aku A1 and Stock Rom Lenovo a369i Row Lite S008 Deodexed
Original tutorial here: MOD Edit :- Links Removed
-----------------------------------------------------
Requirements:
Apktool version 1.52
01.DECOMPILE Settings.apk
02.Copy and merge all files from folder Settings in Settings.apk (after decompile)
03.Open and paste the following code in res/values/strings.xml (before </resources>)
<string name="dynamic_status_bar_title">Dynamic status bar</string>
<string name="dynamic_status_bar_color_title">Dynamic status bar color</string>
<string name="dynamic_status_bar_color_summary">Automatically update background color of the status bar</string>
<string name="dynamic_status_bar_gradient_title">Gradient</string>
<string name="dynamic_status_bar_gradient_summary">Overlay a gradient on the status bar</string>
<string name="dynamic_status_bar_filter_title">Darkening</string>
<string name="dynamic_status_bar_filter_summary">Overlay a darkening filter on the status bar</string>
(Save)
04.Open and paste this code in res/xml/display_settings.xml : <PreferenceCategory androidersistent="false" android:title="@string/display_personalize" android:key="display_personalize">
<PreferenceScreen android:title="@string/dynamic_status_bar_title" android:fragment="com.android.settings.oplosandev.DSBSettings" />
</PreferenceCategory>
(Save)
05.RECOMPILE Settings.apk & DECOMPILE again to edit some public ids.
06.Open public.xml in res/values/public.xml and find "deuge_dsb_settings". Copy that id.
07.Open DSBSettings.smali in folder smali/com/android/settings/oplosandev. Find const v0, 0x7f060052 and replace with id which you copied earlier.
08.Save & RECOMPILE
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
09.DECOMPILE SystemUI.apk
10.Merge folder SystemUI with SystemUI.apk (after decompile)
11.Open and paste the following code in res/values/ids.xml (before </resources>)
<item type="id" name="dynamic_status_bar_color">false</item>
<item type="id" name="dynamic_status_bar_filter">false</item>
<item type="id" name="dynamic_status_bar_gradient">false</item>
<item type="id" name="dynamic_status_bar_lockscreen_filter">false</item>
(Save)
12.Open gemini_status_bar in res\layout. Find android:background="@drawable/status_bar_background". Replace this way: android:background="#00000000"
13.Add this code in the begining of the script: xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<com.fmd.statusbarcolor.color android:id="@id/dynamic_status_bar_color" android:layout_width="fill_parent" android:layout_height="fill_parent">
<View android:id="@id/dynamic_status_bar_filter" android:background="#30000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<View android:id="@id/dynamic_status_bar_gradient" android:background="@drawable/dynamic_status_bar_drawable_gradient" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</com.fmd.statusbarcolor.color>
<View android:id="@id/dynamic_status_bar_lockscreen_filter" android:background="#83000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
14.RECOMPILE SystemUI.apk & DECOMPILE again to edit some public ids.
15.DECOMPILE using your ROM framework-res.apk and open public.xml in res/values. Find "status_bar_height" and copy that id. If you can't find it: go to res/values, open dimens.xml, add a new dimension with this id (status_bar_height), set dimension to 25dip (or you will get a buggy tinting, but this number may differ so test more dimensions until it works because this is the height of the part which will be scanned to get the color) then compile and recompile and try to get the id.
16.Open color.smali in systemui/smali/com/fmd/statusbarcolor. Find const v4, 0x105000c and replace with the id which you copied earlier.
17.Open public.xml in res/values. Find and copy this ids:
"dynamic_status_bar_color"
"dynamic_status_bar_filter"
"dynamic_status_bar_gradient"
18.Open color.smali in systemui/smali/com/fmd/statusbarcolor. Find and replace ids:
const v0, 0x7f08012b ("dynamic_status_bar_color") - ada 2 -
const v0, 0x7f08012c ("dynamic_status_bar_filter") - ada 2 -
const v0, 0x7f08012d ("dynamic_status_bar_gradient") - ada 2 -
(Save)
19.RECOMPILE, SIGN, PUSH (Settings.apk & SystemUI.apk) in /system/app & set permissions to rw-r-r & reboot.
20.Go to Dynamic Status Bar opening Settings > Display settings > Dynamic Status Bar.
CREDIT: Alex & rK
http://the-daffi.blogspot.ro/2015/11/guide-tutorial-buat-dinamic-statusbar.html?m=1
Translated by minealex2244 (I'm not Indonesian, I'm Romanian ) from indonesian.
P. S. I added a line in original guide to fix an error and an important note reffering to status_bar_height which is important.
Don't expect miracles I'm only 17 years old
Would give it a shot. I am on TW Samsung rom and I guess the concept is still the same, exept some changes in resources
Sent from my SM-N920I using Tapatalk
Sir would you please make an auto tint guide for gb roms?thanks.
Android小楼阁-QQ群 439637151
来自搭载Android 2.3 GingerBread的华为Y220-T10
hi i cant find oplosandev in my settings.what should i do?'
thanks
pro1001 said:
hi i cant find oplosandev in my settings.what should i do?'
thanks
Click to expand...
Click to collapse
Hi! Sorry but I was inactive a time oplosandev in in attachment, just add it in your settings.
zhaozihanzzh said:
Sir would you please make an auto tint guide for gb roms?thanks.
Android小楼阁-QQ群 439637151
来自搭载Android 2.3 GingerBread的华为Y220-T10
Click to expand...
Click to collapse
Sorry but GB doesn't support auto tinting.
minealex2244 said:
Sorry but GB doesn't support auto tinting.
Click to expand...
Click to collapse
You're welcome.I found another guidehttp://forum.xda-developers.com/android/general/how-to-tinted-status-bar-using-app-t3048978 can tint GB status bar,it needs to replace app package and hex color.
Sorry for my bad english.
来自华为荣耀畅玩4C CHM-TL00H -天生急性子 Android 小楼阁
zhaozihanzzh said:
You're welcome.I found another guidehttp://forum.xda-developers.com/android/general/how-to-tinted-status-bar-using-app-t3048978 can tint GB status bar,it needs to replace app package and hex color.
Sorry for my bad english.
来自华为荣耀畅玩4C CHM-TL00H -天生急性子 Android 小楼阁
Click to expand...
Click to collapse
That's cool. I didn't know that GB got this awesome feature . And your english is very good
cant find This Ids
17.Open public.xml in res/values. Find and copy this ids:
"dynamic_status_bar_color"
"dynamic_status_bar_filter"
"dynamic_status_bar_gradient"
18.Open color.smali in systemui/smali/com/fmd/statusbarcolor. Find and replace ids:
const v0, 0x7f08012b ("dynamic_status_bar_color") - ada 2 -
const v0, 0x7f08012c ("dynamic_status_bar_filter") - ada 2 -
const v0, 0x7f08012d ("dynamic_status_bar_gradient") - ada 2 -
i cant find These Ids and when i compile and decompile i dont find the smali folder
TheBlackCoder7 said:
17.Open public.xml in res/values. Find and copy this ids:
"dynamic_status_bar_color"
"dynamic_status_bar_filter"
"dynamic_status_bar_gradient"
18.Open color.smali in systemui/smali/com/fmd/statusbarcolor. Find and replace ids:
const v0, 0x7f08012b ("dynamic_status_bar_color") - ada 2 -
const v0, 0x7f08012c ("dynamic_status_bar_filter") - ada 2 -
const v0, 0x7f08012d ("dynamic_status_bar_gradient") - ada 2 -
i cant find These Ids and when i compile and decompile i dont find the smali folder
Click to expand...
Click to collapse
Please use Apktool v1.5.2, import framework-res from /system/framework plus mediatek-res.apk.
It's simple to find the IDs, just follow my guide and you will learn something new
how can i immplement or add option or app into SecSettings.apk with android 6.0.1
awadh730 said:
how can i immplement or add option or app into SecSettings.apk with android 6.0.1
Click to expand...
Click to collapse
Adding a new option in TW 6.0 Settings is really hard and I never tested that. There are some tutorials on XDA of how to add (link) an app in Settings and for new options if you search how to add new options in settings on XDA you will find what you need (this task is for devs only because is about adding features). Hope it helps
I'll stop supporting this thread as I no longer have a device to test this feature.