Failed to add Listview Animation on Mediatek Rom - General Questions and Answers

I tried so many time to add list view animation.
but every time i failed.
Please help me......
i followed those thread.
Link:
http://forum.xda-developers.com/showthread.php?t=2685334
http://forum.xda-developers.com/android/themes/guide-how-to-port-mokee-listview-t2808288
Advance thanks
sorry bad english

And how about you tell your progress?
Any logcat . why it did not work?

Vivek_Neel said:
And how about you tell your progress?
Any logcat . why it did not work?
Click to expand...
Click to collapse
I followed this progress
Adi Aisiteru Reborn said:
Guide for CyanogenMod11 KOT49H
HOW TO PORT "Mokee ListView Animations" for CyanogenMod11 only !!
Hello guys, I want to share to you smali Guide how to port with settings. custom Mokee ListView Animation,.
credit to Mokee rom
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 and JAR file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else
Settings.apk
Decompile your CM11 Settings.apk
1. Settings.apk\res\values\arrays.xml
add this to end of it before
Code:
</resources>
so it will be like this
Code:
<string-array name="listview_animation_entries">
<item>@string/listview_off</item>
<item>@string/listview_wave_left</item>
<item>@string/listview_wave_right</item>
<item>@string/listview_scale</item>
<item>@string/listview_alpha</item>
<item>@string/listview_stack_top</item>
<item>@string/listview_stack_bottom</item>
<item>@string/listview_unfold</item>
<item>@string/listview_fold</item>
<item>@string/listview_translate_left</item>
<item>@string/listview_translate_right</item>
<item>@string/listview_rotate</item>
</string-array>
<string-array name="listview_animation_values">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
<item>10</item>
<item>11</item>
</string-array>
<string-array name="listview_interpolator_entries">
<item>@string/listview_off</item>
<item>@string/listview_accelerate_interpolator</item>
<item>@string/listview_decelerate_interpolator</item>
<item>@string/listview_accelerate_decelerate_interpolator</item>
<item>@string/listview_anticipate_interpolator</item>
<item>@string/listview_overshoot_interpolator</item>
<item>@string/listview_anticipate_overshoot_interpolator</item>
<item>@string/listview_bounce_interpolator</item>
</string-array>
<string-array name="listview_interpolator_values">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
</string-array>
[COLOR="Blue"]</resources>[/COLOR]
2. Settings.apk\res\values\strings.xml
add this to end of it before
Code:
</resources>
so it will be like this
Code:
<string name="listview_animation_title">ListView animation</string>
<string name="listview_off">Off</string>
<string name="listview_wave_left">Wave (left)</string>
<string name="listview_wave_right">Wave (right)</string>
<string name="listview_alpha">Alpha</string>
<string name="listview_scale">Scale</string>
<string name="listview_stack_top">Stack (top)</string>
<string name="listview_stack_bottom">Stack (bottom)</string>
<string name="listview_unfold">Unfold</string>
<string name="listview_fold">Fold</string>
<string name="listview_translate_left">Translate (left)</string>
<string name="listview_translate_right">Translate (right)</string>
<string name="listview_rotate">Rotate</string>
<string name="listview_interpolator_title">ListView interpolator</string>
<string name="listview_accelerate_interpolator">Accelerate</string>
<string name="listview_decelerate_interpolator">Decelerate</string>
<string name="listview_accelerate_decelerate_interpolator">Accelerate decelerate</string>
<string name="listview_anticipate_interpolator">Anticipate</string>
<string name="listview_overshoot_interpolator">Overshoot</string>
<string name="listview_anticipate_overshoot_interpolator">Anticipate overshoot</string>
<string name="listview_bounce_interpolator">Bounce</string>
[COLOR="Blue"]</resources>[/COLOR]
3. Settings.apk\res\xml\system_ui_settings.xml
add this line
Code:
<PreferenceScreen android:title="@string/listview_animation_title" android:key="listview_animation_settings" android:fragment="com.android.settings.adi.ListViewSettings" />
this is the example :
Code:
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen android:title="@string/system_interface_title"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
<PreferenceScreen android:title="@string/status_bar_title" android:key="status_bar" android:fragment="com.android.settings.cyanogenmod.StatusBar" />
<PreferenceScreen android:title="@string/quick_settings_panel_title" android:key="quick_settings_panel" android:fragment="com.android.settings.quicksettings.QuickSettings" />
<PreferenceScreen android:title="@string/notification_drawer_title" android:key="notification_drawer" android:fragment="com.android.settings.cyanogenmod.NotificationDrawer" />
<PreferenceCategory android:title="@string/power_menu_expanded_desktop" android:key="expanded_desktop_category">
<ListPreference android:persistent="false" android:entries="@array/expanded_desktop_entries" android:title="@string/expanded_desktop_style" android:key="expanded_desktop" android:entryValues="@array/expanded_desktop_values" />
<com.android.settings.cyanogenmod.SystemSettingCheckBoxPreference android:title="@string/expanded_desktop_system_bars_visibility" android:key="expanded_desktop_system_bars_visibility" android:summary="@string/expanded_desktop_system_bars_visibility_summary" android:defaultValue="false" />
</PreferenceCategory>
<Preference android:key="touch_screen_gesture_settings">
<intent android:targetPackage="com.cyanogenmod.settings.device" android:action="com.cyanogenmod.action.LAUNCH_TOUCHSCREEN_GESTURE_SETTINGS" android:targetClass="com.cyanogenmod.settings.device.TouchscreenGestureSettings" />
</Preference>
[COLOR="Red"]<PreferenceScreen android:title="@string/listview_animation_title" android:key="listview_animation_settings" android:fragment="com.android.settings.adi.ListViewSettings" />[/COLOR]
<PreferenceScreen android:title="@string/ram_bar" android:key="recents_panel" android:fragment="com.android.settings.adi.RecentsPanelSettings" />
<PreferenceCategory android:title="@string/navigation_bar_category">
<CheckBoxPreference android:title="@string/navbar_enable_bar" android:key="enable_nav_bar" android:summary="@string/navbar_enable_bar_summary" android:defaultValue="true" />
<PreferenceScreen android:title="@string/navbar_style_dimen_title" android:key="navbar_dimen_settings" android:dependency="enable_nav_bar" android:fragment="com.android.settings.adi.NavbarDimenSettings" />
<PreferenceScreen android:title="@string/navigation_bar_title" android:key="navigation_bar" android:dependency="enable_nav_bar" android:fragment="com.android.settings.cyanogenmod.NavBar" />
<PreferenceScreen android:title="@string/navigation_ring_title" android:key="navigation_ring" android:dependency="enable_nav_bar" android:fragment="com.android.settings.cyanogenmod.NavRing" />
<com.android.settings.cyanogenmod.SystemSettingCheckBoxPreference android:title="@string/navigation_bar_left_title" android:key="navigation_bar_left" android:summary="@string/navigation_bar_left_summary" android:dependency="enable_nav_bar" android:defaultValue="false" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/hw_keys_title" android:key="hw_keys_on_navbar">
<CheckBoxPreference android:title="@string/key_back_enabled" android:key="key_back_enabled" android:defaultValue="true" />
<CheckBoxPreference android:title="@string/key_menu_enabled" android:key="key_menu_enabled" android:defaultValue="true" />
<CheckBoxPreference android:title="@string/key_home_enabled" android:key="key_home_enabled" android:defaultValue="true" />
</PreferenceCategory>
</PreferenceScreen>
4. Download attached file and merge to your decompiled Settings.apk, done and recompile it
5. Decompile the newly Recompiled APK again
- Next go to res/values/public.xml
open it with Notepad++
search for this line
Code:
<public type="xml" name="adi_mokee_listview_animations" id="[COLOR="Red"]??????????[/COLOR]" />
and pay attention to this ??????????
leave it, but keep it open
6. from the second decompiled Settings.apk , go to Settings.apk\smali\com\android\settings\adi\ListViewSettings.smali
search for this line
Code:
const v6, 0x7f050076
change this ids value 0x7f050076 in the smali
from here
Code:
<public type="xml" name="adi_mokee_listview_animations" id="[COLOR="Red"]??????????[/COLOR]" />
7. Done and recompile your settings.apk
Click to expand...
Click to collapse
Adi Aisiteru Reborn said:
framework.jar
1. Decompile your CM11 framework.jar
go to framework.jar\classout\android\widget\
remove all AbsListView.smali and its subs file
replace them with attached file
2. Decompile your CM11 framework-res.apk
go to \framework-res.apk\res\values\public.xml
search for this lines :
Code:
<public type="attr" name="absListViewStyle" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="style" name="Animation.TypingFilter" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="style" name="Animation.TypingFilterRestore" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="layout" name="typing_filter" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="drawable" name="list_selector_background" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="accelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="accelerate_decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="anticipate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="anticipate_overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
Code:
<public type="anim" name="bounce_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
pay attention to the red highlight the last 5 digits of each line 0x010?????
3. open AbsListView.smali file I gave
and search for this
- const v0, 0x101006a
change the last 5 digits ids 1006a in the smali according to your own have in
Code:
<public type="attr" name="absListViewStyle" id="0x010[COLOR="Red"]?????[/COLOR]" />
do it too to all of line below
- const v2, 0x10301ed
Code:
<public type="style" name="Animation.TypingFilter" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10301ee
Code:
<public type="style" name="Animation.TypingFilterRestore" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v1, 0x10900b8
Code:
<public type="layout" name="typing_filter" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v1, 0x1080062
Code:
<public type="drawable" name="list_selector_background" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0005
Code:
<public type="anim" name="accelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0006
Code:
<public type="anim" name="decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0004
Code:
<public type="anim" name="accelerate_decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0007
Code:
<public type="anim" name="anticipate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0008
Code:
<public type="anim" name="overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a0009
Code:
<public type="anim" name="anticipate_overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
- const v2, 0x10a000a
Code:
<public type="anim" name="bounce_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />
4. Done and compile your framework.jar
Click to expand...
Click to collapse

Vivek_Neel said:
And how about you tell your progress?
Any logcat . why it did not work?
Click to expand...
Click to collapse
i haven't logcat but i will get you soon

Related

[?] Touchwiz 4 launcher on X10

I've attached the launcher.apk file with this post from the Galaxy SII system dump
Has anyone successfully ported the TouchWiz 4 launcher for the X10 yet?
On TripMIUI: not installed
Wolfbreak CM6.1.3: not installed
If it is straight from the system dump it will probably not install on any x10 rom with out someone tweaking the files a little bit. This was the same problem I faced with the Casio Commando launcher I system dumped.
this one works on my 2.1 rom
http://forum.xda-developers.com/showthread.php?t=1068147
svtfmook said:
this one works on my 2.1 rom
http://forum.xda-developers.com/showthread.php?t=1068147
Click to expand...
Click to collapse
This is the touchwiz 3 launcher (galaxy s), he ask about touchwiz 4 launcher (galaxy s 2).
bye
achotjan not installed
x10iachotjanblisshdluciddark.bb58
have you tried actually moving it to system/apps and changing permissions?
for the record, I tried on rdannars superasop v006, and it was a no go. Both regular install, and push to system/apps....
It doesn't work on any rom, i had tried it before as i wanted to put touchwiz 4 in kryptonfroyo rom, but i couldnt get it working. I'm still trying on it though.
Edit- it doesn't work with any 2.3 rom
jobumaru said:
This is the touchwiz 3 launcher (galaxy s), he ask about touchwiz 4 launcher (galaxy s 2).
bye
Click to expand...
Click to collapse
hence why i said "this one".
The launcher found in touchwiz 4.0 is more deeply rooted to the system then just an .apk. It relies on a few files in the framework, AKA the skin known as TouchWiz. You will see that it'll run fine on any phone with Touchwiz 4.0 (GS &GSII) but nothing else- until we add the files the launcher needs in the framework to the launcher itself. Or make it independent of those files at all.
I'm researching everything right now. I can't be the one to do this, but I can figure out how to do it.
Hello X10 users,
Someone on our neo forums has posted a link to TouchWiz 4, and it works fine on my phone (see signature of info). [It might be noted that I just installed the apk manually as a user app via a file explorer, instead of using th recovery zip, didn't try that.] Recovery zip in attachments.
Now, I see a small problem. The Galaxy SII has a 480x800 resolution, and we have 480x854 resolution. Hence this:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
So I decompiled the apk to see if I can lower the paginator icons. I think this is the correct xml file. Problem is: I'm a noob in most development stuff, including this. Who can help me?
TouchWiz30LauncherICS.apk\res\values\public.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<public type="attr" name="direction" id="0x7f010000" />
<public type="attr" name="defaultScreen" id="0x7f010001" />
<public type="attr" name="delayedShortcutDisplay" id="0x7f010002" />
<public type="attr" name="cellWidth" id="0x7f010003" />
<public type="attr" name="cellHeight" id="0x7f010004" />
<public type="attr" name="rowStartPadding" id="0x7f010005" />
<public type="attr" name="rowEndPadding" id="0x7f010006" />
<public type="attr" name="columnStartPadding" id="0x7f010007" />
<public type="attr" name="columnEndPadding" id="0x7f010008" />
<public type="attr" name="columnCells" id="0x7f010009" />
<public type="attr" name="rowCells" id="0x7f01000a" />
<public type="attr" name="applyIconHoverColorFilter" id="0x7f01000b" />
<public type="attr" name="drawDeleteZoneBg" id="0x7f01000c" />
<public type="attr" name="inOutAnimationTranslationRatio" id="0x7f01000d" />
<public type="attr" name="inOutAnimationDuration" id="0x7f01000e" />
<public type="attr" name="supportAppUninstall" id="0x7f01000f" />
<public type="attr" name="className" id="0x7f010010" />
<public type="attr" name="packageName" id="0x7f010011" />
<public type="attr" name="screen" id="0x7f010012" />
<public type="attr" name="x" id="0x7f010013" />
<public type="attr" name="y" id="0x7f010014" />
<public type="attr" name="spanX" id="0x7f010015" />
<public type="attr" name="spanY" id="0x7f010016" />
<public type="attr" name="icon" id="0x7f010017" />
<public type="attr" name="title" id="0x7f010018" />
<public type="attr" name="uri" id="0x7f010019" />
<public type="attr" name="multipleSize" id="0x7f01001a" />
<public type="attr" name="classNameFallback" id="0x7f01001b" />
<public type="attr" name="packageNameFallback" id="0x7f01001c" />
<public type="attr" name="foldertitle" id="0x7f01001d" />
<public type="attr" name="count" id="0x7f01001e" />
<public type="attr" name="width" id="0x7f01001f" />
<public type="attr" name="height" id="0x7f010020" />
<public type="attr" name="left" id="0x7f010021" />
<public type="attr" name="top" id="0x7f010022" />
<public type="attr" name="iconColumnCount" id="0x7f010023" />
<public type="attr" name="menuColumnCount" id="0x7f010024" />
<public type="attr" name="itemNumOfPage" id="0x7f010025" />
<public type="attr" name="zoomScaleLM" id="0x7f010026" />
<public type="attr" name="zoomTransYLM" id="0x7f010027" />
<public type="attr" name="modelFamily" id="0x7f010028" />
<public type="attr" name="model" id="0x7f010029" />
<public type="attr" name="useLargeDrawablesOnly" id="0x7f01002a" />
<public type="attr" name="screenCount" id="0x7f01002b" />
<public type="attr" name="defaultScreenCount" id="0x7f01002c" />
<public type="attr" name="useFullScreenQuickViewLandScape" id="0x7f01002d" />
<public type="attr" name="useMainMenuConcentrationEffect" id="0x7f01002e" />
<public type="attr" name="use16BitWindow" id="0x7f01002f" />
<public type="attr" name="useMainMenuListMode" id="0x7f010030" />
<public type="attr" name="workspaceCellsX" id="0x7f010031" />
<public type="attr" name="workspaceCellsY" id="0x7f010032" />
<public type="attr" name="maxHeight" id="0x7f010033" />
<public type="attr" name="backgroundColor" id="0x7f010034" />
<public type="attr" name="dividerThickness" id="0x7f010035" />
<public type="attr" name="dividerColor" id="0x7f010036" />
<public type="attr" name="horizontalScrollbarHeight" id="0x7f010037" />
<public type="attr" name="verticalScrollbarWidth" id="0x7f010038" />
<public type="attr" name="scrollbarPadding" id="0x7f010039" />
<public type="attr" name="scrollbarColor" id="0x7f01003a" />
<public type="attr" name="textBg" id="0x7f01003b" />
<public type="attr" name="textTypeface" id="0x7f01003c" />
<public type="attr" name="textTypefaceStyle" id="0x7f01003d" />
<public type="attr" name="textFontSize" id="0x7f01003e" />
<public type="attr" name="textColor" id="0x7f01003f" />
<public type="attr" name="textUppercase" id="0x7f010040" />
<public type="attr" name="textCharSpacingStrategy" id="0x7f010041" />
<public type="attr" name="textCharSpacingWidth" id="0x7f010042" />
<public type="attr" name="textCharPaddingLeft" id="0x7f010043" />
<public type="attr" name="textCharPaddingRight" id="0x7f010044" />
<public type="attr" name="indexGravity" id="0x7f010045" />
<public type="attr" name="popupWidth" id="0x7f010046" />
<public type="attr" name="popupHeight" id="0x7f010047" />
<public type="attr" name="popupWidthInc" id="0x7f010048" />
<public type="attr" name="popupHeightInc" id="0x7f010049" />
<public type="attr" name="firstCharColor" id="0x7f01004a" />
<public type="attr" name="touchAlpha" id="0x7f01004b" />
<public type="attr" name="normalAlpha" id="0x7f01004c" />
<public type="attr" name="alphaAnimDur" id="0x7f01004d" />
<public type="attr" name="pressDelay" id="0x7f01004e" />
<public type="attr" name="unpressDelay" id="0x7f01004f" />
<public type="attr" name="overflowGrpSepChar" id="0x7f010050" />
<public type="attr" name="firstCharPreMatches" id="0x7f010051" />
<public type="attr" name="indexBg" id="0x7f010052" />
<public type="attr" name="selTextColor" id="0x7f010053" />
<public type="attr" name="indexStr" id="0x7f010054" />
<public type="attr" name="itemsPerPage" id="0x7f010055" />
<public type="attr" name="itemPadding" id="0x7f010056" />
<public type="attr" name="pageFramePaddingLeft" id="0x7f010057" />
<public type="attr" name="pageFramePaddingTop" id="0x7f010058" />
<public type="attr" name="pageFramePaddingRight" id="0x7f010059" />
<public type="attr" name="pageFramePaddingBottom" id="0x7f01005a" />
<public type="attr" name="pageFrameExpandX" id="0x7f01005b" />
<public type="attr" name="pageFrameExpandY" id="0x7f01005c" />
<public type="attr" name="pageBorderPaddingLeft" id="0x7f01005d" />
<public type="attr" name="pageBorderPaddingTop" id="0x7f01005e" />
<public type="attr" name="pageBorderPaddingRight" id="0x7f01005f" />
<public type="attr" name="pageBorderPaddingBottom" id="0x7f010060" />
<public type="attr" name="zoomScaleMain" id="0x7f010061" />
<public type="attr" name="zoomScaleSide" id="0x7f010062" />
<public type="attr" name="normalScaleSlide" id="0x7f010063" />
<public type="attr" name="pageGap" id="0x7f010064" />
<public type="attr" name="zoomPageGap" id="0x7f010065" />
<public type="drawable" name="h_alphagradient_1to0" id="0x7f020000" />
<public type="drawable" name="v_alphagradient_1to0" id="0x7f020001" />
<public type="drawable" name="box_launcher_top" id="0x7f020002" />
<public type="drawable" name="btn_search_dialog_voice" id="0x7f020003" />
<public type="drawable" name="grid_selector" id="0x7f020004" />
<public type="drawable" name="grid_selector2" id="0x7f020005" />
<public type="drawable" name="textfield_searchwidget" id="0x7f020006" />
<public type="drawable" name="widget_frame" id="0x7f020007" />
<public type="drawable" name="widget_preview_button_left" id="0x7f020008" />
<public type="drawable" name="widget_preview_button_right" id="0x7f020009" />
<public type="drawable" name="bg_appwidget_error" id="0x7f02000a" />
<public type="drawable" name="bigpond" id="0x7f02000b" />
<public type="drawable" name="bottompanel" id="0x7f02000c" />
<public type="drawable" name="box_launcher_bottom" id="0x7f02000d" />
<public type="drawable" name="box_launcher_top_normal" id="0x7f02000e" />
<public type="drawable" name="box_launcher_top_pressed" id="0x7f02000f" />
<public type="drawable" name="box_launcher_top_selected" id="0x7f020010" />
<public type="drawable" name="btn_search_dialog_voice_default" id="0x7f020011" />
<public type="drawable" name="btn_search_dialog_voice_pressed" id="0x7f020012" />
<public type="drawable" name="btn_search_dialog_voice_selected" id="0x7f020013" />
<public type="drawable" name="citysearch" id="0x7f020014" />
<public type="drawable" name="downloads" id="0x7f020015" />
<public type="drawable" name="focused_application_background" id="0x7f020016" />
<public type="drawable" name="folder_icon_mainmenu" id="0x7f020017" />
<public type="drawable" name="foxtel" id="0x7f020018" />
<public type="drawable" name="games" id="0x7f020019" />
<public type="drawable" name="grid_gray" id="0x7f02001a" />
<public type="drawable" name="grid_point_gray" id="0x7f02001b" />
<public type="drawable" name="grid_point_red" id="0x7f02001c" />
<public type="drawable" name="grid_point_yellow" id="0x7f02001d" />
<public type="drawable" name="grid_red" id="0x7f02001e" />
<public type="drawable" name="grid_yellow" id="0x7f02001f" />
<public type="drawable" name="homescreen_menu_edit_locked" id="0x7f020020" />
<public type="drawable" name="homescreen_menu_icon_delete" id="0x7f020021" />
<public type="drawable" name="homescreen_menu_icon_edit_bg" id="0x7f020022" />
<public type="drawable" name="homescreen_menu_noti_bg" id="0x7f020023" />
<public type="drawable" name="homescreen_menu_page_focus_large" id="0x7f020024" />
<public type="drawable" name="homescreen_quick_navigation_add" id="0x7f020025" />
<public type="drawable" name="homescreen_quick_navigation_bg" id="0x7f020026" />
<public type="drawable" name="homescreen_quick_navigation_bg_press" id="0x7f020027" />
<public type="drawable" name="homescreen_remove_bg" id="0x7f020028" />
<public type="drawable" name="homescreen_remove_bg_drag" id="0x7f020029" />
<public type="drawable" name="homescreen_remove_icon" id="0x7f02002a" />
<public type="drawable" name="homescreen_remove_uninstall_bg" id="0x7f02002b" />
<public type="drawable" name="homescreen_remove_uninstall_bg_drag_r" id="0x7f02002c" />
<public type="drawable" name="homescreen_remove_uninstall_bg_drag_u" id="0x7f02002d" />
<public type="drawable" name="homescreen_uninstall_icon" id="0x7f02002e" />
<public type="drawable" name="hover_outline" id="0x7f02002f" />
<public type="drawable" name="ic_btn_speak_now" id="0x7f020030" />
<public type="drawable" name="ic_launcher_add_folder" id="0x7f020031" />
<public type="drawable" name="ic_launcher_application" id="0x7f020032" />
<public type="drawable" name="ic_launcher_home" id="0x7f020033" />
<public type="drawable" name="ic_launcher_appwidget" id="0x7f020034" />
<public type="drawable" name="ic_launcher_folder" id="0x7f020035" />
<public type="drawable" name="ic_launcher_shortcut" id="0x7f020036" />
<public type="drawable" name="ic_launcher_wallpaper" id="0x7f020037" />
<public type="drawable" name="ic_menu_add" id="0x7f020038" />
<public type="drawable" name="ic_menu_cancel" id="0x7f020039" />
<public type="drawable" name="ic_menu_details" id="0x7f02003a" />
<public type="drawable" name="ic_menu_discard" id="0x7f02003b" />
<public type="drawable" name="ic_menu_edit" id="0x7f02003c" />
<public type="drawable" name="ic_menu_grid_view" id="0x7f02003d" />
<public type="drawable" name="ic_menu_list_view" id="0x7f02003e" />
<public type="drawable" name="ic_menu_save" id="0x7f02003f" />
<public type="drawable" name="ic_menu_search" id="0x7f020040" />
<public type="drawable" name="ic_menu_settings" id="0x7f020041" />
<public type="drawable" name="ic_menu_market" id="0x7f020042" />
<public type="drawable" name="ic_menu_wallpaper" id="0x7f020043" />
<public type="drawable" name="lm_help_1" id="0x7f020044" />
<public type="drawable" name="mainmenu_icon_application" id="0x7f020045" />
<public type="drawable" name="mainmenu_icon_folder" id="0x7f020046" />
<public type="drawable" name="mainmenu_icon_home" id="0x7f020047" />
<public type="drawable" name="mainmenu_icon_sd" id="0x7f020048" />
<public type="drawable" name="mainmenu_pop_image" id="0x7f020049" />
<public type="drawable" name="makefoldericon" id="0x7f02004a" />
<public type="drawable" name="makefoldericon_f" id="0x7f02004b" />
<public type="drawable" name="makefolderpopup" id="0x7f02004c" />
<public type="drawable" name="makepageicon" id="0x7f02004d" />
<public type="drawable" name="makepageicon_f" id="0x7f02004e" />
<public type="drawable" name="makepagepopup" id="0x7f02004f" />
<public type="drawable" name="motion_moving_panning_l" id="0x7f020050" />
<public type="drawable" name="movies" id="0x7f020051" />
<public type="drawable" name="music" id="0x7f020052" />
<public type="drawable" name="myaccount" id="0x7f020053" />
<public type="drawable" name="myemail" id="0x7f020054" />
<public type="drawable" name="mymagazine_handle" id="0x7f020055" />
<public type="drawable" name="news" id="0x7f020056" />
<public type="drawable" name="page_outline" id="0x7f020057" />
<public type="drawable" name="pageindicator_fastscroll_bar_nine" id="0x7f020058" />
<public type="drawable" name="pageindicator_fastscroll_handle" id="0x7f020059" />
<public type="drawable" name="pageindicator_fastscroll_panel" id="0x7f02005a" />
<public type="drawable" name="panel_frame" id="0x7f02005b" />
<public type="drawable" name="panel_highlight" id="0x7f02005c" />
<public type="drawable" name="placeholder_google" id="0x7f02005d" />
<public type="drawable" name="preview_arrow_left" id="0x7f02005e" />
<public type="drawable" name="preview_arrow_left_disable" id="0x7f02005f" />
<public type="drawable" name="preview_arrow_left_focus" id="0x7f020060" />
<public type="drawable" name="preview_arrow_left_press" id="0x7f020061" />
<public type="drawable" name="preview_arrow_right" id="0x7f020062" />
<public type="drawable" name="preview_arrow_right_disable" id="0x7f020063" />
<public type="drawable" name="preview_arrow_right_focus" id="0x7f020064" />
<public type="drawable" name="preview_arrow_right_press" id="0x7f020065" />
<public type="drawable" name="preview_title_tab_bg" id="0x7f020066" />
(...)
<public type="string" name="viewtype_dialog_item_alphabetical_grid" id="0x7f0800ae" />
<public type="string" name="viewtype_dialog_item_alphabetical_list" id="0x7f0800af" />
<public type="string" name="mm_listmode_alpha_index" id="0x7f0800b0" />
<public type="string" name="tips_dialog_text" id="0x7f0800b1" />
<public type="string" name="tips_dialog_title" id="0x7f0800b2" />
<public type="string" name="tips_dialog_switch_button" id="0x7f0800b3" />
<public type="string" name="tips_dialog_cancel_button" id="0x7f0800b4" />
<public type="string" name="background_note" id="0x7f0800b5" />
<public type="string" name="folder_utility" id="0x7f0800b6" />
<public type="string" name="dmb_rest" id="0x7f0800b7" />
<public type="string" name="restrictdmb" id="0x7f0800b8" />
<public type="string" name="home_screen_delete" id="0x7f0800b9" />
<public type="string" name="lm_help_1_content" id="0x7f0800ba" />
<public type="bool" name="config_force32BitWindowAlways" id="0x7f090000" />
<public type="bool" name="config_useFullScreenQuickViewLandscape" id="0x7f090001" />
<public type="bool" name="config_useMainMenuConcentrationEffect" id="0x7f090002" />
<public type="bool" name="mm_enableListMode" id="0x7f090003" />
<public type="bool" name="pageindicator_largeDrawableOnly" id="0x7f090004" />
<public type="bool" name="pageindicator_showhide_enable" id="0x7f090005" />
(...)
<public type="dimen" name="pageindicator_top" id="0x7f0b003c" />
<public type="dimen" name="pageindicator_padH" id="0x7f0b003d" />
<public type="dimen" name="pageindicator_padV" id="0x7f0b003e" />
<public type="dimen" name="pageindicator_launcherManagerTransY" id="0x7f0b003f" />
<public type="dimen" name="pageindicator_pageicon_fontsize" id="0x7f0b0040" />
<public type="dimen" name="pageindicator_fastscroll_fontsize" id="0x7f0b0041" />
<public type="dimen" name="pageindicator_fastscroll_paneloffset" id="0x7f0b0042" />
Here's the original post in the SGS forum:
http://forum.xda-developers.com/showthread.php?t=1520436
Did you notice there was a link to a modded version with a 'lower bar' for the Nexus?

[Dev][Modding]TW Lollipop, Torch, 5Way reboot, SystemUI patches [more]

Before everything I am still a noob and this is what I read, dig and somehow have been trying to figure out so please be friendly if you got some of/his so-called guides are not complete or need to be more comprehensive. And as sharing is caring I would like to share some hack or patches to make our devices smarter.
Requirement:
apktool. I have been using Advanced ApkTool but there is some problem on Samsung Lollipop on which some apps cannot be decompiled/recompile correctly. Then, I found an apktool kit which is moddified specially for Samsung Lollipop android version and I repacked Advanced ApkTool with the proper apktool.
You can download it here. credit @BDFreak
Notepad++ program from here
Willing to learn, patience, sense of try and error and a little brain
Content:
5Way Reboot TW lollipop
Enable Torch Toggle in Settings
Add Internet Speed meter on Statusbar
Remove Sfinder and Quick Connect from notification panel:
3Minit Battery
Add lockscreen and recent shortcut on Notification panel header
Move WiFi and Data icons to left side of statusbar
3minit quick launch for TW Lollipop
Center Clock on statusbar
How to enable other Samsung lockscreen effects
Add Flashlight and Screenshot to Power Menu
TW Themeing guides
Remove green and orange banner when dialing/receiving calls
How to make Sun shape AOSP brightness handle on notification panel
How to make AOSP category divider on SETTINGS
5Way Reboot TW
Marshmallow
See here
Lollipop
Credit @darkera13 from http://samsungviet.vn/ :good:
And thanks @daxgirl for some hints :good:
I thought here is good place to post and keep some guides for future modifications.
Decompile android.policy.jar and go to smali /com/android/internal/policy/impl/GlobalActions.smali
Search:
Code:
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$[COLOR="SeaGreen"]8[/COLOR];
Change to:
Code:
new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$[COLOR="Red"]99[/COLOR];
Search:
Code:
invoke-direct {v2, v0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$[COLOR="SeaGreen"]8[/COLOR];-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
Change to:
Code:
invoke-direct {v2, v0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$[COLOR="red"]99[/COLOR];-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
Save this file and now open smali/com/android/internal/policy/impl/GlobalActions $ SinglePressAction.smali
Search:
Code:
# Instance fields
Add following in red above it
Code:
[COLOR="SeaGreen"].end annotation[/COLOR]
# static fields
[COLOR="Red"].field public static rebootMode:I
.field public static final rebootOptions:[Ljava/lang/String;
.field public static final rebootString:[Ljava/lang/String;[/COLOR]
[COLOR="SeaGreen"]# instance fields
.field public customAction:I[/COLOR]
Search:
Code:
.method protected constructor <init>(II)V
Add entire method above it
Code:
# direct methods
.method static constructor <clinit>()V
.locals 9
const/4 v8, 0x5
const/4 v7, 0x4
const/4 v6, 0x3
const/4 v5, 0x2
const/4 v4, 0x1
const/4 v3, 0x0
new-array v0, v8, [Ljava/lang/String;
const-string v2, "Reboot"
aput-object v2, v0, v3
const-string v2, "Hot Reboot"
aput-object v2, v0, v4
const-string v2, "Download"
aput-object v2, v0, v5
const-string v2, "Recovery"
aput-object v2, v0, v6
const-string v2, "Safe Mode"
aput-object v2, v0, v7
sput-object v0, Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;->rebootString:[Ljava/lang/String;
new-array v1, v8, [Ljava/lang/String;
const-string v2, "Reboot"
aput-object v2, v1, v3
const-string v2, "Hot Reboot"
aput-object v2, v1, v4
const-string v2, "Download"
aput-object v2, v1, v5
const-string v2, "Recovery"
aput-object v2, v1, v6
const-string v2, "Safe Mode"
aput-object v2, v1, v7
sput-object v1, Lcom/android/internal/policy/impl/GlobalActions$SinglePressAction;->rebootOptions:[Ljava/lang/String;
return-void
.end method
[COLOR="SeaGreen"].method protected constructor <init>(II)V[/COLOR]
Save. Now download attached files and copy them into smali/com/android/internal/policy/impl/here.
Make sure Lcom/android/internal/policy/impl/GlobalActions got the same access$, it's access$500 at my end it might be different in different devices. Compare GlobalActions.smali with GlobalActions$99.smali
There is an id in GlobalActions$99;
Code:
const v2, [COLOR="Red"]0x112000a[/COLOR]
that also needs to be same as in framework>public
Code:
<public type="bool" name="show_ongoing_ime_switcher" id="0x0112000a" />
Click to expand...
Click to collapse
Recompile and profit.
If you would like to change power menu's title, open GlobalActions$99.smali
Search for
Code:
const-string v2, "[COLOR="Red"]Reboot Options[/COLOR]"
and change it to whatever you wish
Enable Torch Toggle in Settings
Integrate In Settings
edit 1: Smali's are updated to cover all TW devices thanks @tdunham :good:
edit 2: Smali's are updated for Android MM compatibilty thanks @tdunham @edzamber :good:
Decompile Settings
Download attached torch_materials.zip and paste them accordingly
Go to values folder open arrays.xml and check whether following arrays are availble if not add them
Code:
<string-array name="torchlight_timeout_entries">
<item>15 seconds</item>
<item>30 seconds</item>
<item>1 minute</item>
<item>2 minutes</item>
<item>10 minutes</item>
</string-array>
<string-array name="torchlight_timeout_values">
<item>15000</item>
<item>30000</item>
<item>60000</item>
<item>120000</item>
<item>600000</item>
</string-array>
Go to values folder open plurals.xml and check whether you have following plurals if not add them
Code:
</plurals>
<plurals name="torchlight_timeout_minutes">
<item quantity="other">%d minutes</item>
<item quantity="one">1 minute</item>
</plurals>
<plurals name="torchlight_timeout_seconds">
<item quantity="other">%d seconds</item>
<item quantity="one">1 second</item>
</plurals>
Go to values folder open strings.xml and check whether you have following strings if not add them
Code:
<string name="torchlight_settings">Torch light</string>
<string name="torchlight_settings_title">Torch light</string>
<string name="torchlight_summary">Turn on the torch light by pressing and holding the volume up key while the screen is off.</string>
<string name="torchlight_timeout_title">Torch light time-out</string>
<string name="torchlight_timeout_summary">After %1$s</string>
Go to xml folder, open device_headers.xml and add following line in red
Code:
[COLOR="Red"] </header>
<header android:icon="@drawable/ic_settings_torchlight" android:id="@id/torchlight_settings" android:title="@string/torchlight_settings" android:fragment="com.android.settings.torchlight.TorchlightSettings" />[/COLOR]
<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" />
add red line below in display_settings_2013.xml.
Code:
<CheckBoxPreference android:title="@string/intelligent_sleep_title" android:key="smartscreen_stay" android:summary="@string/intelligent_sleep_summary" />
[COLOR="Red"]<PreferenceScreen android:title="Torchlight" android:key="[COLOR="red"]torchlight[/COLOR]" android:fragment="com.android.settings.torchlight.TorchlightSettings" />[/COLOR]
<CheckBoxPreference android:title="@string/smart_pause_title" android:key="smartscreen_pause" android:summary="@string/smart_pause_summary" />
Now it's time to create ids, so recompile and rename settings as settings_new to avoid confusion
Now decompile settings_new
Go to TorchlightSettings.smali
Open public.xml too and check what I noted beside every id, match ids accordingly
Recompile and profit >
Integrate in ROM Control (MM)
Code:
<SwitchPreference
android:title="Torchlight"
android:key="[COLOR="Red"]torchlight_enable[/COLOR]"
android:summary="Turn on the torch light by pressing and holding the volume up key while the screen is off" android:defaultValue="0" />
<com.[COLOR="Red"]aryamod[/COLOR].romcontrol.prefs.MyListPreference
android:entries="@array/torchlight_timeout_entries"
android:title="@string/torchlight_timeout_title"
android:key="torchlight_timeout"
android:dependency="torchlight_enable"
android:entryValues="@array/torchlight_timeout_values" />
Add Auto Start Management
This mod would let you choose to prevent/allow selected apps of running on system startup.
Download attached zip and drop those files in your settings.
Now go to values open ids.xml and add following
Code:
<item type="id" name="autostarts_settings">false</item>
<item type="id" name="appName">false</item>
<item type="id" name="aryamod">false</item>
open strings.xml and add following:
Code:
<string name="autostarts_title">Autostarts</string>
<string name="autostarts_allowed">Has allowed</string>
<string name="autostarts_prohibited">Has prohibited</string>
<string name="autostarts_allow_progress_msg">Being restored boot, please wait...</string>
<string name="autostarts_prohibit_progress_msg">Prohibit boot, please wait...</string>
<string name="autostarts_empty_msg">No installation boot applications</string>
<string name="autostarts_optimize_empty_msg">No optimize the startup items</string>
<string name="autostarts_optimize_btn_title">Optimize the startup items</string>
<string name="autostarts_all_btn_title">Automatically Start All Applications</string>
You also need to add a header for it, which can be added anywhere in settings depending on your preference, I added in DEVICE tab like below:
Add line below in display_headers.xml.
Code:
<header android:icon="@drawable/ic_settings_autostarts" android:id="@id/aryamod" android:title="@string/autostarts_title" android:fragment="com.android.settings.autostarts.LewaManageAutostarts" />
Now it's time to produce ID, so recompile modified settings and decompile it again, go to autostart smali materials and check those IDs which I noted (starting with #<public type="...) in those smali, there might be several to check and match with your produced IDs.
How to enable UPSM for Note 3
In this guide we would mod service.jar and secsettings.apk, firstly download UPSM.zip and put EmergencyLauncher, EmergencyModeService and EmergencyProvider in app folder in attached zip.
service.jar
decompile service.jar and go to services\com\android\server
open SystemServer.smali and search for
Code:
.method static final startEmergencyModeService(Landroid/content/Context;)V
and change the entire method with following:
Code:
.method static final startEmergencyModeService(Landroid/content/Context;)V
.registers 6
:try_start_0
invoke-static {p0}, Lcom/sec/android/emergencymode/EmergencyManager;->getInstance(Landroid/content/Context;)Lcom/sec/android/emergencymode/EmergencyManager;
move-result-object v1
invoke-virtual {v1}, Lcom/sec/android/emergencymode/EmergencyManager;->readyEmergencyMode()V
:try_end_7
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_7} :catch_8
:goto_7
return-void
:catch_8
move-exception v0
const-string v2, "SystemServer"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Starting emergency service failed: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3}, Landroid/util/Slog;->d(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_7
.end method
OK now UPSM is enabled but there is a issue that after disabling it some widgets would be removed from the home screen so we need to correct the service
go to services\com\android\server\appwidget
open AppWidgetServiceImpl.smali and search for following method
Code:
.method private deleteProviderLocked(Lcom/android/server/appwidget/AppWidgetServiceImpl$Provider;)V
Now change the entire method the one in zip attached
same smali search for
Code:
.method private queryIntentReceivers(Landroid/content/Intent;I)Ljava/util/List;
change the entire method the one in zip attached
Search for this method
Code:
.method private readProfileStateFromFileLocked(Ljava/io/FileInputStream;ILjava/util/List;)I
change the entire method the one in zip attached
SecSettings.apk
Next we need to enable and access UPSM launcher that depends on you whether you have your own rom customizer or would like to add it in settings, I couldn't find proper smali to enable it as stock but I tired adding it in settings as following
decompile secsettings and add this in id.xml
Code:
<item type="id" name="aryamod">false</item>
open display_headers.xml and add UPSM header everywhere you would like to be shown like this:
Code:
<header android:icon="@drawable/ic_settings_powersaving" android:id="@id/aryamod" android:title="@string/powersaving_ultra" android:key="ultra_powersaving" android:fragment="com.android.settings.powersavingmode.PowerSavingModeUltra" />
Add Internet Speed meter on Statusbar
Decompile SystemUI.apk
Go to SystemUI.apk\res\layout open system_icons.xml
Add following line in red
Code:
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingStart="2.0dip">
[COLOR="Red"] <com.android.systemui.statusbar.policy.Traffic android:textAppearance="@style/TextAppearance.StatusBar.Traffic" android:gravity="left|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />[/COLOR]
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="2.0dip" android:layout_marginEnd="@dimen/rssi_battery_gap" layout="@layout/signal_cluster_view" />
Go to Values folder and add this in styles.xml
Code:
<style name="TextAppearance.StatusBar.Traffic" parent="@style/TextAppearance.StatusBar.Clock">
<item name="android:textSize">12.0dip</item>
<item name="android:textStyle">normal</item>
<item name="android:textColor">#bfffffff</item>
<item name="android:textAllCaps">false</item>
</style>
Open ids.xml and add following line at the bottom of page:
Code:
<item type="id" name="traffic">false</item>
copy the smali files to
smali/com/android/systemui/statusbar/policy/
Recompile and profit.
Additional Step about How to move Internet Speed meter to left side on Statusbar: Read here
[MOD] [GUIDE] Status Bar Network Traffic (Separate In/Out)
Remove Sfinder and Quick Connect from notification panel:
See here
3Minit Battery
How to add 3minit battery as this patch is changed on lollipop
You need to add red line in system_icons.xml, the rest (copying smali part) is same as the guide in main thread
Go to SystemUI.apk\res\layout and open system_icons.xml
Make sure it looks like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:gravity="center_vertical" android:id="@id/system_icons" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.keyguard.AlphaOptimizedLinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" android:alpha="0.74" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingStart="2.0dip">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="2.0dip" android:layout_marginEnd="@dimen/rssi_battery_gap" layout="@layout/signal_cluster_view" />
<TextView android:textSize="@dimen/battery_text_size" android:textColor="@color/battery_text_color" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.74" android:importantForAccessibility="no" android:fontFamily="sans-serif" android:layout_marginStart="@dimen/battery_text_marginStart" />
[COLOR="red"] <com.android.systemui.BatteryMeterView android:id="@id/battery" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_marginBottom="@dimen/battery_icon_bottom_margin" android:alpha="0.74" android:layout_marginStart="3.0dip" />
<com.android.systemui.statusbar.policy.MinitBattery android:layout_width="wrap_content" android:layout_height="wrap_content"[/COLOR] />
</LinearLayout>
</LinearLayout>
Move WiFi and Data icons to left side of statusbar
Decompile SystemUI, go to layout and open system_icons.xml
Search for
Code:
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="2.0dip" android:layout_marginEnd="@dimen/rssi_battery_gap" layout="@layout/signal_cluster_view" />
Change it to
Code:
<include android:id="@id/signal_cluster" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="2.0dip" android:layout_marginEnd="@dimen/rssi_battery_gap" layout="@layout/signal_cluster_view" />
Go to status_bar.xml
Add following line in red
Code:
<ImageView android:id="@id/operatorLogoIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo" />
<ImageView android:id="@id/operatorLogoIcon_org" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/tw_stat_notify_operator_logo_org" />
[COLOR="Red"]<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginBottom="-5.0dip" android:layout_marginLeft="-5.0dip" layout="@layout/signal_cluster_view" />[/COLOR]
Now download my modified signal_cluster_view.xml and check with yours
Save, recompile.
3minit quick launch for TW Lollipop
Firstly go download 3minit quick launcher smali from main thread
As there are some changes in lollipop which is not same as the guide in the original thread we are going to edit our file as below.
SystemUI.apk\res\layout open quick_connect_layout_zero.xml
Make sure it's like following:
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:id="@id/sfinder_qconnect_layout" android:background="@drawable/quick_connect_layout_bg" android:layout_width="fill_parent" android:layout_height=[COLOR="red"]"wrap_content"[/COLOR]
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
[COLOR="Red"] <HorizontalScrollView android:scrollbars="none" android:layout_width="fill_parent" android:layout_height="@dimen/finder_connect_layout_height">
<com.android.systemui.statusbar.policy.quicklaunch.QuickLaunchContainer android:gravity="center" android:layout_width="wrap_content" android:layout_height="@dimen/finder_connect_layout_height" android:layout_centerHorizontal="true" />
</HorizontalScrollView>[/COLOR]
<LinearLayout android:orientation="vertical" android:id="@id/sfinder_qconnect_layout" android:focusable="true" android:descendantFocusability="afterDescendants" android:layout_width="0.0dip" android:layout_height="0.0dip">
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:paddingLeft="@dimen/finder_connect_button_padding_right" android:paddingTop="@dimen/finder_connect_button_padding_top" android:paddingRight="@dimen/finder_connect_button_padding_left" android:paddingBottom="@dimen/finder_connect_button_padding_bottom" android:focusable="true" android:descendantFocusability="afterDescendants" android:layout_width="0.0dip" android:layout_height="0.0dip">
<RelativeLayout android:id="@id/sfinder_button_layout" android:background="@drawable/ripple_drawable" android:focusable="true" android:nextFocusLeft="@id/quick_connect_button_layout" android:nextFocusRight="@id/quick_connect_button_layout" android:clickable="true" android:layout_width="0.0dip" android:layout_height="@dimen/finder_connect_button_height" android:layout_weight="0.0" android:layout_marginEnd="0.0dip">
<TextView android:textSize="@dimen/tw_quick_panel_sfinder_qconnect_button_text_size" android:textColor="@drawable/tw_quick_panel_sfinder_qconnect_button_text_color" android:gravity="center" android:id="@id/sfinder_button_big" android:layout_width="0.0dip" android:layout_height="0.0dip" android:text="@string/accessibility_sfinder_button" android:singleLine="true" android:drawableLeft="@drawable/tw_quick_panel_quick_sfinder_button_image" android:drawablePadding="@dimen/tw_quick_panel_sfinder_qconnect_drawable_padding" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:fontFamily="sec-roboto-light" />
</RelativeLayout>
<ImageView android:id="@id/expanded_divider_3" android:background="@color/quickpanel_button_divider_color" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_marginTop="0.0dip" android:layout_marginBottom="0.0dip" android:alpha="@dimen/quickpanel_button_divider_alpha" android:layout_toStartOf="@id/sfinder_button_layout" />
<RelativeLayout android:id="@id/quick_connect_button_layout" android:background="@drawable/ripple_drawable" android:focusable="true" android:nextFocusLeft="@id/sfinder_button_layout" android:nextFocusRight="@id/sfinder_button_layout" android:clickable="true" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_weight="0.0" android:layout_marginStart="0.0dip">
<TextView android:textSize="@dimen/tw_quick_panel_sfinder_qconnect_button_text_size" android:textColor="@drawable/tw_quick_panel_sfinder_qconnect_button_text_color" android:gravity="center" android:id="@id/qconnect_button_big" android:layout_width="0.0dip" android:layout_height="0.0dip" android:text="@string/accessibility_qconnect_button" android:singleLine="true" android:drawableLeft="@drawable/tw_quick_panel_quick_qconnect_button_image" android:drawablePadding="@dimen/tw_quick_panel_sfinder_qconnect_drawable_padding" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:fontFamily="sec-roboto-light" />
</RelativeLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
As we are removing Sfinder and Quick Connect for better interface all dpi regarding to Sfinder and Quick Connect should be set to 0 so check them all.
Now as 3minit quick launcher is bigger than Sfinder and Quick connect we need to modify that area related to those buttons to fit 3minit launcher
So go to values and open dimens.xml
Search for
Code:
<dimen name="finder_connect_layout_height">[COLOR="red"]57.0dip[/COLOR]</dimen>
Change to
Code:
<dimen name="finder_connect_layout_height">[COLOR="red"]75.0dip[/COLOR]</dimen>
Center Clock on statusbar
Go here
How to make a round corner for recent apps window
SystemUI.apk>dimens.xml
Change
Code:
<dimen name="recents_task_view_rounded_corners_radius">2.0dip</dimen>
to
Code:
<dimen name="recents_task_view_rounded_corners_radius">20.0dip</dimen>
credit @tkari4
How to enable other Samsung lockscreen effects
Read here and here
Add Flashlight and Screenshot to Power Menu
Read here
More Themes for TW Launcher
Find here
How to enable the native rotation in the TouchWizHome_K.apk
Here
How to disable signature checks
Here
Removing SysScope - Permanent "Official" Device Status
Here
[Guides & Links] THE GALAXY S5 UNIFIED MODS THREAD
Amazing guides and people, make sure to check
Remove green and orange banner when dialing/receiving calls
Read here
How to make Sun shape AOSP brightness handle on notification panel
Read here
How to make AOSP category divider on SETTINGS
Read here
How to change Action bar color:
Look for following in framework\color.xml
Code:
<color name="material_blue_grey_800"> tab background
<color name="material_blue_grey_900"> status bar background
Thanks @Breakcore_Rush for themeing guides
3Minit Battery
In res/layout/system_icons.xml
PHP:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:gravity="center_vertical" android:id="@id/system_icons" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<com.android.keyguard.AlphaOptimizedLinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" android:alpha="0.74" />
<LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:layout_width="wrap_content" android:layout_height="fill_parent" android:paddingStart="2.0dip">
<include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginStart="2.0dip" android:layout_marginEnd="@dimen/rssi_battery_gap" layout="@layout/signal_cluster_view" />
<TextView android:textSize="@dimen/battery_text_size" android:textColor="@color/battery_text_color" android:layout_gravity="center" android:id="@id/battery_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:alpha="0.74" android:importantForAccessibility="no" android:fontFamily="sans-serif" android:layout_marginStart="@dimen/battery_text_marginStart" />
<com.android.systemui.BatteryMeterView android:id="@id/battery" android:layout_width="0.0dip" android:layout_height="0.0dip" android:layout_marginBottom="@dimen/battery_icon_bottom_margin" android:alpha="0.74" android:layout_marginStart="3.0dip" />
<com.android.systemui.statusbar.policy.MinitBattery android:layout_width="wrap_content" android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
kmokhtar79 said:
Maybe this one
Click to expand...
Click to collapse
Hi dev...great work done...thanks a lot. If you can plz make a tut to make apks multidpi, that would be very nice.
unisol107 said:
Hi dev...great work done...thanks a lot. If you can plz make a tut to make apks multidpi, that would be very nice.
Click to expand...
Click to collapse
For this we need to ask from master @tkari4
Sent from my SM-N9005 using Tapatalk
Hello @kmokhtar79,
Very usefull and very nice guide!! Perhaps it interested for you: http://forum.xda-developers.com/showpost.php?p=58056310&postcount=581
Figuring out AOSP Lollipop icons
Hi, do you guys know how to figure out implementing AOSP Wifi, Data, and Battery vector xmls like on Stock Lollipop? I see that the codes are already there when comparing SystemUI with a 5.0 Nexus 5's ROM, but I don't have time to figure out how it is implemented. Thanks!
@kmokhtar79
Do I have to sign & zipalign apk after recompiling?
There is no png file in lock_lock_patch.rar
nasif69 said:
@kmokhtar79
Do I have to sign & zipalign apk after recompiling?
There is no png file in lock_lock_patch.rar
Click to expand...
Click to collapse
Do NOT use sign for system files. After modification is done open your modded file and original file, drag and drop META-INF and AndroidManifs.xml from original one to modded one without extracting it. Sometimes app signature is corrupted after compilation. This would fix it. There are 2 white png file that you may not notice them just select all in folder they would be highlighted.
Edit: You you are correct, corrected home_lock_patch.zip.
Sent from my SM-N9005 using Tapatalk
kmokhtar79 said:
Do NOT use sign for system files. After modification is done open your modded file and original file, drag and drop META-INF and AndroidManifs.xml from original one to modded one without extracting it. Sometimes app signature is corrupted after compilation. This would fix it. There are 2 white png file that you may not notice them just select all in folder they would be highlighted.
Edit: You you are correct, corrected home_lock_patch.zip.
Sent from my SM-N9005 using Tapatalk
Click to expand...
Click to collapse
Thanks.
Do I have to recompile & zipalign?
---------- Post added at 12:30 PM ---------- Previous post was at 11:57 AM ----------
@kmokhtar79
It works. But only lock screen & homebutton. No recent apps.
What I have to do for recent apps?
Good :good::good::good:
????
Mate can u add only speed network meter for this systemui.apk on this thread by Djimmy please
http://forum.xda-developers.com/showthread.php?t=2982939
Sent from my SM-N9005 using Tapatalk
thereassaad said:
Mate can u add only speed network meter for this systemui.apk on this thread by Djimmy please
http://forum.xda-developers.com/showthread.php?t=2982939
Sent from my SM-N9005 using Tapatalk
Click to expand...
Click to collapse
I am sorry mate, this thread is supposed to be modding thread, you just try following guides any step you got problem just post your problem and me or others would help you. I did it last night according to the same mentioned steps.
kmokhtar79 said:
I am sorry mate, this thread is supposed to be modding thread, you just try following guides any step you got problem just post your problem and me or others would help you. I did it last night according to the same mentioned steps.
Click to expand...
Click to collapse
Okay thanks btw my don't have laptop for 2 week its on service center thanks i will try to do it by apktool.apk from my phone thanks
Sent from my SM-N9005 using Tapatalk
thereassaad said:
Okay thanks btw my don't have laptop for 2 week its on service center thanks i will try to do it by apktool.apk from my phone thanks
Sent from my SM-N9005 using Tapatalk
Click to expand...
Click to collapse
In that case I can send you through pm.
Sent from my SM-N9005 using Tapatalk

[GUIDE] How To Add Lollipop Like Owner Icon In SystemUI Expand

Hello Droiders!! The is a Tutorial About How To Add Lollipop Like Changeable Owner Icon In Statusbar Expand for ICS/JB/KK
Disclaimer:I or XDA Developers will not be responsible for any damage of your Device.A Backup is highly recomanded.
:::NOTE:::
- You Signature vefification must be disabled.you can disable it by using `Lucky Patcher` or editing your `services.jar`.
- You need to be "very patient" and have a lot of time as this is a time consuming tutorial.
- I won't explain how to do things like pushing the apps, setting the permission, or how to get a value in public.xml and use that to change something in a certain smali.
You can Try the LProfile_demo.apk from the attachment.
Things You Will Needed:
1) SystemUI.apk
2) Notepad++ or any other text editor.
3) Apktool/Any Other tool to deconlmpile apk.
4) Brain.jar Patient.apk
STEP 1:
• Decompile your Systemui.apk
• Download the LProfile_x.x.x.zip from the attachment,extract it and merge it into your decompiled systemui.
• Open statusbar_expand_header.xml in /res/layout and compare with this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="60.0dip" android:baselineAligned="false" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<RelativeLayout android:orientation="vertical" android:paddingLeft="16.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true">
<com.android.systemui.statusbar.policy.CustomClock android:textSize="16.0sp" android:textStyle="normal" android:textColor="#ffffffff" android:id="@id/custom_clock" android:layout_width="wrap_content" android:layout_height="wrap_content"/>
<com.android.systemui.statusbar.policy.DateView android:textSize="14.0dip" android:textColor="#b2ffffff" android:id="@id/date" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/custom_clock"/>
<com.bloody.badboy.DateView android:textSize="14.0sp" android:textStyle="normal" android:textColor="#b2ffffff" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@id/custom_clock"/>
</RelativeLayout>
<LinearLayout android:gravity="right|center" android:orientation="horizontal" android:paddingRight="5.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1.0" android:layout_alignParentRight="true">
</LinearLayout>
[COLOR="Red"] <LinearLayout android:layout_width="27.0dip" android:layout_height="27.0dip" android:layout_marginRight="16.0dip">
<com.android.systemui.bloody.badboy.LProfilePicture android:id="@+id/image" android:background="@drawable/default_user_small" android:layout_width="27.0dip" android:layout_height="27.0dip" android:scaleType="centerCrop" android:onClick="LProfile" android:contentDescription="@null"/>
</LinearLayout>[/COLOR]
</LinearLayout>
• Open AndroidManifest.xml
add this at the bottom before </application>
Code:
<activity android:theme="@style/Theme.LProfile" android:name="com.android.systemui.bloody.badboy.LProfile">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
AndroidManifest.xml for compare
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:sharedUserId="android.uid.system" android:process="system" android:versionCode="19" android:versionName="4.4.4-bloody.badboy.creation" coreApp="true" package="com.android.systemui" xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.STATUS_BAR_SERVICE"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.GET_TASKS"/>
<uses-permission android:name="android.permission.MANAGE_USB"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
<application android:label="@string/app_label" android:icon="@drawable/ic_launcher_settings" android:allowClearUserData="false" android:persistent="true" android:allowBackup="false" android:hardwareAccelerated="true">
<service android:name="SystemUIService" android:exported="true"/>
<service android:name=".screenshot.TakeScreenshotService" android:exported="false" android:process=":screenshot"/>
<service android:name=".LoadAverageService" android:exported="true"/>
<service android:name=".ImageWallpaper" android:permission="android.permission.BIND_WALLPAPER" android:exported="true"/>
<receiver android:name=".BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>
<activity android:label="@*android:string/usb_storage_activity_title" android:name=".usb.UsbStorageActivity" android:excludeFromRecents="true"/>
<activity android:theme="@*android:style/Theme.Dialog.Alert" android:name="com.android.internal.app.ExternalMediaFormatActivity" android:excludeFromRecents="true"/>
<activity android:theme="@*android:style/Theme.Holo.Dialog.Alert" android:name=".usb.UsbConfirmActivity" android:permission="android.permission.MANAGE_USB" android:exported="true" android:excludeFromRecents="true" android:finishOnCloseSystemDialogs="true"/>
<activity android:theme="@*android:style/Theme.Holo.Dialog.Alert" android:name=".usb.UsbPermissionActivity" android:permission="android.permission.MANAGE_USB" android:exported="true" android:excludeFromRecents="true" android:finishOnCloseSystemDialogs="true"/>
<activity android:theme="@*android:style/Theme.Holo.Dialog.Alert" android:name=".usb.UsbResolverActivity" android:permission="android.permission.MANAGE_USB" android:exported="true" android:excludeFromRecents="true" android:finishOnCloseSystemDialogs="true"/>
<activity android:theme="@*android:style/Theme.Holo.Dialog.Alert" android:name=".usb.UsbAccessoryUriActivity" android:permission="android.permission.MANAGE_USB" android:exported="true" android:excludeFromRecents="true" android:finishOnCloseSystemDialogs="true"/>
<activity android:theme="@*android:style/Theme.Holo.Panel" android:name=".net.NetworkOverLimitActivity" android:permission="android.permission.MANAGE_NETWORK_POLICY" android:exported="true" android:taskAffinity="com.android.systemui.net" android:excludeFromRecents="true" android:launchMode="singleTop" android:finishOnCloseSystemDialogs="true"/>
<activity android:theme="@*android:style/Theme.Black.NoTitleBar.Fullscreen" android:label="Nyandroid" android:icon="@drawable/nyandroid04" android:name=".Nyandroid" android:exported="true" android:excludeFromRecents="true" android:launchMode="singleInstance" android:hardwareAccelerated="true">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
<receiver android:name=".statusbar.ConnectedReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>
[COLOR="Red"] <activity android:theme="@style/Theme.LProfile" android:name="com.android.systemui.bloody.badboy.LProfile">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
</intent-filter>
</activity>[/COLOR]
</application>
</manifest>
• Open Styles.xml in /res/values and add this at the bottom before </resources>
Code:
<style name="Theme.LProfile" parent="@*android:style/Theme.Holo.Light.Dialog">
<item name="android:windowBackground">@*android:color/transparent</item>
<item name="android:windowNoTitle">true</item>
</style>
• Open SystemUIService.smali in /smali/com/android/systemui and find the method:
Code:
# virtual methods
And add this below the method:
Code:
.method public LProfile(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.systemui.bloody.badboy.LProfile"
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;->collapse()V
.line 1720
return-void
.end method
• Now recompile your SystemUI.apk and Sign it.Then Recompile it again.
STEP 2:
• Open LProfile.smali in /smali/bloody/badboy/here
•Search-
0x7f03003e
And replace with the value of
<public type="layout" name="lprofile_picture" from your public.xml
• Do the same for
• 0x7f0f00de <--- replace with <public type="id" name="photo_picker"
• 0x7f0f00df <--- replace with <public type="id" name="image_profile"
•0x7f020236 <--- replace with <public type="drawable" name="default_user"
• Open LProfilePicture$1.smali in smali/bloody/badboy
•0x7f020236 <--- replace with <public type="drawable" name="default_user"
• Open LProfilePicture.smali in smali/bloody/badboy
•0x7f020236<--- replace with <public type="drawable" name="default_user"
•0x7f0f0003 <--- replace with <public type="id" name="image"
• Now recompile your systemui.apk sign and push it into system/app/ and reboot.
If You Like it then Hit My Thanks Button.It will not cost but it will motivate me. :good: :good:
Awesome ...... Will there be updates
Yeah what he said.
sdeepb said:
Awesome ...... Will there be updates
Click to expand...
Click to collapse
kirito9 said:
Yeah what he said.
Click to expand...
Click to collapse
Great than..... Hope he'll remove androidmanifest editing in future

[Guide] Adding Ram in Recents with toggles

Hello guys
here i am back with a new guide on adding Ram Info on Recents.
Before starting this guide make sure you have tried this. Because this guide is based on that guide.
[This guide is only for 5.0+]
Credit:-
KachalkinGeorg (The GK)
Requirement (Deodexed):-
1.Settings.apk
2.SystemUI.apk
3.NotePad++
4.Patience.. if you dont have try to get it
First part ( Settings.apk )
1.Decompile Settings.apk
2.Download ramsettings.zip from attachment. Extarct and copy files to your Decompiled Settings
3.Open Settings\res\xml\gk_recents_panel_settings.xml
add below preference
Code:
<PreferenceScreen android:title="@string/recents_panel_title" android:key="recents_panel" android:fragment="com.android.settings.gk.RecentsPanel.RecentsPanelSettings" />
4.Open Settings\res\values\arrays.xml
add below arrays
Code:
<string-array name="recents_clear_all_location_entries">
<item>@string/recents_clear_all_location_top_right</item>
<item>@string/recents_clear_all_location_top_left</item>
<item>@string/recents_clear_all_location_top_center</item>
<item>@string/recents_clear_all_location_bottom_right</item>
<item>@string/recents_clear_all_location_bottom_left</item>
<item>@string/recents_clear_all_location_bottom_center</item>
</string-array>
<string-array name="recents_clear_all_location_values">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
</string-array>
5.Open Settings\res\values\strings.xml
add below strings
Code:
<string name="recents_panel_title"><b>Recents</b></string>
<string name="recents_panel_category">Recents panel</string>
<string name="recents_button_show_clear_all_title">Clear all button</string>
<string name="recents_button_show_clear_all_summary">Show clear all button</string>
<string name="recents_clear_all_location_title">Clear all location</string>
<string name="recents_clear_all_location_top_right">Top right</string>
<string name="recents_clear_all_location_top_left">Top left</string>
<string name="recents_clear_all_location_top_center">Top center</string>
6.Recompile and Decompile Settings (For id's)
7.Open Settings\com\android\settings\gk\RecentsPanel\RecentsPanelSettings.smali
find
Code:
0x7f09042c
replace with below id
Code:
<public type="string" name="recents_clear_all_location_top_right"
find
Code:
0x7f09042d
replace with below id
Code:
<public type="string" name="recents_clear_all_location_top_left"
find
Code:
0x7f09042e
replace with below id
Code:
<public type="string" name="recents_clear_all_location_top_center"
find
Code:
0x7f09042f
replace with below id
Code:
<public type="string" name="recents_clear_all_location_bottom_right"
find
Code:
0x7f090430
replace with below id
Code:
<public type="string" name="recents_clear_all_location_bottom_left"
find
Code:
0x7f090431
replace with below id
Code:
<public type="string" name="recents_clear_all_location_bottom_center"
find
Code:
0x7f06004b
replace with below id
Code:
<public type="xml" name="gk_recents_panel"
8.Recompile Settings and move to your device
Continued on next post.
Continued.
Final part ( SystemUI.apk )
1.Decompile SystemUI.apk
2.Go to "SystemUI\smali\com\android\systemui\recents"
find "RecentsActivity$5.smali". if you found this smali download this. Extract and copy files to your decompiled SystemUI
if you didnt find "RecentsActivity$5.smali" in "SystemUI\smali\com\android\systemui\recents" Download this. Extract and copy files to your decompiled SystemUI
Click to expand...
Click to collapse
3.Open SystemUI\res\values\ids.xm
add below id's
Code:
<item type="id" name="recents_membar">false</item>
<item type="id" name="recents_memory_bar">false</item>
<item type="id" name="recents_memory_text">false</item>
<item type="id" name="floating_action_button">false</item>
4.Open SystemUI\res\values\dimens.xml
and add below demens
Code:
<dimen name="floating_action_button_height">54.0dip</dimen>
<dimen name="floating_action_button_width">54.0dip</dimen>
<dimen name="floating_action_button_translation_z">12.0dip</dimen>
<dimen name="floating_action_button_margin_side">32.0dip</dimen>
<dimen name="floating_action_button_margin_bottom">45.0dip</dimen>
5.Open SystemUI\res\values\colors.xml
add below colours
Code:
<color name="fab_color">#ffdc4c3c</color>
<color name="floating_action_button_icon_color">#ffffffff</color>
6.Recompile and Decompile SystemUI (For id's)
7.Open SystemUI\smali\com\android\systemui\recents\RecentsActivity.smali
find
0x7f0a0000 - <public type="id" name="clear_recents"
Click to expand...
Click to collapse
( Two Times )
replace with
0x7f0f00e2 - <public type="id" name="floating_action_button"
Click to expand...
Click to collapse
8.Open SystemUI\smali\com\android\systemui\recents\views\RecentsView.smali
Find
Code:
0x7f0f016f
replace with below id
Code:
<public type="id" name="floating_action_button"
find
Code:
0x7f0f00db
replace with below id
Code:
<public type="id" name="clear_recents"
find
Code:
0x7f0f016e
replace with below id
Code:
<public type="id" name="recents_memory_text"
find
Code:
0x7f0f016d
replace with below id
Code:
<public type="id" name="recents_memory_bar"
find
Code:
0x1050011
replace with below id
Code:
<public type="dimen" name="status_bar_height"
( Two Times)
find
Code:
0x7f090038
replace with below id
Code:
<public type="dimen" name="status_bar_header_height"
9.Recompile and move to your device
Enjoy...

Any App development to read the Wifi Passwords in WifiConfigStore.xml for Oreo?

I don't know if no one picked up on this but I don't see any discussion about app development to read wifi passwords for the replacement to wpa_supplicant.conf, that being WifiConfigStore.xml. I have notified the developer of the app I use of the change but he has yet to release an update.
Essentially if you upgrade your phone to Android Oreo it will migrate the /data/misc/wifi/wpa_supplicant.conf to /data/misc/wifi/WifiConfigStore.xml.
That is the new file
Your Wifi Password app of choice will read the wpa_supplicant.conf which will still exist, however, any new connections made will be stored in the WifiConfigStore.xml file meaning that the Wifi Password apps won't "see" the new connections.
Worse yet, If you did a reset of your phone and you are starting from scratch you will only be able to get that information from the WifiConfigStore.xml file.
All is not lost, since you most likely have root for the Wifi Password app to get that data in the first place, albeit in a nice gui.
This means that you access that file directly, via a root explorer file manager, to see your connections and passwords.
So is there anyone considering doing an app for this? If so, the following may help.
This is only a small sample with 2 wifi connections. One with a preshared key and one without.
I hope this helps.
Code:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<WifiConfigStoreData>
<int name="Version" value="1" />
<NetworkList>
<Network>
<WifiConfiguration>
<string name="ConfigKey">"LIME1002"WPA_PSK</string>
<string name="SSID">"LIME1002"</string>
<null name="BSSID" />
<string name="PreSharedKey">"guesswhatitis"</string>
<null name="WEPKeys" />
<int name="WEPTxKeyIndex" value="0" />
<boolean name="HiddenSSID" value="false" />
<boolean name="RequirePMF" value="false" />
<byte-array name="AllowedKeyMgmt" num="1">02</byte-array>
<byte-array name="AllowedProtocols" num="1">03</byte-array>
<byte-array name="AllowedAuthAlgos" num="0"></byte-array>
<byte-array name="AllowedGroupCiphers" num="1">0c</byte-array>
<byte-array name="AllowedPairwiseCiphers" num="1">06</byte-array>
<boolean name="Shared" value="true" />
<int name="Status" value="0" />
<null name="FQDN" />
<null name="ProviderFriendlyName" />
<null name="LinkedNetworksList" />
<null name="DefaultGwMacAddress" />
<boolean name="ValidatedInternetAccess" value="true" />
<boolean name="NoInternetAccessExpected" value="false" />
<int name="UserApproved" value="1" />
<boolean name="MeteredHint" value="false" />
<boolean name="UseExternalScores" value="false" />
<int name="NumAssociation" value="2" />
<int name="CreatorUid" value="-1" />
<string name="CreatorName">null</string>
<null name="CreationTime" />
<int name="LastUpdateUid" value="-1" />
<string name="LastUpdateName">null</string>
<int name="LastConnectUid" value="-1" />
<boolean name="IsLegacyPasspointConfig" value="false" />
<long-array name="RoamingConsortiumOIs" num="0" />
</WifiConfiguration>
<NetworkStatus>
<string name="SelectionStatus">NETWORK_SELECTION_ENABLED</string>
<string name="DisableReason">NETWORK_SELECTION_ENABLE</string>
<null name="ConnectChoice" />
<long name="ConnectChoiceTimeStamp" value="-1" />
<boolean name="HasEverConnected" value="true" />
</NetworkStatus>
<IpConfiguration>
<string name="IpAssignment">DHCP</string>
<string name="ProxySettings">NONE</string>
</IpConfiguration>
</Network>
<Network>
<WifiConfiguration>
<string name="ConfigKey">"Ashton_Med_Patients"NONE</string>
<string name="SSID">"Ashton_Med_Patients"</string>
<null name="BSSID" />
<null name="PreSharedKey" />
<null name="WEPKeys" />
<int name="WEPTxKeyIndex" value="0" />
<boolean name="HiddenSSID" value="false" />
<boolean name="RequirePMF" value="false" />
<byte-array name="AllowedKeyMgmt" num="1">01</byte-array>
<byte-array name="AllowedProtocols" num="1">03</byte-array>
<byte-array name="AllowedAuthAlgos" num="0"></byte-array>
<byte-array name="AllowedGroupCiphers" num="1">0c</byte-array>
<byte-array name="AllowedPairwiseCiphers" num="1">06</byte-array>
<boolean name="Shared" value="true" />
<int name="Status" value="0" />
<null name="FQDN" />
<null name="ProviderFriendlyName" />
<null name="LinkedNetworksList" />
<null name="DefaultGwMacAddress" />
<boolean name="ValidatedInternetAccess" value="true" />
<boolean name="NoInternetAccessExpected" value="false" />
<int name="UserApproved" value="1" />
<boolean name="MeteredHint" value="false" />
<boolean name="UseExternalScores" value="false" />
<int name="NumAssociation" value="1" />
<int name="CreatorUid" value="1000" />
<string name="CreatorName">android.uid.system:1000</string>
<string name="CreationTime">time=07-26 13:20:02.564</string>
<int name="LastUpdateUid" value="1000" />
<string name="LastUpdateName">android.uid.system:1000</string>
<int name="LastConnectUid" value="1000" />
<boolean name="IsLegacyPasspointConfig" value="false" />
<long-array name="RoamingConsortiumOIs" num="0" />
</WifiConfiguration>
<NetworkStatus>
<string name="SelectionStatus">NETWORK_SELECTION_ENABLED</string>
<string name="DisableReason">NETWORK_SELECTION_ENABLE</string>
<null name="ConnectChoice" />
<long name="ConnectChoiceTimeStamp" value="-1" />
<boolean name="HasEverConnected" value="true" />
</NetworkStatus>
<IpConfiguration>
<string name="IpAssignment">DHCP</string>
<string name="ProxySettings">NONE</string>
</IpConfiguration>
</Network>
</NetworkList>
<PasspointConfigData>
<long name="ProviderIndex" value="0" />
</PasspointConfigData>
</WifiConfigStoreData>
I'm looking for an app that lets you manage/see wifi passwords with the new method too.
So far, the only app who does something with it, is titanium backup. It only backups/restores the networks with passwords though.
Hope there will be more apps being updated to support this.
I've created an app that you can test.
thread: https://forum.xda-developers.com/android/apps-games/app-oreo-wifi-passwords-t3708043
Try WiFi Password Show app, it can help you read WiFi Password on Android Oreo 8.0 and up
play.google.com/store/apps/details?id=com.phuongpn.wifipasswordshow
She reads them to me and makes a copy https://play.google.com/store/apps/details?id=com.rusdelphi.wifipassword
joseac said:
She reads them to me and makes a copy https://play.google.com/store/apps/details?id=com.rusdelphi.wifipassword
Click to expand...
Click to collapse
on samsung ROM, seems to be, the PWD not stored anymore in PLAIN ....
they are now encrypted ...
any idea if that can be supported as well ?
camro said:
on samsung ROM, seems to be, the PWD not stored anymore in PLAIN ....
they are now encrypted ...
any idea if that can be supported as well ?
Click to expand...
Click to collapse
Some time ago, it was said that if you changed the line the build.prop: ro.securestorage.support = true
by: - ​​ro.securestorage.support = false, and then restarted, it no longer encrypted networks.

Categories

Resources