[guide][s4 style settings/tabbed settings] for jb 4.1.2 touchwiz

Search This thread

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
guide tabbed settings/s4 style setting for jb 4.1.2 touchwiz

hy all, i want to share how to modded your jb 4.1.2 touchwiz settings to be s4 style :d
initially, i just compare from @dikulbahrian mod, but other member want to create their own modding
so, i provided little guide here, and big thanks to sir @Adi Aisiteru Reborn, @BigSplit who inspired me too
if any credits forgotten, please remind me :highfive:

ok let's continue to guide

STEP-1
Decompile your SecSettings.apk
go to res/values/ids.xml and add blue line at the end
Code:
[COLOR="Blue"]<item type="id" name="ikon">false</item>
    <item type="id" name="judul">false</item>[/COLOR]
</resources>

go to res/values/strings.xml and add blue line at the end
Code:
[COLOR="Blue"]<string name="ipul_tab1">My device</string>
    <string name="ipul_tab2">Connections</string>
    <string name="ipul_tab3">Accounts</string>
    <string name="ipul_tab4">More</string>[/COLOR]
</resources>

go to res/values/styles.xml and add blue line at the end
Code:
[COLOR="Blue"]<style name="senjakala" parent="@*android:style/Theme.DeviceDefault">
        <item name="android:windowNoTitle">true</item>
    </style>[/COLOR]
</resources>

go to AndroidManifest.xml
find line like this :
Code:
<activity android:label="@string/settings_label_launcher" android:name="Settings" android:taskAffinity="com.android.settings" android:launchMode="singleTask" android:configChanges="keyboardHidden|orientation|screenSize">
            <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>

Delete All line, and replace with this :
Code:
<activity android:theme="@style/senjakala" android:name="com.cyan.tabbed.TabActivity" 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>
        <activity android:label="@string/settings_label_launcher" android:name="CyanSettings" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
            <intent-filter>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

Next download resources i provided here
merge to your SecSettings and confirm replace
Recompile your SecSettings and Sign it!! don't forget to sign because we edit AndroidManifest.xml
Go to STEP-2
 

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
STEP-2
Decompile again your SecSettings.apk
Download my public.xml here leave open for compare id public from your's
Open your public.xml
Go to smali\com\cyan\tabbed\TabActivity.smali
Find All public id with with code prefix 0x7fxxxxxx
for example, in the TabActivity.smali you will find 0x7f040139
copy these code and search in public.xml that I'm provided
you will find in public.xml like this
Code:
<public type="layout" name="ipul_indikator" id="0x7f040139" />

then copy <public type="layout" name="ipul_indikator" find in your public.xml
so you will find like this
Code:
<public type="layout" name="ipul_indikator" id="0x7fxxxxxx" />

copy your id 0x7fxxxxxx to replace 0x7f040139 in TabActivity.smali
Do for All, you will find 12 id like that

For same method, go to smali\com\android\settings\
Do All for this smali's :
AppSettings.smali
AppSettings$HeaderAdapter.smali

CyanSettings.smali
CyanSettings$HeaderAdapter.smali

DeviceSettings.smali
DeviceSettings$HeaderAdapter.smali

PersonalSettings.smali
PersonalSettings$HeaderAdapter.smali

Settings.smali
Settings$HeaderAdapter.smali

Recompile Your SecSettings, sign it!
push to your system, it should work with 4 blank tabs, if FC, check again your bublic
Don't follow next step until you have Work your Settings!
 
Last edited:

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
STEP-3
we will fill all the tabs, follow these steps correctly!!!!, or you will get forceclose!!!
go to res\xml
open ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml.
Change from :
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android" />

to like this
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    
</preference-headers>



open your settings_header.xml in res\xml\ and leave ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml open too

Copy some code from your settings_header.xml to ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml
Not All, because not all code is available in your ROM, if you do for all it will forceclosed!!!!
For Compare, I manage like this :

This is my settings_header.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:id="@id/home_settings_category" android:title="@string/home_settings_category" />
    <header android:icon="@drawable/APKTOOL_DUMMY_0150" android:id="@id/home_settings" android:title="@string/home_settings_header" android:fragment="com.android.settings.HomeSettings" />
    <header android:title="@string/header_category_wireless_networks" />
    <header android:icon="@drawable/APKTOOL_DUMMY_013c" android:id="@id/airplane_mode" android:title="@string/airplane_mode" android:fragment="com.android.settings.AirplaneModeSettings" />
    <header android:icon="@drawable/ic_settings_wireless" android:id="@id/wifi_settings" android:title="@string/wifi_settings_title" android:fragment="com.android.settings.wifi.WifiSettings" />
    <header android:icon="@drawable/ic_mobilehotspot" android:id="@id/wifi_ap_settings" android:title="@string/wifi_tether_checkbox_text" android:fragment="com.android.settings.wifi.mobileap.WifiApSettings" />
    <header android:icon="@drawable/ic_settings_sprint_hotspot" android:id="@id/wifi_sprinthotspot_settings" android:title="@string/wifi_tether_checkbox_text" android:fragment="com.android.settings.wifi.mobileap.WifiApSettings" />
    <header android:icon="@drawable/ic_settings_bluetooth2" android:id="@id/bluetooth_settings" android:title="@string/bluetooth_settings_title" android:fragment="com.android.settings.bluetooth.BluetoothSettings" />
    <header android:icon="@drawable/ic_settings_data_usage" android:id="@id/data_usage_settings" android:title="@string/data_usage_summary_title" android:fragment="com.android.settings.DataUsageSummary" />
    <header android:icon="@drawable/ic_settings_roaming" android:id="@id/global_roaming_settings" android:title="@string/lgt_service_global_auto_roaming" android:fragment="com.android.settings.GlobalRoamingSettings" />
    <header android:id="@id/operator_settings" android:fragment="com.android.settings.WirelessSettings">
        <intent android:action="com.android.settings.OPERATOR_APPLICATION_SETTING" />
    </header>
    <header android:icon="@drawable/ic_settings_more" android:id="@id/wireless_settings" android:title="@string/more_settings" android:fragment="com.android.settings.WirelessSettings" android:breadCrumbTitle="@string/wireless_networks_settings_title" />
    <header android:icon="@drawable/ic_settings_nearby_device" android:id="@id/header_nearby_settings" android:title="@string/allshare_nearby" android:fragment="com.android.settings.nearby.NearbySettings" android:breadCrumbTitle="@string/allshare_nearby" />
    <header android:title="@string/header_category_device" />
    <header android:icon="@drawable/ic_settings_easy_mode" android:id="@id/easy_mode_settings" android:title="@string/mode_change_title" android:fragment="com.android.settings.EasyModeSettings" />
    <header android:icon="@drawable/ic_settings_dormant_mode" android:id="@id/dormant_mode" android:title="@string/dormant_mode" android:fragment="com.android.settings.dormantmode.DormantmodeSettings" />
    <header android:icon="@drawable/ic_settings_sim_card_manager" android:id="@id/simcard_management" android:title="@string/sim_card_management_ds">
        <intent android:targetPackage="com.android.settings" android:action="android.intent.action.MAIN" android:targetClass="com.android.settings.NetworkManagement" />
    </header>
    <header android:icon="@drawable/ic_settings_sound" android:id="@id/sound_settings" android:title="@string/sound_settings" android:fragment="com.android.settings.SoundSettings" />
    <header android:icon="@drawable/ic_settings_display" android:id="@id/display_settings" android:title="@string/display_settings" android:fragment="com.android.settings.DisplaySettings" />
    <header android:icon="@drawable/ic_settings_block" android:id="@id/block_settings" android:title="@string/block_settings_title" android:fragment="com.android.settings.BlockSettings" />
    <header android:icon="@drawable/APKTOOL_DUMMY_0153" android:id="@id/customizable_key" android:title="@string/customizable_key_title" android:fragment="com.android.settings.customizablekey.CustomizableKeySettings" />
    <header android:icon="@drawable/ic_settings_storage" android:id="@id/storage_settings" android:title="@string/storage_settings" android:fragment="com.android.settings.deviceinfo.Memory" />
    <header android:icon="@drawable/ic_settings_powersaving" android:id="@id/power_saving_mode" android:title="@string/power_saving_mode_title" android:fragment="com.android.settings.powersavingmode.MenuPowerSavingModeSettings" />
    <header android:icon="@drawable/ic_settings_power" android:id="@id/power_settings" android:title="@string/power_title" android:fragment="com.android.settings.PowerSettings" />
    <header android:icon="@drawable/ic_settings_battery" android:id="@id/battery_settings" android:title="@string/power_usage_summary_title" android:fragment="com.android.settings.fuelgauge.PowerUsageSummary" />
    <header android:icon="@drawable/ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
    <header android:id="@id/manufacturer_settings" android:fragment="com.android.settings.WirelessSettings">
        <intent android:action="com.android.settings.MANUFACTURER_APPLICATION_SETTING" />
    </header>
    <header android:title="@string/header_category_personal" />
    <header android:icon="@drawable/APKTOOL_DUMMY_014b" android:id="@id/docomoservice_settings" android:title="@string/docomoservice_settings">
        <intent android:targetPackage="com.nttdocomo.android.docomoset" android:action="android.intent.action.MAIN" android:targetClass="com.nttdocomo.android.docomoset.DocomoServiceSetting" />
    </header>
    <header android:icon="@drawable/ic_settings_sync" android:id="@id/user_settings" android:title="@string/user_settings_title" android:fragment="com.android.settings.users.UserSettings" />
    <header android:icon="@drawable/ic_settings_location" android:id="@id/location_settings" android:title="@string/location_settings_title" android:fragment="com.android.settings.LocationSettings" />
    <header android:icon="@drawable/ic_settings_lockscreen_menu" android:id="@id/lock_screen_menu_settings" android:title="@string/lockscreen_wallpaper" android:fragment="com.android.settings.LockscreenMenuSettings" />
    <header android:icon="@drawable/ic_settings_security" android:id="@id/security_settings" android:title="@string/security_settings_title" android:fragment="com.android.settings.SecuritySettings" />
    <header android:icon="@drawable/ic_settings_customizedkey" android:id="@id/customizedkey_settings" android:title="@string/customizedkey_settings_title">
        <intent android:targetPackage="com.android.settings" android:action="android.intent.action.MAIN" android:targetClass="com.android.settings.customizedkey.CustomizedKeySettings" />
    </header>
    <header android:icon="@drawable/APKTOOL_DUMMY_015a" android:id="@id/onehand_settings" android:title="@string/onehand_settings_title" android:fragment="com.android.settings.OneHandSettings" />
    <header android:icon="@drawable/ic_settings_language" android:id="@id/language_settings" android:title="@string/language_settings" android:fragment="com.android.settings.inputmethod.InputMethodAndLanguageSettings" />
    <header android:icon="@drawable/ic_settings_cloud" android:id="@id/scloud_settings" android:title="@string/scloud_settings" android:fragment="com.android.settings.cloud.CloudSettingsMainFragment" />
    <header android:icon="@drawable/ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
    <header android:id="@id/account_settings" android:title="@string/account_settings" />
    <header android:icon="@drawable/backup_assistant_icon" android:id="@id/bua_plus" android:title="@string/bua_plus_title">
        <intent android:action="com.samsung.vmmhux.ACTION_VMMHUX_SETUPWIZARD" />
    </header>
    <header android:icon="@drawable/ic_menu_add" android:id="@id/account_add" android:title="@string/add_account_label">
        <intent android:action="android.settings.ADD_ACCOUNT_SETTINGS" />
    </header>
    <header android:title="@string/header_category_system" />
    <header android:icon="@drawable/ic_settings_motion" android:id="@id/motion_settings" android:title="@string/motion_title" android:fragment="com.android.settings.motion.MotionSettings" />
    <header android:icon="@drawable/ic_settings_motion" android:id="@id/s_motion_settings" android:title="@string/s_motion_title" android:fragment="com.android.settings.motion2013.SMotionSettings" />
    <header android:icon="@drawable/APKTOOL_DUMMY_014e" android:id="@id/finger_air_view_settings" android:title="@string/finger_air_view_title" android:fragment="com.android.settings.FingerAirViewSettings" />
    <header android:icon="@drawable/APKTOOL_DUMMY_0162" android:id="@id/dualmode_settings" android:title="@string/sim_card_management">
        <intent android:action="com.welgate.DualmodeSetting.DUALMODESETTING_START" />
    </header>
    <header android:icon="@drawable/APKTOOL_DUMMY_0162" android:id="@id/dualSlot_settings" android:title="@string/dual_standby_management">
        <intent android:action="settings.SIM_CARD_NETWORK" />
    </header>
    <header android:icon="@drawable/ic_settings_pen" android:id="@id/pen_settings_menu" android:title="@string/pen_settings_title" android:fragment="com.android.settings.PenSettingsMenu" />
    <header android:icon="@drawable/ic_settings_dock" android:id="@id/dock_settings" android:title="@string/accessory" android:fragment="com.android.settings.DockSettings" />
    <header android:icon="@drawable/ic_settings_hdmi" android:id="@id/hdmi_settings" android:title="@string/hdmi" android:fragment="com.android.settings.DockSettings" />
    <header android:icon="@drawable/ic_settings_usb_vzw" android:id="@id/usb_settings" android:title="@string/usb_settings_title" android:fragment="com.android.settings.deviceinfo.UsbSettings" />
    <header android:icon="@drawable/ic_settings_date_time" android:id="@id/date_time_settings" android:title="@string/date_and_time_settings_title" android:fragment="com.android.settings.DateTimeSettings" />
    <header android:icon="@drawable/ic_settings_accessibility" android:id="@id/accessibility_settings" android:title="@string/accessibility_settings" android:fragment="com.android.settings.AccessibilitySettings" />
    <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings" android:title="@string/development_settings_title" android:fragment="com.android.settings.DevelopmentSettings" />
    <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings_orange" android:title="@string/development_settings_title_orange" android:fragment="com.android.settings.DevelopmentSettings" />
    <header android:icon="@drawable/ic_settings_activate_device" android:id="@id/activate_this_device" android:title="@string/activate_this_device" android:fragment="com.android.settings.ActivateThisDevice" />
    <header android:icon="@drawable/ic_settings_system_update" android:id="@id/system_update" android:title="@string/system_update" android:fragment="com.android.settings.SprintUpdateSettings" />
    <header android:icon="@drawable/ic_settings_about" android:id="@id/about_settings" android:title="@string/about_settings" android:fragment="com.android.settings.DeviceInfoSettings" />
</preference-headers>

I manage like this
ipul_account.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:title="Input and control" />
    <header android:icon="@drawable/ic_settings_language" android:id="@id/language_settings" android:title="@string/language_settings" android:fragment="com.android.settings.inputmethod.InputMethodAndLanguageSettings" />
    <header android:icon="@drawable/ic_settings_motion" android:id="@id/motion_settings" android:title="@string/motion_title" android:fragment="com.android.settings.motion.MotionSettings" />
    <header android:id="@id/account_settings" android:title="My accounts" />
    <header android:icon="@drawable/ic_menu_add" android:id="@id/account_add" android:title="@string/add_account_label">
        <intent android:action="android.settings.ADD_ACCOUNT_SETTINGS" />
    </header>
    <header android:title="Backup options" />
    <header android:icon="@drawable/ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
</preference-headers>

ipul_connect.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:title="@string/header_category_wireless_networks" />
    <header android:icon="@drawable/ic_settings_wireless" android:id="@id/wifi_settings" android:title="@string/wifi_settings_title" android:summary="@string/tap_to_configure" android:fragment="com.android.settings.wifi.WifiSettings" />
    <header android:icon="@drawable/ic_settings_bluetooth2" android:id="@id/bluetooth_settings" android:title="@string/bluetooth_settings_title" android:summary="@string/tap_to_configure" android:fragment="com.android.settings.bluetooth.BluetoothSettings" />
    <header android:icon="@drawable/ic_settings_data_usage" android:id="@id/data_usage_settings" android:title="@string/data_usage_summary_title" android:fragment="com.android.settings.DataUsageSummary" />
    <header android:icon="@drawable/ic_settings_more" android:id="@id/wireless_settings" android:title="@string/more_settings" android:fragment="com.android.settings.WirelessSettings" android:breadCrumbTitle="@string/wireless_networks_settings_title" />
    <header android:icon="@drawable/ic_settings_location" android:id="@id/location_settings" android:title="@string/location_settings_title" android:fragment="com.android.settings.LocationSettings" />
</preference-headers>

ipul_device.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:title="Personal" />
    <header android:icon="@drawable/ic_settings_lockscreen_menu" android:id="@id/lock_screen_menu_settings" android:title="@string/lockscreen_wallpaper" android:fragment="com.android.settings.LockscreenMenuSettings" />
    <header android:icon="@drawable/ic_settings_display" android:id="@id/display_settings" android:title="@string/display_settings" android:fragment="com.android.settings.DisplaySettings" />
    <header android:icon="@drawable/ic_settings_sound" android:id="@id/sound_settings" android:title="@string/sound_settings" android:fragment="com.android.settings.SoundSettings" />
    <header android:icon="@drawable/ic_settings_easy_mode" android:id="@id/easy_mode_settings" android:title="@string/mode_change_title" android:fragment="com.android.settings.EasyModeSettings" />
    <header android:icon="@drawable/ic_settings_dormant_mode" android:id="@id/dormant_mode" android:title="@string/dormant_mode" android:fragment="com.android.settings.dormantmode.DormantmodeSettings" />
    <header android:icon="@drawable/ic_settings_accessibility" android:id="@id/accessibility_settings" android:title="@string/accessibility_settings" android:fragment="com.android.settings.AccessibilitySettings" />
    <header android:icon="@drawable/ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
    <header android:icon="@drawable/ic_settings_security" android:id="@id/security_settings" android:title="@string/security_settings_title" android:fragment="com.android.settings.SecuritySettings" />
</preference-headers>

ipul_more.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
  xmlns:android="http://schemas.android.com/apk/res/android">
    <header android:title="System manager" />
    <header android:icon="@drawable/ic_settings_battery" android:id="@id/battery_settings" android:title="@string/power_usage_summary_title" android:fragment="com.android.settings.fuelgauge.PowerUsageSummary" />
    <header android:icon="@drawable/ic_settings_storage" android:id="@id/storage_settings" android:title="@string/storage_settings" android:fragment="com.android.settings.deviceinfo.Memory" />
    <header android:icon="@drawable/ic_settings_date_time" android:id="@id/date_time_settings" android:title="@string/date_and_time_settings_title" android:fragment="com.android.settings.DateTimeSettings" />
    <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings" android:title="@string/development_settings_title" android:fragment="com.android.settings.DevelopmentSettings" />
    <header android:icon="@drawable/ic_settings_about" android:id="@id/about_settings" android:title="@string/about_settings" android:fragment="com.android.settings.DeviceInfoSettings" />
</preference-headers>
 
  • Like
Reactions: qoejohn

Sami Kabir

Senior Member
Oct 3, 2012
2,233
1,410
I'm stuck at Step 2. For some reason, after compiling and signing SecSettings.apk, it doesn't work on my phone. I get a Parsing error and the apk doesn't work. I will re-do it again and see if that solves my problem but just for my reference, is this the exact way you did it and is there any chances incompatible smali files that could have caused this issue I'm having?

Thanks in advance.
 

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
I'm stuck at Step 2. For some reason, after compiling and signing SecSettings.apk, it doesn't work on my phone. I get a Parsing error and the apk doesn't work. I will re-do it again and see if that solves my problem but just for my reference, is this the exact way you did it and is there any chances incompatible smali files that could have caused this issue I'm having?

Thanks in advance.

Something is forgotten on my guide sir,,, please Check com/android/settings/
if your phone have Settings$1.smali, Settings$2.smali and Settings$3smali, I will attach file Settings$3.smali, AppSettings$3.smali, CyanSettings$3.smali, DeviceSettings$3.smali, PersonalSettings$3.smali
And STEP-2 is ticky part to match public id's ;)
 

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
I have tested on two device with Stock JB 4.1.2, Galasy Young GT-S6310 and Galaxy S3 Mini, it's work perfecly,,
But there is a difference in two device, for Galaxy Young there are Settings$1.smali, Settings$2.smali and Settings$3.smali
but Galaxy S3 Mini just have Settings.$1.smali and Settings$2.smali

Sorry bad English
Press thanks if help :angel:
 

Sami Kabir

Senior Member
Oct 3, 2012
2,233
1,410
Something is forgotten on my guide sir,,, please Check com/android/settings/
if your phone have Settings$1.smali, Settings$2.smali and Settings$3smali, I will attach file Settings$3.smali, AppSettings$3.smali, CyanSettings$3.smali, DeviceSettings$3.smali, PersonalSettings$3.smali
And STEP-2 is ticky part to match public id's ;)

I have tested on two device with Stock JB 4.1.2, Galasy Young GT-S6310 and Galaxy S3 Mini, it's work perfecly,,
But there is a difference in two device, for Galaxy Young there are Settings$1.smali, Settings$2.smali and Settings$3.smali
but Galaxy S3 Mini just have Settings.$1.smali and Settings$2.smali

Hmm yes, I do have Settings$3.smali too. I know Step 2 is a little tricky. I have spent a lot of time and I carefully replaced all the IDs from my public.xml, so I don't think that's the problem. But yes, I will re-do this from the beginning again, very soon :)
 

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
Hmm yes, I do have Settings$3.smali too. I know Step 2 is a little tricky. I have spent a lot of time and I carefully replaced all the IDs from my public.xml, so I don't think that's the problem. But yes, I will re-do this from the beginning again, very soon :)

good luck sir :D
I might just be able to help a little bit, because I am still a beginner smali knowledge

Maybe tommorow I will share too, how to make MIUI Settings, many people confused follow guide from sir Adi Aisiteru, because base guide from CM. I manage to work on touchwiz. It's more easy. like this
 

Attachments

  • HiShoot-1413103957125.png
    HiShoot-1413103957125.png
    224.7 KB · Views: 933
  • Like
Reactions: Sami Kabir

Sami Kabir

Senior Member
Oct 3, 2012
2,233
1,410
Something is forgotten on my guide sir,,, please Check com/android/settings/
if your phone have Settings$1.smali, Settings$2.smali and Settings$3smali, I will attach file Settings$3.smali, AppSettings$3.smali, CyanSettings$3.smali, DeviceSettings$3.smali, PersonalSettings$3.smali

Hello. When will you share those smali files? And are you planning on making a similar guide for MIUI style tabbed Settings too?
 
  • Like
Reactions: syaeful

syaeful

Senior Member
Jul 31, 2013
130
87
Purbalingga
  • Like
Reactions: Sami Kabir

Rom

Senior Member
Jul 1, 2013
2,574
1,064
Lyon
@syaeful Wow :cool: :cowboy:

I would never have believed it was possible to portage double pannel shortcuts tiles included after 4.1.2, and then I say bravo!
 

Gokulb1

Senior Member
Jun 19, 2013
183
25
Trivandrum
Google Pixel 7
Help Needed

I quite didnt understand the 2nd step clearly..can anyone help me,... it was mentioned to replace the f****** code in tab activity with the one in public.xml it of ipul_indikator... and we have to do the same for 12 such ids ... so do we have to paste the id of ipul_indikator in the entire f***** in tabactivity.smali ??
plz help... thanx
 

Top Liked Posts

  • There are no posts matching your filters.
  • 4
    guide tabbed settings/s4 style setting for jb 4.1.2 touchwiz

    hy all, i want to share how to modded your jb 4.1.2 touchwiz settings to be s4 style :d
    initially, i just compare from @dikulbahrian mod, but other member want to create their own modding
    so, i provided little guide here, and big thanks to sir @Adi Aisiteru Reborn, @BigSplit who inspired me too
    if any credits forgotten, please remind me :highfive:

    ok let's continue to guide

    STEP-1
    Decompile your SecSettings.apk
    go to res/values/ids.xml and add blue line at the end
    Code:
    [COLOR="Blue"]<item type="id" name="ikon">false</item>
        <item type="id" name="judul">false</item>[/COLOR]
    </resources>

    go to res/values/strings.xml and add blue line at the end
    Code:
    [COLOR="Blue"]<string name="ipul_tab1">My device</string>
        <string name="ipul_tab2">Connections</string>
        <string name="ipul_tab3">Accounts</string>
        <string name="ipul_tab4">More</string>[/COLOR]
    </resources>

    go to res/values/styles.xml and add blue line at the end
    Code:
    [COLOR="Blue"]<style name="senjakala" parent="@*android:style/Theme.DeviceDefault">
            <item name="android:windowNoTitle">true</item>
        </style>[/COLOR]
    </resources>

    go to AndroidManifest.xml
    find line like this :
    Code:
    <activity android:label="@string/settings_label_launcher" android:name="Settings" android:taskAffinity="com.android.settings" android:launchMode="singleTask" android:configChanges="keyboardHidden|orientation|screenSize">
                <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>

    Delete All line, and replace with this :
    Code:
    <activity android:theme="@style/senjakala" android:name="com.cyan.tabbed.TabActivity" 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>
            <activity android:label="@string/settings_label_launcher" android:name="CyanSettings" android:taskAffinity="com.android.settings" android:launchMode="singleTask">
                <intent-filter>
                    <category android:name="android.intent.category.DEFAULT" />
                </intent-filter>
            </activity>

    Next download resources i provided here
    merge to your SecSettings and confirm replace
    Recompile your SecSettings and Sign it!! don't forget to sign because we edit AndroidManifest.xml
    Go to STEP-2
    1
    STEP-3
    we will fill all the tabs, follow these steps correctly!!!!, or you will get forceclose!!!
    go to res\xml
    open ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml.
    Change from :
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android" />

    to like this
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        
    </preference-headers>



    open your settings_header.xml in res\xml\ and leave ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml open too

    Copy some code from your settings_header.xml to ipul_account.xml, ipul_connect.xml, ipul_device.xml, ipul_more.xml
    Not All, because not all code is available in your ROM, if you do for all it will forceclosed!!!!
    For Compare, I manage like this :

    This is my settings_header.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        <header android:id="@id/home_settings_category" android:title="@string/home_settings_category" />
        <header android:icon="@drawable/APKTOOL_DUMMY_0150" android:id="@id/home_settings" android:title="@string/home_settings_header" android:fragment="com.android.settings.HomeSettings" />
        <header android:title="@string/header_category_wireless_networks" />
        <header android:icon="@drawable/APKTOOL_DUMMY_013c" android:id="@id/airplane_mode" android:title="@string/airplane_mode" android:fragment="com.android.settings.AirplaneModeSettings" />
        <header android:icon="@drawable/ic_settings_wireless" android:id="@id/wifi_settings" android:title="@string/wifi_settings_title" android:fragment="com.android.settings.wifi.WifiSettings" />
        <header android:icon="@drawable/ic_mobilehotspot" android:id="@id/wifi_ap_settings" android:title="@string/wifi_tether_checkbox_text" android:fragment="com.android.settings.wifi.mobileap.WifiApSettings" />
        <header android:icon="@drawable/ic_settings_sprint_hotspot" android:id="@id/wifi_sprinthotspot_settings" android:title="@string/wifi_tether_checkbox_text" android:fragment="com.android.settings.wifi.mobileap.WifiApSettings" />
        <header android:icon="@drawable/ic_settings_bluetooth2" android:id="@id/bluetooth_settings" android:title="@string/bluetooth_settings_title" android:fragment="com.android.settings.bluetooth.BluetoothSettings" />
        <header android:icon="@drawable/ic_settings_data_usage" android:id="@id/data_usage_settings" android:title="@string/data_usage_summary_title" android:fragment="com.android.settings.DataUsageSummary" />
        <header android:icon="@drawable/ic_settings_roaming" android:id="@id/global_roaming_settings" android:title="@string/lgt_service_global_auto_roaming" android:fragment="com.android.settings.GlobalRoamingSettings" />
        <header android:id="@id/operator_settings" android:fragment="com.android.settings.WirelessSettings">
            <intent android:action="com.android.settings.OPERATOR_APPLICATION_SETTING" />
        </header>
        <header android:icon="@drawable/ic_settings_more" android:id="@id/wireless_settings" android:title="@string/more_settings" android:fragment="com.android.settings.WirelessSettings" android:breadCrumbTitle="@string/wireless_networks_settings_title" />
        <header android:icon="@drawable/ic_settings_nearby_device" android:id="@id/header_nearby_settings" android:title="@string/allshare_nearby" android:fragment="com.android.settings.nearby.NearbySettings" android:breadCrumbTitle="@string/allshare_nearby" />
        <header android:title="@string/header_category_device" />
        <header android:icon="@drawable/ic_settings_easy_mode" android:id="@id/easy_mode_settings" android:title="@string/mode_change_title" android:fragment="com.android.settings.EasyModeSettings" />
        <header android:icon="@drawable/ic_settings_dormant_mode" android:id="@id/dormant_mode" android:title="@string/dormant_mode" android:fragment="com.android.settings.dormantmode.DormantmodeSettings" />
        <header android:icon="@drawable/ic_settings_sim_card_manager" android:id="@id/simcard_management" android:title="@string/sim_card_management_ds">
            <intent android:targetPackage="com.android.settings" android:action="android.intent.action.MAIN" android:targetClass="com.android.settings.NetworkManagement" />
        </header>
        <header android:icon="@drawable/ic_settings_sound" android:id="@id/sound_settings" android:title="@string/sound_settings" android:fragment="com.android.settings.SoundSettings" />
        <header android:icon="@drawable/ic_settings_display" android:id="@id/display_settings" android:title="@string/display_settings" android:fragment="com.android.settings.DisplaySettings" />
        <header android:icon="@drawable/ic_settings_block" android:id="@id/block_settings" android:title="@string/block_settings_title" android:fragment="com.android.settings.BlockSettings" />
        <header android:icon="@drawable/APKTOOL_DUMMY_0153" android:id="@id/customizable_key" android:title="@string/customizable_key_title" android:fragment="com.android.settings.customizablekey.CustomizableKeySettings" />
        <header android:icon="@drawable/ic_settings_storage" android:id="@id/storage_settings" android:title="@string/storage_settings" android:fragment="com.android.settings.deviceinfo.Memory" />
        <header android:icon="@drawable/ic_settings_powersaving" android:id="@id/power_saving_mode" android:title="@string/power_saving_mode_title" android:fragment="com.android.settings.powersavingmode.MenuPowerSavingModeSettings" />
        <header android:icon="@drawable/ic_settings_power" android:id="@id/power_settings" android:title="@string/power_title" android:fragment="com.android.settings.PowerSettings" />
        <header android:icon="@drawable/ic_settings_battery" android:id="@id/battery_settings" android:title="@string/power_usage_summary_title" android:fragment="com.android.settings.fuelgauge.PowerUsageSummary" />
        <header android:icon="@drawable/ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
        <header android:id="@id/manufacturer_settings" android:fragment="com.android.settings.WirelessSettings">
            <intent android:action="com.android.settings.MANUFACTURER_APPLICATION_SETTING" />
        </header>
        <header android:title="@string/header_category_personal" />
        <header android:icon="@drawable/APKTOOL_DUMMY_014b" android:id="@id/docomoservice_settings" android:title="@string/docomoservice_settings">
            <intent android:targetPackage="com.nttdocomo.android.docomoset" android:action="android.intent.action.MAIN" android:targetClass="com.nttdocomo.android.docomoset.DocomoServiceSetting" />
        </header>
        <header android:icon="@drawable/ic_settings_sync" android:id="@id/user_settings" android:title="@string/user_settings_title" android:fragment="com.android.settings.users.UserSettings" />
        <header android:icon="@drawable/ic_settings_location" android:id="@id/location_settings" android:title="@string/location_settings_title" android:fragment="com.android.settings.LocationSettings" />
        <header android:icon="@drawable/ic_settings_lockscreen_menu" android:id="@id/lock_screen_menu_settings" android:title="@string/lockscreen_wallpaper" android:fragment="com.android.settings.LockscreenMenuSettings" />
        <header android:icon="@drawable/ic_settings_security" android:id="@id/security_settings" android:title="@string/security_settings_title" android:fragment="com.android.settings.SecuritySettings" />
        <header android:icon="@drawable/ic_settings_customizedkey" android:id="@id/customizedkey_settings" android:title="@string/customizedkey_settings_title">
            <intent android:targetPackage="com.android.settings" android:action="android.intent.action.MAIN" android:targetClass="com.android.settings.customizedkey.CustomizedKeySettings" />
        </header>
        <header android:icon="@drawable/APKTOOL_DUMMY_015a" android:id="@id/onehand_settings" android:title="@string/onehand_settings_title" android:fragment="com.android.settings.OneHandSettings" />
        <header android:icon="@drawable/ic_settings_language" android:id="@id/language_settings" android:title="@string/language_settings" android:fragment="com.android.settings.inputmethod.InputMethodAndLanguageSettings" />
        <header android:icon="@drawable/ic_settings_cloud" android:id="@id/scloud_settings" android:title="@string/scloud_settings" android:fragment="com.android.settings.cloud.CloudSettingsMainFragment" />
        <header android:icon="@drawable/ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
        <header android:id="@id/account_settings" android:title="@string/account_settings" />
        <header android:icon="@drawable/backup_assistant_icon" android:id="@id/bua_plus" android:title="@string/bua_plus_title">
            <intent android:action="com.samsung.vmmhux.ACTION_VMMHUX_SETUPWIZARD" />
        </header>
        <header android:icon="@drawable/ic_menu_add" android:id="@id/account_add" android:title="@string/add_account_label">
            <intent android:action="android.settings.ADD_ACCOUNT_SETTINGS" />
        </header>
        <header android:title="@string/header_category_system" />
        <header android:icon="@drawable/ic_settings_motion" android:id="@id/motion_settings" android:title="@string/motion_title" android:fragment="com.android.settings.motion.MotionSettings" />
        <header android:icon="@drawable/ic_settings_motion" android:id="@id/s_motion_settings" android:title="@string/s_motion_title" android:fragment="com.android.settings.motion2013.SMotionSettings" />
        <header android:icon="@drawable/APKTOOL_DUMMY_014e" android:id="@id/finger_air_view_settings" android:title="@string/finger_air_view_title" android:fragment="com.android.settings.FingerAirViewSettings" />
        <header android:icon="@drawable/APKTOOL_DUMMY_0162" android:id="@id/dualmode_settings" android:title="@string/sim_card_management">
            <intent android:action="com.welgate.DualmodeSetting.DUALMODESETTING_START" />
        </header>
        <header android:icon="@drawable/APKTOOL_DUMMY_0162" android:id="@id/dualSlot_settings" android:title="@string/dual_standby_management">
            <intent android:action="settings.SIM_CARD_NETWORK" />
        </header>
        <header android:icon="@drawable/ic_settings_pen" android:id="@id/pen_settings_menu" android:title="@string/pen_settings_title" android:fragment="com.android.settings.PenSettingsMenu" />
        <header android:icon="@drawable/ic_settings_dock" android:id="@id/dock_settings" android:title="@string/accessory" android:fragment="com.android.settings.DockSettings" />
        <header android:icon="@drawable/ic_settings_hdmi" android:id="@id/hdmi_settings" android:title="@string/hdmi" android:fragment="com.android.settings.DockSettings" />
        <header android:icon="@drawable/ic_settings_usb_vzw" android:id="@id/usb_settings" android:title="@string/usb_settings_title" android:fragment="com.android.settings.deviceinfo.UsbSettings" />
        <header android:icon="@drawable/ic_settings_date_time" android:id="@id/date_time_settings" android:title="@string/date_and_time_settings_title" android:fragment="com.android.settings.DateTimeSettings" />
        <header android:icon="@drawable/ic_settings_accessibility" android:id="@id/accessibility_settings" android:title="@string/accessibility_settings" android:fragment="com.android.settings.AccessibilitySettings" />
        <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings" android:title="@string/development_settings_title" android:fragment="com.android.settings.DevelopmentSettings" />
        <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings_orange" android:title="@string/development_settings_title_orange" android:fragment="com.android.settings.DevelopmentSettings" />
        <header android:icon="@drawable/ic_settings_activate_device" android:id="@id/activate_this_device" android:title="@string/activate_this_device" android:fragment="com.android.settings.ActivateThisDevice" />
        <header android:icon="@drawable/ic_settings_system_update" android:id="@id/system_update" android:title="@string/system_update" android:fragment="com.android.settings.SprintUpdateSettings" />
        <header android:icon="@drawable/ic_settings_about" android:id="@id/about_settings" android:title="@string/about_settings" android:fragment="com.android.settings.DeviceInfoSettings" />
    </preference-headers>

    I manage like this
    ipul_account.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        <header android:title="Input and control" />
        <header android:icon="@drawable/ic_settings_language" android:id="@id/language_settings" android:title="@string/language_settings" android:fragment="com.android.settings.inputmethod.InputMethodAndLanguageSettings" />
        <header android:icon="@drawable/ic_settings_motion" android:id="@id/motion_settings" android:title="@string/motion_title" android:fragment="com.android.settings.motion.MotionSettings" />
        <header android:id="@id/account_settings" android:title="My accounts" />
        <header android:icon="@drawable/ic_menu_add" android:id="@id/account_add" android:title="@string/add_account_label">
            <intent android:action="android.settings.ADD_ACCOUNT_SETTINGS" />
        </header>
        <header android:title="Backup options" />
        <header android:icon="@drawable/ic_settings_backup" android:id="@id/privacy_settings" android:title="@string/privacy_settings" android:fragment="com.android.settings.PrivacySettings" />
    </preference-headers>

    ipul_connect.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        <header android:title="@string/header_category_wireless_networks" />
        <header android:icon="@drawable/ic_settings_wireless" android:id="@id/wifi_settings" android:title="@string/wifi_settings_title" android:summary="@string/tap_to_configure" android:fragment="com.android.settings.wifi.WifiSettings" />
        <header android:icon="@drawable/ic_settings_bluetooth2" android:id="@id/bluetooth_settings" android:title="@string/bluetooth_settings_title" android:summary="@string/tap_to_configure" android:fragment="com.android.settings.bluetooth.BluetoothSettings" />
        <header android:icon="@drawable/ic_settings_data_usage" android:id="@id/data_usage_settings" android:title="@string/data_usage_summary_title" android:fragment="com.android.settings.DataUsageSummary" />
        <header android:icon="@drawable/ic_settings_more" android:id="@id/wireless_settings" android:title="@string/more_settings" android:fragment="com.android.settings.WirelessSettings" android:breadCrumbTitle="@string/wireless_networks_settings_title" />
        <header android:icon="@drawable/ic_settings_location" android:id="@id/location_settings" android:title="@string/location_settings_title" android:fragment="com.android.settings.LocationSettings" />
    </preference-headers>

    ipul_device.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        <header android:title="Personal" />
        <header android:icon="@drawable/ic_settings_lockscreen_menu" android:id="@id/lock_screen_menu_settings" android:title="@string/lockscreen_wallpaper" android:fragment="com.android.settings.LockscreenMenuSettings" />
        <header android:icon="@drawable/ic_settings_display" android:id="@id/display_settings" android:title="@string/display_settings" android:fragment="com.android.settings.DisplaySettings" />
        <header android:icon="@drawable/ic_settings_sound" android:id="@id/sound_settings" android:title="@string/sound_settings" android:fragment="com.android.settings.SoundSettings" />
        <header android:icon="@drawable/ic_settings_easy_mode" android:id="@id/easy_mode_settings" android:title="@string/mode_change_title" android:fragment="com.android.settings.EasyModeSettings" />
        <header android:icon="@drawable/ic_settings_dormant_mode" android:id="@id/dormant_mode" android:title="@string/dormant_mode" android:fragment="com.android.settings.dormantmode.DormantmodeSettings" />
        <header android:icon="@drawable/ic_settings_accessibility" android:id="@id/accessibility_settings" android:title="@string/accessibility_settings" android:fragment="com.android.settings.AccessibilitySettings" />
        <header android:icon="@drawable/ic_settings_applications" android:id="@id/application_settings" android:title="@string/applications_settings" android:fragment="com.android.settings.applications.ManageApplications" />
        <header android:icon="@drawable/ic_settings_security" android:id="@id/security_settings" android:title="@string/security_settings_title" android:fragment="com.android.settings.SecuritySettings" />
    </preference-headers>

    ipul_more.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <preference-headers
      xmlns:android="http://schemas.android.com/apk/res/android">
        <header android:title="System manager" />
        <header android:icon="@drawable/ic_settings_battery" android:id="@id/battery_settings" android:title="@string/power_usage_summary_title" android:fragment="com.android.settings.fuelgauge.PowerUsageSummary" />
        <header android:icon="@drawable/ic_settings_storage" android:id="@id/storage_settings" android:title="@string/storage_settings" android:fragment="com.android.settings.deviceinfo.Memory" />
        <header android:icon="@drawable/ic_settings_date_time" android:id="@id/date_time_settings" android:title="@string/date_and_time_settings_title" android:fragment="com.android.settings.DateTimeSettings" />
        <header android:icon="@drawable/ic_settings_development" android:id="@id/development_settings" android:title="@string/development_settings_title" android:fragment="com.android.settings.DevelopmentSettings" />
        <header android:icon="@drawable/ic_settings_about" android:id="@id/about_settings" android:title="@string/about_settings" android:fragment="com.android.settings.DeviceInfoSettings" />
    </preference-headers>
    1
    Hmm yes, I do have Settings$3.smali too. I know Step 2 is a little tricky. I have spent a lot of time and I carefully replaced all the IDs from my public.xml, so I don't think that's the problem. But yes, I will re-do this from the beginning again, very soon :)

    good luck sir :D
    I might just be able to help a little bit, because I am still a beginner smali knowledge

    Maybe tommorow I will share too, how to make MIUI Settings, many people confused follow guide from sir Adi Aisiteru, because base guide from CM. I manage to work on touchwiz. It's more easy. like this
    1
    Something is forgotten on my guide sir,,, please Check com/android/settings/
    if your phone have Settings$1.smali, Settings$2.smali and Settings$3smali, I will attach file Settings$3.smali, AppSettings$3.smali, CyanSettings$3.smali, DeviceSettings$3.smali, PersonalSettings$3.smali

    Hello. When will you share those smali files? And are you planning on making a similar guide for MIUI style tabbed Settings too?
    1
    Hello. When will you share those smali files? And are you planning on making a similar guide for MIUI style tabbed Settings too?

    Sorry for slow respon sir... I was busy working out. this is Settings$3.smali sir : Settings$3.smali
    and for MIUI Style can found here sir : http://xdaforums.com/galaxy-s3-mini...ting-jb-4-1-2-touchwiz-t2908858#post56088490;)