How to add Selectable 8 style Music Visualizer - to Notification panel
Hello again XDA
this guide is new style from this thread http://forum.xda-developers.com/and...alizerview-t3062114/post59626798#post59626798
ANDROID 2.3.+.+/ Gingerbread go to POST #3 http://forum.xda-developers.com/showpost.php?p=59841454&postcount=3
Available selectable 8 style Music Visualizer :
1. Hide
2. Random
3. Circular
4. Lines
5. Top Bottom Graphic
6. Circle
7. Cycle Color Graphic
8. CyanogenMod Graphic
Oke let's start it
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk
- notepad++
- APKTOOL 2-RC4 / latest apktool.jar
STEP 1
Decompile SystemUI.apk
Download attached smali and merge to your decompiled SystemUI
STEP 2
go to SystemUI.apk/res/layout/ status_bar_expanded.xml, gemini_status_bar_expanded.xml, tw_status_bar_expanded.xml, status_bar_tracking.xml , depend on your UI
and add the red line
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.NotificationPanelView android:id="@id/notification_panel" android:background="@drawable/notification_panel_bg" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginStart="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<View android:id="@id/handle" android:background="@drawable/status_bar_close" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="@dimen/close_handle_height" />
<LinearLayout android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/carrier_label_container" android:layout_width="fill_parent" android:layout_height="wrap_content" android:animateLayoutChanges="false">
<include android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/carrier_label_height" layout="@layout/subs_label" />
<include android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/carrier_label_height" android:layout_marginBottom="@dimen/close_handle_height" layout="@layout/carrier_label" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginBottom="@dimen/close_handle_underlap" android:animateLayoutChanges="false">
<include android:layout_width="fill_parent" android:layout_height="@dimen/notification_panel_header_height" layout="@layout/status_bar_expanded_header" />
<ViewStub android:id="@id/ribbon_settings_stub" android:layout="@layout/ribbon_settings" android:layout_width="fill_parent" android:layout_height="@dimen/qs_ribbon_height_big" />
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network.EmergencyOnly" android:gravity="center" android:id="@id/emergency_calls_only" android:padding="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content">
<ViewStub android:id="@id/flip_settings_stub" android:layout="@layout/flip_settings" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="wrap_content" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/notification_row_min_height" />
</ScrollView>
</FrameLayout>
</LinearLayout>
[COLOR="Red"] <com.adi.rom.interface.MusicEqualizerVisualizer android:layout_gravity="bottom" android:id="@id/new_visualizer_view_panel" android:layout_width="fill_parent" android:layout_height="50.0dip" android:layout_marginBottom="36.0dip">
<FrameLayout android:id="@id/new_custom_visualizer_view_panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.adi.rom.interface.VisualizerView android:id="@id/new_custom_visualizer_view" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</FrameLayout>
</com.adi.rom.interface.MusicEqualizerVisualizer>[/COLOR]
</com.android.systemui.statusbar.phone.NotificationPanelView>
STEP 3
SystemUI.apk/res/values/colors.xml
add the red line to end of it before </resources>
Code:
<color name="status_bar_clock_color">#ffffffff</color>
<color name="equalizer_fill_color">#96ffffff</color>
[COLOR="Red"]<color name="new_custom_equalizer_fill_color">#96ffffff</color>[/COLOR]
</resources>
SystemUI.apk/res/values/dimens.xml
add the red line to end of it before </resources>
Code:
<dimen name="status_bar_battery_bottom_padding">1.0px</dimen>
<dimen name="eqalizer_path_effect_1">6.0dip</dimen>
<dimen name="eqalizer_path_effect_2">1.0dip</dimen>
<dimen name="eqalizer_path_stroke_width">6.0dip</dimen>
[COLOR="Red"]<dimen name="new_custom_eqalizer_path_effect_1">6.0dip</dimen>
<dimen name="new_custom_eqalizer_path_effect_2">1.0dip</dimen>
<dimen name="new_custom_eqalizer_path_stroke_width">6.0dip</dimen>[/COLOR]
</resources>
SystemUI.apk/res/values/ids.xml
add the red line to end of it before </resources>
Code:
<item type="id" name="recent_force_stop">false</item>
<item type="id" name="recent_wipe_app">false</item>
<item type="id" name="recent_uninstall">false</item>
[COLOR="Red"]<item type="id" name="new_visualizer_view_panel">false</item>
<item type="id" name="new_custom_visualizer_view_panel">false</item>
<item type="id" name="new_custom_visualizer_view">false</item>[/COLOR]
</resources>
SystemUI.apk/res/values/integers.xml
add the red line to end of it before </resources>
Code:
<integer name="equalizer_divisions">4</integer>
<integer name="equalizer_db_fuzz_factor">2</integer>
<integer name="equalizer_db_fuzz">-10</integer>
[COLOR="Red"]<integer name="new_custom_equalizer_divisions">4</integer>
<integer name="new_custom_equalizer_db_fuzz_factor">2</integer>
<integer name="new_custom_equalizer_db_fuzz">-10</integer>[/COLOR]
</resources>
STEP -4
AndroidManifest.xml
Add the red line
Code:
<uses-permission android:name="android.permission.READ_DREAM_STATE"/>
<uses-permission android:name="android.permission.WRITE_DREAM_STATE"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"/>
[COLOR="Red"]<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>[/COLOR]
<application android:allowBackup="false" android:allowClearUserData="false" android:hardwareAccelerated="true" android:icon="@android:drawable/platlogo" android:label="@string/app_label" android:persistent="true">
<service android:exported="true" android:name="SystemUIService"/>
STEP -5
- Compile
- Sign it
- Disable Signature check
- Push to System/app or System/priv-app with right permission
- Download attached VisualizerStyleSettings.apk, push to System/app with right permission
- or use this Visualizer settings http://forum.xda-developers.com/showpost.php?p=59883864&postcount=53
You can try using any of the keys that come with whatever apk signing tool you use, but you will more then likely end up with a SystemUI.apk that wont show as being installed, you must sign it with platfrom keys from CyanogenMod's android_build github https://github.com/CyanogenMod/android_build/tree/jellybean/target/product/security
Note !
for CM / AOSP from source whic has
STATIC TILES, you need to uncheck/disable Equalizer tile, otherwise the Visualizer will not appear on Notification panel
Credits :
- CyanogenMod
- Recognized Developer / Recognized Themer @serajr for his ResourceUtils.smali
OPTIONAL
6 Style Notification Panel Music Visualizer
Because Lines and Circle style doesn't want to stop render even when music stoped.
This smali below will remove Lines and Circle style from The 8 Guide, make sure you have complete the 8 guide.
How to , just replace the 8 guide smali with this.
Download it from attachment according to your tool version
enjoy :good::laugh:
Android 2.3.++ smali and Visualizer Setting.apk compatible
REQUIREMENT
Apktool 1.5.xx important !
Disable signature check important !
STEP 1
Decompile SystemUI.apk
Download attached Android 2.3.++ smali and merge to your decompiled SystemUI
STEP 2
SystemUI.apk/res/layout/ status_bar_expanded.xml
add the red line
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.ExpandedView android:orientation="vertical" android:focusable="true" android:descendantFocusability="afterDescendants"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="horizontal" android:id="@id/carrier_label_background" android:background="@drawable/title_bar_portrait" android:layout_width="fill_parent" android:layout_height="wrap_content" android:baselineAligned="false">
<com.android.systemui.statusbar.CarrierLabel android:textSize="18.659973dip" android:textColor="@color/status_bar_carrier_label_text" android:layout_gravity="center_vertical" android:id="@id/carrier_label" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_marginLeft="14.669983dip" android:layout_marginTop="8.669983dip" android:layout_marginBottom="10.0dip" android:layout_weight="1.0" />
<TextView android:textSize="14.0dip" android:textColor="@color/status_bar_clear_all_button_text" android:gravity="center" android:layout_gravity="center_vertical" android:id="@id/clear_all_button" android:background="@drawable/btn_default_small" android:layout_width="76.66998dip" android:layout_height="34.0dip" android:layout_marginTop="5.0dip" android:layout_marginRight="4.0dip" android:layout_marginBottom="5.0dip" android:text="@string/status_bar_clear_all_button" />
</LinearLayout>
[COLOR="Red"]<com.adi.rom.interface.MusicEqualizerVisualizer android:id="@id/new_visualizer_view_panel" android:layout_width="fill_parent" android:layout_height="48.0dip">
<FrameLayout android:id="@id/new_custom_visualizer_view_panel" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.adi.rom.interface.VisualizerView android:id="@id/new_custom_visualizer_view" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" />
</FrameLayout>
</com.adi.rom.interface.MusicEqualizerVisualizer>[/COLOR]
<FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0">
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="ifContentScrolls">
<com.android.systemui.statusbar.NotificationLinearLayout android:orientation="vertical" android:id="@id/notificationLinearLayout" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/noNotificationsTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_no_notifications_title" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/ongoingTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_ongoing_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/ongoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<TextView android:textSize="14.669983dip" android:textColor="@color/notification_header_text_color" android:gravity="center_vertical" android:id="@id/latestTitle" android:background="@drawable/quickpanel_title_background" android:paddingLeft="13.329987dip" android:layout_width="fill_parent" android:layout_height="26.669983dip" android:text="@string/status_bar_latest_events_title" />
<LinearLayout android:orientation="vertical" android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.statusbar.NotificationLinearLayout>
</ScrollView>
<ImageView android:id="@id/title_bar_shadow" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="fill_parent" android:src="@drawable/title_bar_shadow" android:scaleType="fitXY" />
</FrameLayout>
</com.android.systemui.statusbar.ExpandedView>
STEP 3
SystemUI.apk/res/values/colors.xml
add the red line to end of it before </resources>
Code:
<color name="status_bar_clock_color">#ffffffff</color>
<color name="equalizer_fill_color">#96ffffff</color>
[COLOR="Red"]<color name="new_custom_equalizer_fill_color">#96ffffff</color>[/COLOR]
</resources>
SystemUI.apk/res/values/dimens.xml
add the red line to end of it before </resources>
Code:
<dimen name="status_bar_battery_bottom_padding">1.0px</dimen>
<dimen name="eqalizer_path_effect_1">6.0dip</dimen>
<dimen name="eqalizer_path_effect_2">1.0dip</dimen>
<dimen name="eqalizer_path_stroke_width">6.0dip</dimen>
[COLOR="Red"]<dimen name="new_custom_eqalizer_path_effect_1">6.0dip</dimen>
<dimen name="new_custom_eqalizer_path_effect_2">1.0dip</dimen>
<dimen name="new_custom_eqalizer_path_stroke_width">6.0dip</dimen>[/COLOR]
</resources>
SystemUI.apk/res/values/ids.xml
add the red line to end of it before </resources>
Code:
<item type="id" name="recent_force_stop">false</item>
<item type="id" name="recent_wipe_app">false</item>
<item type="id" name="recent_uninstall">false</item>
[COLOR="Red"]<item type="id" name="new_visualizer_view_panel">false</item>
<item type="id" name="new_custom_visualizer_view_panel">false</item>
<item type="id" name="new_custom_visualizer_view">false</item>[/COLOR]
</resources>
SystemUI.apk/res/values/integers.xml
Note ! if you don't have this xml, download attached integers.xml put it in your systemui values folder, and skip this lines step :
add the red line to end of it before </resources>
Code:
<integer name="equalizer_divisions">4</integer>
<integer name="equalizer_db_fuzz_factor">2</integer>
<integer name="equalizer_db_fuzz">-10</integer>
[COLOR="Red"]<integer name="new_custom_equalizer_divisions">4</integer>
<integer name="new_custom_equalizer_db_fuzz_factor">2</integer>
<integer name="new_custom_equalizer_db_fuzz">-10</integer>[/COLOR]
</resources>
STEP-4
AndroidManifest.xml
Add the red line
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:sharedUserId="android.uid.system" android:process="system" android:versionCode="10" android:versionName="2.3.6" 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.MANAGE_USB" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
[COLOR="Red"]<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />[/COLOR]
<application android:label="@string/app_label" android:icon="@drawable/ic_launcher_settings" android:allowClearUserData="false" android:persistent="true">
<service android:name=".statusbar.StatusBarService" android:exported="false" />
<activity 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.NoDisplay" android:name="com.android.internal.app.UsbStorageUnmountActivity" android:excludeFromRecents="true" />
<activity android:theme="@*android:style/Theme.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.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.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.Dialog.Alert" android:name=".usb.UsbAccessoryUriActivity" android:permission="android.permission.MANAGE_USB" android:exported="true" android:excludeFromRecents="true" android:finishOnCloseSystemDialogs="true" />
</application>
</manifest>
- Compile and Sign it
- Download attached Android-2.3.++VisualizerSettings.apk push to system/app with right permission
- Enjoy :laugh::good:
Thnks om
testet and work on MIUI V6 :fingers-crossed:
Adi Aisiteru Reborn said:
reserved 2
Click to expand...
Click to collapse
its finaly release .well done om adi:good:
Permision to use the guide sir Adi..
always wait for other owesome guide..
thx om @adi rate 5 star this thread
awesome guide
damn ajiiib
awesome guide.. but, it force close on ICS
my SystemUI has been had old music visualizer view by your guide in here.. and I wanna replace it with this one, and my statusbar is gone..
can you help me, sir?
here is my logcat
Code:
04-02 19:41:44.409 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:45.679 E/AndroidRuntime(1945): FATAL EXCEPTION: main
04-02 19:41:45.679 E/AndroidRuntime(1945): java.lang.NoSuchMethodError: registerContentObserver
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer$SettingsObserver.observe(MusicEqualizerVisualizer.java:445)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer.onAttachedToWindow(MusicEqualizerVisualizer.java)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.View.dispatchAttachedToWindow(View.java:9860)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2300)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2308)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:947)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2455)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Looper.loop(Looper.java:137)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
04-02 19:41:45.679 E/AndroidRuntime(1945): at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
04-02 19:41:45.679 E/AndroidRuntime(1945): at dalvik.system.NativeStart.main(Native Method)
04-02 19:41:47.119 E/InputDispatcher(432): channel '419398b0 RecentsPanel (server)' ~ Channel is unrecoverably broken and will be disposed!
04-02 19:41:47.229 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:47.259 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:48.219 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
pykfree said:
awesome guide.. but, it force close on ICS
my SystemUI has been had old music visualizer view by your guide in here.. and I wanna replace it with this one, and my statusbar is gone..
can you help me, sir?
here is my logcat
Code:
04-02 19:41:44.409 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:45.679 E/AndroidRuntime(1945): FATAL EXCEPTION: main
04-02 19:41:45.679 E/AndroidRuntime(1945): java.lang.NoSuchMethodError: registerContentObserver
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer$SettingsObserver.observe(MusicEqualizerVisualizer.java:445)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer.onAttachedToWindow(MusicEqualizerVisualizer.java)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.View.dispatchAttachedToWindow(View.java:9860)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2300)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2308)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:947)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2455)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Looper.loop(Looper.java:137)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
04-02 19:41:45.679 E/AndroidRuntime(1945): at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
04-02 19:41:45.679 E/AndroidRuntime(1945): at dalvik.system.NativeStart.main(Native Method)
04-02 19:41:47.119 E/InputDispatcher(432): channel '419398b0 RecentsPanel (server)' ~ Channel is unrecoverably broken and will be disposed!
04-02 19:41:47.229 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:47.259 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:48.219 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
Click to expand...
Click to collapse
Something like conflict with Xpose ?
Uninstall it first
Sent from my GT-I8150 using XDA Free mobile app
pykfree said:
awesome guide.. but, it force close on ICS
my SystemUI has been had old music visualizer view by your guide in here.. and I wanna replace it with this one, and my statusbar is gone..
can you help me, sir?
here is my logcat
Code:
04-02 19:41:44.409 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:45.679 E/AndroidRuntime(1945): FATAL EXCEPTION: main
04-02 19:41:45.679 E/AndroidRuntime(1945): java.lang.NoSuchMethodError: registerContentObserver
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer$SettingsObserver.observe(MusicEqualizerVisualizer.java:445)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.adi.rom.interface.MusicEqualizerVisualizer.onAttachedToWindow(MusicEqualizerVisualizer.java)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.View.dispatchAttachedToWindow(View.java:9860)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2300)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2308)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:947)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2455)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.os.Looper.loop(Looper.java:137)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 19:41:45.679 E/AndroidRuntime(1945): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
04-02 19:41:45.679 E/AndroidRuntime(1945): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
04-02 19:41:45.679 E/AndroidRuntime(1945): at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
04-02 19:41:45.679 E/AndroidRuntime(1945): at dalvik.system.NativeStart.main(Native Method)
04-02 19:41:47.119 E/InputDispatcher(432): channel '419398b0 RecentsPanel (server)' ~ Channel is unrecoverably broken and will be disposed!
04-02 19:41:47.229 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:47.259 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 19:41:48.219 E/NotificationService(432): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
Click to expand...
Click to collapse
I am sorry, please use new file , I have share new smali file, check the guide again
Adi Aisiteru Reborn said:
Something like conflict with Xpose ?
Uninstall it first
Sent from my GT-I8150 using XDA Free mobile app
Click to expand...
Click to collapse
uninstalled! but it still happened
I use Xperia Tipo.. and I put in on statusbar_tracking.xml
I'm not have an SystemUI without music visualizer view
here is my SystemUI + framework with old music visualizer view mod, hope you wanna see it..
https://drive.google.com/open?id=0By-TJB-Hb4psbkVTZGRsUWMzQUE&authuser=0
and if you wanna see new logcat after xpose uninstalled, you can get it on attachment..
thank you sir.. hope it can fixed
Please re-Download the smali file, I have fixed the error
I have shared new fix smali file
Thank you
Adi Aisiteru Reborn said:
Please re-Download the smali file, I have fixed the error
I have shared new fix smali file
Thank you
Click to expand...
Click to collapse
awesome.. I'll try it right ow and report it soon.. thanks sir
awesome guide om.. :good:
gonna try soon..
pykfree said:
awesome.. I'll try it right ow and report it soon.. thanks sir
Click to expand...
Click to collapse
Code:
com.adi.rom.interface.MusicEqualizerVisualizer.onAttachedToWindow(MusicEqualizerVisualizer.java)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.View.dispatchAttachedToWindow(View.java:9860)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2300)
yes the error is from my smali, and I've fixed it, please try it
Adi Aisiteru Reborn said:
Code:
com.adi.rom.interface.MusicEqualizerVisualizer.onAttachedToWindow(MusicEqualizerVisualizer.java)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.View.dispatchAttachedToWindow(View.java:9860)
04-02 19:41:45.679 E/AndroidRuntime(1945): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:2300)
yes the error is from my smali, and I've fixed it, please try it
Click to expand...
Click to collapse
oh god.. still not fixed for me, sir..
here is my logcat
Code:
04-02 20:58:34.639 E/NotificationService(430): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 20:58:34.649 E/NotificationService(430): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 20:58:44.239 E/AndroidRuntime(1421): FATAL EXCEPTION: main
04-02 20:58:44.239 E/AndroidRuntime(1421): java.lang.NoSuchMethodError: registerContentObserver
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.adi.rom.interface.MusicEqualizerVisualizer$SettingsObserver.observe(MusicEqualizerVisualizer.java:445)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.adi.rom.interface.MusicEqualizerVisualizer.onFinishInflate(MusicEqualizerVisualizer.java:152)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.rInflate(LayoutInflater.java:747)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.View.inflate(View.java:13685)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.phone.PhoneStatusBar.makeStatusBarView(PhoneStatusBar.java:345)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.StatusBar.start(StatusBar.java:64)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.phone.PhoneStatusBar.start(PhoneStatusBar.java:264)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.SystemUIService.onCreate(SystemUIService.java:93)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2253)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.access$1600(ActivityThread.java:123)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1201)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.os.Looper.loop(Looper.java:137)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-02 20:58:44.239 E/AndroidRuntime(1421): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 20:58:44.239 E/AndroidRuntime(1421): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
04-02 20:58:44.239 E/AndroidRuntime(1421): at dalvik.system.NativeStart.main(Native Method)
pykfree said:
oh god.. still not fixed for me, sir..
here is my logcat
Code:
04-02 20:58:34.639 E/NotificationService(430): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 20:58:34.649 E/NotificationService(430): Ignoring notification with icon==0: Notification(contentView=null vibrate=null,sound=null,defaults=0x0,flags=0x91!!!1!one!)
04-02 20:58:44.239 E/AndroidRuntime(1421): FATAL EXCEPTION: main
04-02 20:58:44.239 E/AndroidRuntime(1421): java.lang.NoSuchMethodError: registerContentObserver
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.adi.rom.interface.MusicEqualizerVisualizer$SettingsObserver.observe(MusicEqualizerVisualizer.java:445)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.adi.rom.interface.MusicEqualizerVisualizer.onFinishInflate(MusicEqualizerVisualizer.java:152)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.rInflate(LayoutInflater.java:747)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.rInflate(LayoutInflater.java:742)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.view.View.inflate(View.java:13685)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.phone.PhoneStatusBar.makeStatusBarView(PhoneStatusBar.java:345)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.StatusBar.start(StatusBar.java:64)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.statusbar.phone.PhoneStatusBar.start(PhoneStatusBar.java:264)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.systemui.SystemUIService.onCreate(SystemUIService.java:93)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.handleCreateService(ActivityThread.java:2253)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.access$1600(ActivityThread.java:123)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1201)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.os.Looper.loop(Looper.java:137)
04-02 20:58:44.239 E/AndroidRuntime(1421): at android.app.ActivityThread.main(ActivityThread.java:4424)
04-02 20:58:44.239 E/AndroidRuntime(1421): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 20:58:44.239 E/AndroidRuntime(1421): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:817)
04-02 20:58:44.239 E/AndroidRuntime(1421): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
04-02 20:58:44.239 E/AndroidRuntime(1421): at dalvik.system.NativeStart.main(Native Method)
Click to expand...
Click to collapse
ok , I'll check again , be patient
Adi Aisiteru Reborn said:
ok , I'll check again , be patient
Click to expand...
Click to collapse
ok sir.. I'll be wait for it..
here is my SystemUI + framework with old music visualizer view mod, if you wanna see and recompile it
https://drive.google.com/open?id=0By-TJB-Hb4psbkVTZGRsUWMzQUE&authuser=0
Just awesome... once again!
Glad to know I've helped out you somehow! As you know, the ResourceUtils class allows the apk to find proper resources hex id by their names at run time, so we don't need to play with hex anymore!
Related
(Making a lot of these lately )
How do you change these two colors?
{
"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"
}
The blue text is easy...
Located in -> DialerTabActivity\res\color-finger\color_text_darkblue.xml
The contacts button gets a little tricky.
The text is located in -> DialerTabActivity\res\color-finger\color_text_gray_white.xml
Change the following...
Code:
<item android:color="#ff383838" /> to <item android:color="#ffbebebe" />
The following changes are in "DialerTabActivity/res/layout/dialer_activity.xml"
Code:
<TextView android:textColor="@color/color_text_gray_white" android:ellipsize="marquee" android:id="@id/tab_button_contact_text" android:paddingTop="27.0dip" android:clickable="false" android:duplicateParentState="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="-3.0dip" android:layout_marginRight="-3.0dip" android:text="@string/tab_contacts" android:textScaleX="0.95" android:singleLine="true" android:layout_centerHorizontal="true" />
<TextView android:textColor="@color/color_text_gray_white" android:ellipsize="marquee" android:id="@id/tab_button_contact_text" [COLOR=Red]android:paddingTop="29.0dip"[/COLOR] [COLOR=Red]android:paddingBottom="-10.0dip"[/COLOR] android:clickable="false" android:duplicateParentState="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="-3.0dip" android:layout_marginRight="-3.0dip" android:text="@string/tab_contacts"[COLOR=Red] android:textScaleX="1.0" [/COLOR]android:singleLine="true" android:layout_centerHorizontal="true" />
<ImageView android:id="@id/bottom_image" android:background="@drawable/tw_tab_selected_bar_left" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="-3.0dip" />
<ImageView android:id="@id/bottom_image" android:background="@drawable/tw_tab_selected_bar_left" [COLOR=Red]android:paddingTop="5.0dip"[/COLOR] android:layout_width="fill_parent" android:layout_height="wrap_content" [COLOR=Red]android:layout_marginTop="10.0dip"[/COLOR] />
<FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="0.0dip" android:layout_weight="1.0" />
<FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" [COLOR=Red]android:layout_height="-5.0dip"[/COLOR] android:layout_weight="1.0" />
I'm sure a few of the dialer_activity changes are not needed but I'm too lazy to go back and single them out.
The two changes in color went off fine.
Changed the .xml (even did it over just to make sure I didn't screw it up).
Dialer Force Closes.
Code:
E/AndroidRuntime( 9462): FATAL EXCEPTION: main
E/AndroidRuntime( 9462): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sec.android.app.dialertab/com.sec.android.app.dialertab.DialerTabActivity}: android.view.InflateException: Binary XML file line #11: Error inflating class android.widget.TextView
E/AndroidRuntime( 9462): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
E/AndroidRuntime( 9462): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
E/AndroidRuntime( 9462): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
E/AndroidRuntime( 9462): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
E/AndroidRuntime( 9462): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 9462): at android.os.Looper.loop(Looper.java:123)
E/AndroidRuntime( 9462): at android.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime( 9462): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 9462): at java.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime( 9462): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
E/AndroidRuntime( 9462): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
E/AndroidRuntime( 9462): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 9462): Caused by: android.view.InflateException: Binary XML file line #11: Error inflating class android.widget.TextView
E/AndroidRuntime( 9462): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
E/AndroidRuntime( 9462): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
E/AndroidRuntime( 9462): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:200)
E/AndroidRuntime( 9462): at android.app.Activity.setContentView(Activity.java:1647)
E/AndroidRuntime( 9462): at com.sec.android.app.dialertab.DialerTabActivity.onCreate(DialerTabActivity.java:165)
E/AndroidRuntime( 9462): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
E/AndroidRuntime( 9462): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
E/AndroidRuntime( 9462): ... 11 more
E/AndroidRuntime( 9462): Caused by: java.lang.reflect.InvocationTargetException
E/AndroidRuntime( 9462): at android.widget.TextView.<init>(TextView.java:365)
E/AndroidRuntime( 9462): at java.lang.reflect.Constructor.constructNative(Native Method)
E/AndroidRuntime( 9462): at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
E/AndroidRuntime( 9462): at android.view.LayoutInflater.createView(LayoutInflater.java:500)
E/AndroidRuntime( 9462): ... 27 more
E/AndroidRuntime( 9462): Caused by: android.content.res.Resources$NotFoundException: File res/drawable-hdpi/dialer_tab_button_bg_normal.9.png from drawable resource ID #0x7f0700b2: .xml extension required
E/AndroidRuntime( 9462): at android.content.res.Resources.loadColorStateList(Resources.java:1824)
E/AndroidRuntime( 9462): at android.content.res.TypedArray.getColorStateList(TypedArray.java:342)
E/AndroidRuntime( 9462): at android.widget.TextView.<init>(TextView.java:672)
E/AndroidRuntime( 9462): ... 31 more
I/ ( 2749): dumpmesg > "/data/log/dumpstate_app_error.log"
W/ActivityManager( 2749): Force finishing activity com.sec.android.app.dialertab/.DialerTabActivity
Here's what the original dialer_activity.xml looks like:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<com.sec.android.touchwiz.widget.TwTabHost android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent">
<LinearLayout android:orientation="horizontal" android:id="@id/TabLayoutWrapper" android:layout_width="fill_parent" android:layout_height="wrap_content">
<com.sec.android.touchwiz.widget.TwTabWidget android:gravity="center_vertical" android:id="@android:id/tabs" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" />
<LinearLayout android:orientation="vertical" android:id="@id/LinearLayout01" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="3.0">
<RelativeLayout android:id="@id/button_wrapper" android:background="@drawable/tw_tab_unselected_ss" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="-3.0dip" android:layout_marginRight="-3.0dip">
<RelativeLayout android:gravity="center_horizontal" android:id="@id/tab_button_contact" android:background="@drawable/dialer_tab_button_bg" android:clickable="true" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginLeft="-3.5dip" android:layout_marginTop="-3.0dip" android:layout_marginRight="-4.5dip" android:layout_marginBottom="-3.0dip">
<ImageView android:id="@id/tab_button_contact_img" android:background="@drawable/dialer_tab_contact_button" android:clickable="false" android:duplicateParentState="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" />
<TextView android:textColor="@color/color_text_gray_white" android:ellipsize="marquee" android:id="@id/tab_button_contact_text" android:paddingTop="27.0dip" android:clickable="false" android:duplicateParentState="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="-3.0dip" android:layout_marginRight="-3.0dip" android:text="@string/tab_contacts" android:textScaleX="0.95" android:singleLine="true" android:layout_centerHorizontal="true" />
</RelativeLayout>
</RelativeLayout>
<ImageView android:id="@id/bottom_image" android:background="@drawable/tw_tab_selected_bar_left" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginTop="-3.0dip" />
</LinearLayout>
</LinearLayout>
<FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="0.0dip" android:layout_weight="1.0" />
</LinearLayout>
</com.sec.android.touchwiz.widget.TwTabHost>
Can you post your modified DialerTabActivity.apk? The one that FCs.
I fixed it. Only problem is it messed up the bar that goes across the bottom of the tabs.
You're going to want to work on 6 images in DialerTabActivity/res/drawable-hdpi...
dialer_tab_button_bg_normal.9.png
dialer_tab_button_bg_press.9.png
tw_tab_selected_bar_left.9.png
tw_tab_selected_bar_right.9.png
tw_tab_unselected.9.png
tw_tab_unselected_ss.9.png
Make these three images transparent...
dialer_tab_button_bg_normal.9.png
tw_tab_selected_bar_left.9.png
tw_tab_selected_bar_right.9.png
dialer_tab_button_bg_press.9.png will need to look how you want it to look when you press on the tab (the same as it would if you pressed another tab)
tw_tab_unselected.9.png & tw_tab_unselected_ss.9.png will need to look like the other tab backgrounds when not pressed and not focused. You'll have to add the bottom border to this image also so it'll draw the bottom border on the button.
I already set up all the images properly, it worked fine before the edits... just the coding that was off.
I figured it out though... just don't change the second group of changes that you posted, and it works perfectly.
I knew there was some that was not needed.
Looks good though.
Now you just need to color your white contacts icon to match the gray.
any way to get the dialer in landscape?
This is an update of the known 15 toggles, with more toggles and a new application to customize an reorder the toggles in the status bar, i modded Lidroid App to keep only the Status bar features.
Here is how it looks like :
{
"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"
}
Let start, you need to decompile SystemUI.apk, you can use my updated Apk_Manager Repack.
Edit "SystemUI.apk\res\layout\tw_status_bar_expanded.xml" and make these changes, this will hide the stock status bar and use the new one:
Code:
<TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip" android:layout_marginTop="@dimen/notification_panel_quicksettingbtn_height">
Edit "SystemUI.apk\res\values\ids.xml" and add this Id:
Code:
++ <item type="id" name="exp_power_stat">false</item>
Edit "SystemUI.apk\smali\com\android\systemui\statusbar\phone\PhoneStatusBar.smali" and make these changes :
Add mPowerWidget field :
Code:
.field mPostCollapseCleanup:Ljava/lang/Runnable;
+++.field mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
.field mQueueLock:Ljava/lang/Object;
Method "makeStatusBarView" :
Code:
invoke-virtual {v1, v0, p3, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
.line 1120
+++iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
+++invoke-virtual {v1}, Lcom/wanam/systemui/quickpanel/PowerWidget;->updateWidget()V
return-void
Code:
invoke-virtual {v13, v14}, Landroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)V
+++move-object/from16 v0, p0
+++iget-object v13, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
+++const v14, 0x7f0d010e
+++invoke-virtual {v13, v14}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
+++move-result-object v13
+++check-cast v13, Lcom/wanam/systemui/quickpanel/PowerWidget;
+++move-object/from16 v0, p0
+++iput-object v13, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
.line 698
new-instance v13, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;
Code:
invoke-virtual {v1, v13, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
+++move-object/from16 v0, p0
+++iget-object v13, v0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/wanam/systemui/quickpanel/PowerWidget;
+++invoke-virtual {v13}, Lcom/wanam/systemui/quickpanel/PowerWidget;->setupWidget()V
.line 826
sget-boolean v13, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->useTouchWizGUI:Z
Extract attached "wanam.zip" and copy both folders "com" & "wanam" to your "SystemUI.apk\smali\".
That's all, recompile your SystemUI.
After building, make sure your Id "exp_power_stat" got the public id "0x7f0d010e", if you got a different Id, use your new public Id in the "makeStatusBarView" method.
Download attached "system.zip" , you need to copy Toggle buttons resources "lidroid-res.apk" to "system/framework", and "LidroidSettings.apk" to "/system/app" (with permissions 644).
Use this guide to mod lidroid-res.
Thanks to Lidroid for his awesome work, big thanks to GrgSiocl for providing the required files.
I attached a CWM patch working on DEODEXED XXELKC Roms ONLY!
(Patches and system file updated to V2 with a new repacked Lidroid App, why?)
This Mod is now featured on the Index of mods INDEX ALL IN 1
Any observation please send me PM
Awesome work :thumbup:
Thank you Wanam for one more time share your knowledge with the community.
NFC toggle
Hi wanam,
thanks for your awesome work.
I use this mod with Omega v34 (XXELKC Android 4.1.2) on my SGS3, and it works great except one little but annoying problem:
the NFC-toggles doesn't seem to work
i can add the Android-Beam/S-Beam buttons, and when i click on them, the color of the button changes.
but when i long-press the button and enter the menu the settings don't change.
i've talked to the developer of this ROM and he told me, that this problem is within the mod.
hope you could look into it
thanks in advance.
greets
how to CUSTOM settings @ Default ?
is there a way, to Edit a Certain .xml file to set custom settings as DEFAULT...
1st part ..Widget Buttons (where 23 toggles have on\off switches -custom)
2nd part..Brightness modes (picks 1 of 4 as default)
3rd part...Sound Modes (picks 1 of 7 as default)
4th part...Widget Button Order (Customize the order from left to right)
I Decompiled AdvanceS.apk, and others to find Default settings..It's probably in another .apk file.
I install ROM many times and can't bring in my Custom settings
-not even if i Use Titanium backup of AdvanceS file (so that tells me settings are stored somewhere else)
-I can't add back data\data\{folder} settings, cus ROM automatically overwrites my settings.
ANY Help would be great...Love ur MOD's.. I added them to current UVDLJC ROM base of SGS3 (Tmobile)
Thanks again for your WORK!
Can't thank you enough Wanam! Ported this to LL1 747/t999 this afternoon and people are loving it. Props to lidroid of course as well you kind of guys make this community what it is.
Reboot button crash:
Code:
E/AndroidRuntime( 3923): FATAL EXCEPTION: main
E/AndroidRuntime( 3923): java.lang.SecurityException: Neither user 10064 nor current process has android.permission.REBOOT.
E/AndroidRuntime( 3923): at android.os.Parcel.readException(Parcel.java:1425)
E/AndroidRuntime( 3923): at android.os.Parcel.readException(Parcel.java:1379)
E/AndroidRuntime( 3923): at android.os.IPowerManager$Stub$Proxy.reboot(IPowerManager.java:624)
E/AndroidRuntime( 3923): at android.os.PowerManager.reboot(PowerManager.java:594)
E/AndroidRuntime( 3923): at com.wanam.systemui.quickpanel.RebootButton$2.onClick(RebootButton.java:56)
E/AndroidRuntime( 3923): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
E/AndroidRuntime( 3923): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 3923): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 3923): at android.app.ActivityThread.main(ActivityThread.java:4898)
E/AndroidRuntime( 3923): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 3923): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 3923): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
E/AndroidRuntime( 3923): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
E/AndroidRuntime( 3923): at dalvik.system.NativeStart.main(Native Method)
Flash light crash:
Code:
E/AndroidRuntime( 3922): FATAL EXCEPTION: main
E/AndroidRuntime( 3922): java.lang.RuntimeException: Fail to connect to camera service
E/AndroidRuntime( 3922): at android.hardware.Camera.native_setup(Native Method)
E/AndroidRuntime( 3922): at android.hardware.Camera.<init>(Camera.java:348)
E/AndroidRuntime( 3922): at android.hardware.Camera.open(Camera.java:325)
E/AndroidRuntime( 3922): at com.wanam.util.LedController.openCamera(LedController.java)
E/AndroidRuntime( 3922): at com.wanam.util.LedController.isFlashSupported(LedController.java)
E/AndroidRuntime( 3922): at com.wanam.systemui.quickpanel.FlashlightButton.toggleState(FlashlightButton.java)
E/AndroidRuntime( 3922): at com.wanam.systemui.quickpanel.PowerButton$2.onClick(PowerButton.java:181)
E/AndroidRuntime( 3922): at android.view.View.performClick(View.java:4211)
E/AndroidRuntime( 3922): at android.view.View$PerformClick.run(View.java:17267)
E/AndroidRuntime( 3922): at android.os.Handler.handleCallback(Handler.java:615)
E/AndroidRuntime( 3922): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime( 3922): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 3922): at android.app.ActivityThread.main(ActivityThread.java:4898)
E/AndroidRuntime( 3922): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 3922): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 3922): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
E/AndroidRuntime( 3922): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
E/AndroidRuntime( 3922): at dalvik.system.NativeStart.main(Native Method)
E/android.os.Debug( 2536): [email protected] > dumpstate -k -t -z -d -o /data/log/dumpstate_app_error
Seems some stuff is broken for XXEMR2
Kryten2k35 said:
Code:
E/AndroidRuntime( 3923): FATAL EXCEPTION: main
E/AndroidRuntime( 3923): java.lang.SecurityException: Neither user 10064 nor current process has android.permission.REBOOT.
E/AndroidRuntime( 3923): at android.os.Parcel.readException(Parcel.java:1425)
E/AndroidRuntime( 3923): at android.os.Parcel.readException(Parcel.java:1379)
E/AndroidRuntime( 3923): at android.os.IPowerManager$Stub$Proxy.reboot(IPowerManager.java:624)
E/AndroidRuntime( 3923): at android.os.PowerManager.reboot(PowerManager.java:594)
E/AndroidRuntime( 3923): at com.wanam.systemui.quickpanel.RebootButton$2.onClick(RebootButton.java:56)
E/AndroidRuntime( 3923): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:167)
E/AndroidRuntime( 3923): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 3923): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 3923): at android.app.ActivityThread.main(ActivityThread.java:4898)
E/AndroidRuntime( 3923): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 3923): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 3923): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
E/AndroidRuntime( 3923): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
E/AndroidRuntime( 3923): at dalvik.system.NativeStart.main(Native Method)
Seems the reboot part is broken for XXEMR2
Click to expand...
Click to collapse
Nop it's not broken, MR2 is the first S3 FW which revoked the system core status from SystemUI, and this will be the same for upcoming FWs, so you won't be able to access flashlight and reboot command, check your AndroidManifest file, add both required permissions or just add back the system status :
Code:
android:sharedUserId="android.uid.system" android:process="system"
You will need to resign your file after the compilation, and disable signature check on "services.jar", by forcing the result value of "comparesignature" method to 0 or greater, otherwise your mod will work with a No-Wipe Only!
Thanks wanam!
Where abouts in services.jar do I find that value? Any idea which file?
Another problem I'm having (while I have your attention ) is that the ongoing notifications are in the middle of the brightness slider
EDIT:
In AndroidManefest.xml
Is it this?
Code:
<service android:name="SystemUIService" android:sharedUserId="android.uid.system" android:process="system" android:exported="true" />
?
EDIT2:
Also, I've found the "comparesignature" method of "PackageMAnagerService.smali" but I have no idea what I'm doing.
EDIT3:
I've seen your 5.8 ROM has the changes I need, so I'm grabbing that
Could the Icons of widget buttons be changed?
Kryten2k35 said:
Thanks wanam!
Where abouts in services.jar do I find that value? Any idea which file?
Another problem I'm having (while I have your attention ) is that the ongoing notifications are in the middle of the brightness slider
EDIT:
In AndroidManefest.xml
Is it this?
Code:
<service android:name="SystemUIService" android:sharedUserId="android.uid.system" android:process="system" android:exported="true" />
?
EDIT2:
Also, I've found the "comparesignature" method of "PackageMAnagerService.smali" but I have no idea what I'm doing.
Click to expand...
Click to collapse
In the AndroidManifest, your header should be like this :
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest android:sharedUserId="android.uid.system" android:process="system" android:versionCode="16"
The content of the "comparesignature" method should be like this:
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
.registers 9
.parameter "s1"
.parameter "s2"
.prologue
const/4 v6, 0x0
const-string v3, "Wanam: PackageManager"
const-string v4, "Skip signature check."
invoke-static {v3, v4}, Landroid/util/Slog;->e(Ljava/lang/String;Ljava/lang/String;)I
return v6
.end method
EDIT: for the brightness bar issue, is it default enabled on your FW, you don't get it with stock toggles?
For the brightness slider, it's enabled for both the stock and 23 toggles, but when using 23 toggles, it looks like the attached image.
I fixed it somehow before, but god knows how I did it.
My tw_status_bar_expanded.xml looks like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/back" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="@dimen/carrier_label_height" android:layout_marginBottom="@dimen/close_handle_height" />
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/notification_panel_header_height" layout="@layout/status_bar_expanded_header" />
<TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip" android:layout_marginTop="128.0dip">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
<ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
<FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
</FrameLayout>
</LinearLayout>
<View android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="1.0dip" />
</LinearLayout>
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="170.0dip" android:overScrollMode="ifContentScrolls">
<LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff000000" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<RelativeLayout android:orientation="horizontal" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
</ScrollView>
</FrameLayout>
<com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/close_handle_height">
<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/close_handle_height" android:src="@drawable/status_bar_close" android:scaleType="fitXY" />
</com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>
It's not stock, but it used to be fine until the last two FW's
Kryten2k35 said:
For the brightness slider, it's enabled for both the stock and 23 toggles, but when using 23 toggles, it looks like the attached image.
I fixed it somehow before, but god knows how I did it.
My tw_status_bar_expanded.xml looks like this:
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:id="@id/notification_panel" android:background="@drawable/back" android:paddingTop="@dimen/notification_panel_padding_top" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/notification_panel_margin_left"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network" android:gravity="center" android:layout_gravity="bottom" android:id="@id/carrier_label" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="@dimen/carrier_label_height" android:layout_marginBottom="@dimen/close_handle_height" />
<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/notification_panel_header_height" layout="@layout/status_bar_expanded_header" />
<TextView android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<HorizontalScrollView android:id="@id/quicksetting_scroller" android:visibility="gone" android:scrollbars="none" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height">
<com.android.systemui.statusbar.policy.quicksetting.QuickSettingPanel android:orientation="horizontal" android:id="@id/quicksetting_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:divider="@drawable/tw_black_bg" android:showDividers="middle" />
</HorizontalScrollView>
<com.wanam.systemui.quickpanel.PowerWidget android:id="@id/exp_power_stat" android:layout_width="wrap_content" android:layout_height="@dimen/quick_setting_button_height" android:layout_marginTop="@dimen/tw_notification_panel_header_height" />
<LinearLayout android:orientation="vertical" android:id="@id/brightness_controller" android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="56.0dip" android:layout_marginTop="128.0dip">
<LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="55.0dip">
<ImageView android:id="@id/brightness_icon" android:clickable="true" android:layout_width="25.0dip" android:layout_height="fill_parent" android:layout_marginLeft="13.0dip" android:src="@drawable/ic_sysbar_brightness" android:contentDescription="@string/accessibility_brightness_icon" />
<FrameLayout android:id="@id/brightness_group" android:layout_width="fill_parent" android:layout_height="fill_parent">
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
<com.android.systemui.statusbar.policy.ToggleSlider android:id="@id/auto_brightness" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:text="@string/status_bar_settings_auto_brightness_label" />
</FrameLayout>
</LinearLayout>
<View android:background="#ff000000" android:layout_width="fill_parent" android:layout_height="1.0dip" />
</LinearLayout>
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginTop="170.0dip" android:overScrollMode="ifContentScrolls">
<LinearLayout android:orientation="vertical" android:id="@id/scrollCart" android:layout_width="fill_parent" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@id/noNotificationsTitle" android:focusable="true" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/noNotificationsText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="@dimen/status_bar_expanded_notification_category_height" android:text="@string/status_bar_no_notifications_title" />
</LinearLayout>
<LinearLayout android:orientation="vertical" android:id="@id/onGoingCart" android:background="#ff000000" android:focusable="true" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/onGoingNotificationText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_ongoing_events_title" />
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/onGoingItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<LinearLayout android:orientation="vertical" android:id="@id/notificationCart" android:background="#ff000000" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<RelativeLayout android:orientation="horizontal" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="@dimen/status_bar_expanded_notification_category_text_size" android:textStyle="bold" android:textColor="@color/notification_category_color" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:visibility="gone" android:layout_width="180.0dip" android:layout_height="fill_parent" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
</RelativeLayout>
</LinearLayout>
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/notificationItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/tw_notification_row_min_height" />
</LinearLayout>
</ScrollView>
</FrameLayout>
<com.android.systemui.statusbar.phone.CloseDragHandle android:layout_gravity="bottom" android:orientation="vertical" android:id="@id/close" android:layout_width="fill_parent" android:layout_height="@dimen/close_handle_height">
<ImageView android:layout_gravity="bottom" android:layout_width="fill_parent" android:layout_height="@dimen/close_handle_height" android:src="@drawable/status_bar_close" android:scaleType="fitXY" />
</com.android.systemui.statusbar.phone.CloseDragHandle>
</FrameLayout>
It's not stock, but it used to be fine until the last two FW's
Click to expand...
Click to collapse
You need to fix your statusbar layouts.
Sent from my GT-N7100 using Tapatalk 2
Which parts do you suggest?
EDIT:
The manefest.xml and services.jar changes worked great
EDIT2 :
If only The scroll part of that layout would actually pay attention to the marginTop value it wouldn't be an issue! But changing it does nothing!
EDIT3:
I had to change the value entirely in the dimens.xml file, then it moved
Kryten2k35 said:
Which parts do you suggest?
EDIT:
The manefest.xml and services.jar changes worked great
EDIT2 :
If only The scroll part of that layout would actually pay attention to the marginTop value it wouldn't be an issue! But changing it does nothing!
EDIT3:
I had to change the value entirely in the dimens.xml file, then it moved
Click to expand...
Click to collapse
Did you try to just increase the value of marginTop?
Code:
android:layout_marginTop="170.0dip"
wanam said:
Did you try to just increase the value of marginTop?
Code:
android:layout_marginTop="170.0dip"
Click to expand...
Click to collapse
I did. It was set to be 180.dip, but I changed the value in the dimens.xml and that moved it... All sorted
Thanks wanam!
Hi wanam.
I wanted to let you know that I ported this (with your helpful info about PhoneStatusBar.smali in the op) to Xperia T. If you have any suggestions, feel free to write me. Here is the thread - http://forum.xda-developers.com/showthread.php?p=34280785.
Another time I came here to say tank you.
Working fine with your new tips.
You are the man!
Sent from my SPH-L900 using Tapatalk 2
This mod is originally posted HERE by Evilisto and copy-pasting given code works for ICS, but NOT for JB. So, i worked out the little modifications to be done for JB, and it works, only you wont get the WP blue color as background. All actual credits go to Evilisto..This can be done for any device running Jellybean, the only thing you would need to change are the dip values.
SETTING UP
REQUIRED STUFF.
-- Apktool. 1.5.0 works best for me, but if not, a previous version is fine too.
-- framework-res.apk from ROM.
-- SystemUI.apk from ROM.
-- Knowledge on decompiling, recompiling apks.
-- Notepad++ recommended.
HOW-TO.
-- Copy framework-res.apk and SystemUI.apk to your folder.
-- Install framework-res.apk. This step is important.
Code:
apktool if framework-res.apk
-- Decompile framework-res.apk
Code:
apktool d framework-res.apk
This will give you a folder called framework-res. This is your decompiled apk.
-- Decompile SystemUI.apk
Code:
apktool d SystemUI.apk
This will give you a folder named SystemUI.
-- Alternatively, you can specify the folder name to be created. For ex : i want framework for framework-res.apk folder :
Code:
apktool d framework-res.apk framework
This will name the folder framework.
OR
Code:
apktool d SystemUI.apk System
This will give you folder named System for decompiled SystemUI.apk
==================================================
THE MODIFICATIONS
IN FRAMEWORK-RES.APK
-- Open framework-res folder. Navigate to res/values, right-click on Dimens.xml and select 'edit with Notepad++' or any other you may prefer.
Find default values of the following values and change it to given values.
res/values/dimens.xml
Code:
<dimen name="thumbnail_height">270.0dip</dimen>
<dimen name="thumbnail_width">192.0dip</dimen>
===================================================
IN SYSTEMUI.APK
-- Save file, go back and open your SystemUI folder and open the res/ folder.
-- Copy paste the following code by editing specified files.
res/values/dimens.xml
Code:
<dimen name="thumbnail_height">270.0dip</dimen>
<dimen name="thumbnail_width">192.0dip</dimen>
res/values/drawables.xml
ADD THE FOLLOWING LINE :
Code:
<item type="drawable" name="status_bar_recents_background_solid">#ff33b1e1</item>
res/layout-port/status_bar_recent_panel.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:recentItemLayout="@layout/status_bar_recent_item"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<View android:id="@id/recents_transition_background" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background_solid" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_centerVertical="true">
<ImageView android:id="@id/recents_transition_placeholder_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|left|center" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="none" android:fadingEdgeLength="0.0dip" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_marginRight="0.0dip" android:stackFromBottom="true" android:divider="@null">
<LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="wrap_content" />
</com.android.systemui.recent.RecentsHorizontalScrollView>
</FrameLayout>
<include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
res/layout-port/status_bar_recent_item.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingTop="@dimen/status_bar_recents_item_padding" android:paddingBottom="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true">
<FrameLayout android:id="@id/app_thumbnail" android:background="@drawable/recents_thumbnail_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="5.0dip" android:foreground="@drawable/recents_thumbnail_fg" android:layout_centerInParent="true">
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="192.0dip" android:layout_height="270.0dip" />
<ImageView android:id="@id/app_icon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="0.0dip" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="@dimen/status_bar_recents_app_icon_max_width" android:maxHeight="@dimen/status_bar_recents_app_icon_max_height" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" />
</FrameLayout>
<View android:id="@id/recents_callout_line" android:background="@drawable/recents_callout_line" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="1.0dip" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="3.0dip" android:layout_marginRight="3.0dip" android:layout_toLeftOf="@id/app_thumbnail" android:layout_below="@id/app_label" android:layout_alignParentLeft="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:paddingTop="0.0dip" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="fill_parent" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="95.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_thumbnail" android:layout_alignLeft="@id/app_thumbnail" android:layout_alignParentBottom="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="40.0dip" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignLeft="@id/app_thumbnail" android:layout_alignParentBottom="true" />
</RelativeLayout>
</FrameLayout>
res/layout-land/status_bar_recent_panel.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.recent.RecentsPanelView android:id="@id/recents_root" android:layout_width="fill_parent" android:layout_height="fill_parent" systemui:recentItemLayout="@layout/status_bar_recent_item"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
<View android:id="@id/recents_transition_background" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" />
<FrameLayout android:id="@id/recents_bg_protect" android:background="@drawable/status_bar_recents_background_solid" android:clipChildren="false" android:clipToPadding="false" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_alignParentBottom="true">
<ImageView android:id="@id/recents_transition_placeholder_icon" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" />
<com.android.systemui.recent.RecentsHorizontalScrollView android:layout_gravity="bottom|right|center" android:orientation="horizontal" android:id="@id/recents_container" android:scrollbars="none" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_scroll_fading_edge_length" android:clipChildren="false" android:clipToPadding="false" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="@dimen/status_bar_recents_right_glow_margin" android:stackFromBottom="true" android:divider="@null">
<LinearLayout android:orientation="horizontal" android:id="@id/recents_linear_layout" android:clipChildren="false" android:clipToPadding="false" android:layout_width="wrap_content" android:layout_height="fill_parent" />
</com.android.systemui.recent.RecentsHorizontalScrollView>
</FrameLayout>
<include android:id="@id/recents_no_apps" android:visibility="invisible" android:layout_width="fill_parent" android:layout_height="fill_parent" layout="@layout/status_bar_no_recent_apps" />
</com.android.systemui.recent.RecentsPanelView>
res/layout-land/status_bar_recent_item.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:paddingLeft="@dimen/status_bar_recents_item_padding" android:paddingRight="@dimen/status_bar_recents_item_padding" android:layout_width="wrap_content" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout android:layout_gravity="center_vertical" android:id="@id/recent_item" android:paddingTop="@*android:dimen/status_bar_height" android:layout_width="wrap_content" android:layout_height="wrap_content">
<FrameLayout android:id="@id/app_thumbnail" android:background="@drawable/recents_thumbnail_bg" android:visibility="invisible" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_thumbnail_left_margin" android:layout_marginTop="@dimen/status_bar_recents_thumbnail_top_margin" android:foreground="@drawable/recents_thumbnail_fg" android:layout_alignParentLeft="true" android:layout_alignParentTop="true">
<ImageView android:id="@id/app_thumbnail_image" android:layout_width="125.0dip" android:layout_height="180.0dip" />
</FrameLayout>
<ImageView android:id="@id/app_icon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_icon_left_margin" android:layout_marginTop="@dimen/status_bar_recents_app_icon_top_margin" android:scaleType="centerInside" android:adjustViewBounds="true" android:maxWidth="@dimen/status_bar_recents_app_icon_max_width" android:maxHeight="@dimen/status_bar_recents_app_icon_max_height" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" />
<TextView android:textSize="@dimen/status_bar_recents_app_label_text_size" android:textColor="@color/status_bar_recents_app_label_color" android:ellipsize="marquee" android:id="@id/app_label" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginLeft="@dimen/status_bar_recents_app_label_left_margin" android:layout_marginTop="@dimen/status_bar_recents_text_description_padding" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_thumbnail" android:layout_alignLeft="@id/app_thumbnail" />
<TextView android:textSize="@dimen/status_bar_recents_app_description_text_size" android:ellipsize="marquee" android:id="@id/app_description" android:fadingEdge="horizontal" android:fadingEdgeLength="@dimen/status_bar_recents_text_fading_edge_length" android:layout_width="@dimen/status_bar_recents_app_label_width" android:layout_height="wrap_content" android:layout_marginTop="@dimen/status_bar_recents_text_description_padding" android:scrollHorizontally="true" android:singleLine="true" android:layout_below="@id/app_label" android:layout_alignLeft="@id/app_thumbnail" />
</RelativeLayout>
</FrameLayout>
res/layout/status_bar_no_recent_apps.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout android:background="@drawable/status_bar_recents_background_solid" android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<TextView android:textSize="20.0dip" android:textColor="@color/status_bar_recents_app_label_color" android:gravity="center_horizontal" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_no_recent_apps" />
</FrameLayout>
=================================================
-- Recompile SystemUI.apk
Code:
apktool b SystemUI SystemUI2.apk
-- Recompile framework-res.apk
Code:
apktool b framework-res framework-res2.apk
-- Open SystemUI.apk and SystemUI2.apk with 7-zip. Select open archive.
-- Delete resources.arsc, classes.dex and res folder from original SystemUI.apk
-- Copy resources.arsc, classes.dex and res folder from SystemUI2.apk and paste them into the SystemUI.apk archive.[/COLOR]
-- Now, here, i usually use Apk-Multitool but you can use CMD too. Now you need to zipalign SystemUI.apk. There are different methods, best is to download APkMultiTool and do it. Or if you have the SDK, you can do it directly through command prompt or terminal.
-- Connect phone to PC.
-- Copy SystemUI.apk and framework-res2.apk and rename framework-res2.apk to framework-res.apk.
--Move SystemUI.apk to system/app and set rw-r--r-- permissions. Move framework-res.apk to system/framework and set rw-r--r-- permissions.
-- Reboot and you're done.
Credits to Evilisto and others listed in his credits
Screenshot please?
Enviado desde mi GT-I9100 usando Tapatalk 2
{
"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"
}
Which Jellybean does this work on; 4.1 or 4.2, if there would be any difference in the procedure, it would be nice if you could make that known
jhtfarquhar said:
Which Jellybean does this work on; 4.1 or 4.2, if there would be any difference in the procedure, it would be nice if you could make that known
Click to expand...
Click to collapse
I've tried with 4.1.x, you could try with 4.2 and tell me if it works..
Can't recompile
I need help, I have verizon galaxy nexus with CM10.1 nightly and I can't recompile apks with TickleMyAndroid, even if I dont change anything!!!
kouta77 said:
I need help, I have verizon galaxy nexus with CM10.1 nightly and I can't recompile apks with TickleMyAndroid, even if I dont change anything!!!
Click to expand...
Click to collapse
Try apktool 1.5.1
Cheers,
K.A.
When I am recompiling the apks for my Nexus 4 (using CM10.1) I get the errors, do you know
Code:
Ryan-McKinneys-MacBook-Pro-2:Mod RyanMcK$ apktool b SystemUI SystemUI2.apk
I: Checking whether sources has changed...
I: Checking whether resources has changed...
I: Building resources...
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
Exception in thread "main" brut.androlib.AndrolibException: brut.androlib.AndrolibException: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:358)
at brut.androlib.Androlib.buildResources(Androlib.java:283)
at brut.androlib.Androlib.build(Androlib.java:206)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Caused by: brut.androlib.AndrolibException: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:357)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:336)
... 5 more
Caused by: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.util.OS.exec(OS.java:89)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:355)
... 6 more
Wow, Looks Good..
Nice, I Like It,,,.
Btw, I dont Have device running Jb or ics...
qurit said:
When I am recompiling the apks for my Nexus 4 (using CM10.1) I get the errors, do you know
Code:
Ryan-McKinneys-MacBook-Pro-2:Mod RyanMcK$ apktool b SystemUI SystemUI2.apk
I: Checking whether sources has changed...
I: Checking whether resources has changed...
I: Building resources...
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
Exception in thread "main" brut.androlib.AndrolibException: brut.androlib.AndrolibException: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:358)
at brut.androlib.Androlib.buildResources(Androlib.java:283)
at brut.androlib.Androlib.build(Androlib.java:206)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Caused by: brut.androlib.AndrolibException: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:357)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:336)
... 5 more
Caused by: brut.common.BrutException: could not exec command: [aapt, p, --min-sdk-version, 17, --target-sdk-version, 17, -F, /var/folders/m_/jvrkxq0n7dlg81pnltdqljt00000gq/T/APKTOOL411786079513505054.tmp, -0, arsc, -I, /Users/RyanMcK/Library/apktool/framework/1.apk, -S, /Users/RyanMcK/Desktop/Mod/SystemUI/res, -M, /Users/RyanMcK/Desktop/Mod/SystemUI/AndroidManifest.xml]
at brut.util.OS.exec(OS.java:89)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.java:355)
... 6 more
Click to expand...
Click to collapse
Read these lines :
Code:
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:5: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_background').
/Users/RyanMcK/Desktop/Mod/SystemUI/res/layout-land/status_bar_recent_panel.xml:7: error: Error: No resource found that matches the given name (at 'id' with value '@id/recents_transition_placeholder_icon').
Missing ids. Add the missing ids to values/ids.xml
Has anybody verified if this works on 4.2?
i followed this guide and didn't get any errors while recompiling but only the landscape works properly
look what happened to the portrait view
i am using galaxy s advance JB 4.1.2 stock rooted samsung official
its works bro, in my JB 4.1.2
thanks for your guide.
nice view
Can this guide work on 4.4.2 KitKat?
Inviato dal mio Nexus 4 con Tapatalk 2
You should make this into an xposed Framework module
Sent from my SM-N900V using Tapatalk
117micc said:
You should make this into an xposed Framework module
Sent from my SM-N900V using Tapatalk
Click to expand...
Click to collapse
I would love to see an xposed like that . But I don't think it's possible
≪███▓▒Sℵα℘℘εD ₣ℜ✪ℳ ℳψ JεℓℓySℵα℘ ℜ✪ℳ™▒▓███≫
Will this work on KitKat ?
H!
not work on cm10.1 :crying:
If you're going to make it possible ob Kitkat, I'll be one of those guys who wait
Sent from my GT-I8160 using Tapatalk
I vote for an xposed framework too
Sent from my Nexus 4 using Tapatalk
HOW TO PORT LIDROID TOGGLES
TO NON SAMSUNG JELLY BEAN ROM
Oke guys, I want to share how to port Lidroid toggle to all non Samsung Jelly Bean 4.1 rom ,
do not try this on 4.0/4.2/4.3 or you will ended with SystemUI force closes
Credit & Thank you very much , to lidroid, and Wanam for Guide [MOD][Android 4.1.2] Add Customizable 23 Statusbar Toggles To Samsung Jelly bean Roms,. and Thanks too to peetr_I learn some code from his thread [MOD][JB][ICS] Xperia T/TX/V port of Lidroid power widget,. and also thanks to
XDA.AGM I learn some code from his thread too [ JB ] [ A.0.400/1.100 ] [ XP-XU ]SystemUI with Lidroid Custom 18 Toggles [version 6], and you must thanks them too
and also thanks to @BOND1987 for testing it on mediatek device
and also Thanks to Recognized themer @serajr for some toggles created by him
so we are going to port 20 Lidroid toggles :
( -Lock screen/screen-off action, -Reboot action, -Shutdown action, -Airplane mode, -Bluetoth, -Brightness, -GPS, -Flashlight, -Lockscreen, -MobileData, -Orientation, -ScreenTimeOut, -Sound, -Sync, -Wi-fi, -Wi-fi Hotspot, Battery info, Stay awake, USB Connection mode, USB Debugging )
NOTE !! for CyanogenMod 10 , do not follow or use this guide,. you can just flash my mod from here http://forum.xda-developers.com/showthread.php?t=2333075
Many users from different device reported work on their devices
ok lets go to Guide:
first of all need some requirement for this MOD-GUIDE
REQUIREMENT:
- BRAIN
- Patient
- experience
- Know how to decompile/recompiling Apk file
- Know how to decompile/recompiling jar Apk file
- notepad++
- Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else
1. Decompile settings.apk
go to : res/xml/settings_header.xml and add the Blue code :
Code:
<header android:icon="@drawable/ic_settings_cmlauncher" android:id="@id/launcher_settings" android:title="@string/launcher_settings_title" />
<header android:icon="@drawable/ic_settings_lockscreen" android:id="@id/lock_screen_settings" android:title="@string/lock_screen_title" android:fragment="com.android.settings.cyanogenmod.LockscreenInterface" />
<header android:icon="@drawable/ic_settings_themes" android:id="@id/themes_settings" android:title="@string/themes_settings_title">
<intent android:targetPackage="com.tmobile.themechooser" android:action="android.intent.action.MAIN" android:targetClass="com.tmobile.themechooser.ThemeChooser" />
</header>
<header android:icon="@drawable/ic_settings_system" android:id="@id/system_settings" android:title="@string/system_settings_title" android:fragment="com.android.settings.cyanogenmod.SystemSettings" />
[COLOR="Blue"]<header android:icon="@drawable/ic_settings_advanced" android:id="@id/adi_buttons" android:title="@string/adi_buttons_title">
<intent android:targetPackage="com.lidroid.settings" android:action="android.intent.action.MAIN" android:targetClass="com.lidroid.settings.Settings" />
</header>[/COLOR]
<header android:title="@string/header_category_device" />
<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" />
- res/values/ids.xml
Code:
[COLOR="Blue"]<item type="id" name="adi_buttons">false</item>[/COLOR]
- res/values/strings.xml
Code:
[COLOR="Blue"]<string name="adi_buttons_title">Power Widget</string>[/COLOR]
- res/values/drawable-hdpi
add this PNG image http://d-h.st/mQp
Done & recompile : push to system/app with right permission
NOTE !!, you can skip steps for editing Settings.apk, but don't use Lidroid_setings.apk bellow,. you must use this Version Lidroid_settings.apk by @akash akya,. go here : http://forum.xda-developers.com/showpost.php?p=44062624&postcount=34
Credit & Thanks to @akash akya
Don't forget to press His THANKS BUTTON
2. Download this Lidroid_Settings.apk push to system/app with right permission
3. Decompile SystemUI.apk, Download this : Sources_Lidroid_SystemUI.apk
exstract it and merge to your decompiled SystemUI.apk
NOTE !!, if your device has arrays.xml in res/values/here
please do check again the Sources_Lidroid_SystemUI.apk and adapt the arrays.xml code in it with yours
4. Add the blue code :
- res/values/ids.xml
Code:
[COLOR="Blue"]<item type="id" name="power_widget_button_text">false</item>
<item type="id" name="power_widget_button_indic">false</item>
<item type="id" name="adi_widget">false</item>
<item type="id" name="automatic">false</item>
<item type="id" name="power_widget_button">false</item>
<item type="id" name="power_widget_button_image">false</item>[/COLOR]
- res/values/strings.xml
Code:
[COLOR="Blue"]
<string name="usb_connected_txt">USB connected</string>
<string name="quickpanel_wifi_text">Wi-Fi</string>
<string name="quickpanel_dc_text">Data</string>
<string name="quickpanel_network_mode_text">Network</string>
<string name="quickpanel_sound_text">Sound</string>
<string name="quickpanel_sound_vibration_text">Sound vibration</string>
<string name="quickpanel_silent_text">Silent</string>
<string name="quickpanel_vibration_text">Vibration</string>
<string name="quickpanel_rotation_text">Rotation</string>
<string name="quickpanel_bluetooth_text">Bluetooth</string>
<string name="quickpanel_gps_text">GPS</string>
<string name="quickpanel_autosync_text">Auto Sync</string>
<string name="quickpanel_brightness_text">Brightness</string>
<string name="quickpanel_screen_timeout_text">Timeout</string>
<string name="quickpanel_lockscreen_text">Lockscreen</string>
<string name="quickpanel_airplane_text">Flightmode</string>
<string name="quickpanel_flashlight_text">Flashlight</string>
<string name="quickpanel_reboot_text">Reboot</string>
<string name="quickpanel_shutdown_text">Shutdown</string>
<string name="airplane_mode">In Flight mode</string>
<string name="shutdown_confirm">Your phone will shut down.</string>
<string name="screen_timeout_seconds">Screen timeout set to: %d second(s)</string>
<string name="screen_timeout_minutes">Screen timeout set to: %d minute(s)</string>
<string name="screen_timeout_hours">Screen timeout set to: %d hour(s)</string>
<string name="hamster">Phone Options</string>
<string name="yes">OK</string>
<string name="no">Cancel</string>
<string name="reboot">Reboot</string>
<string name="reboot_recovery">Recovery</string>
<string name="reboot_download">Download</string>
<string name="quickpanel_nfc_text">NFC</string>
<string name="quickpanel_wifi_ap_text">Wifi AP</string>
<string name="quickpanel_lockscreen_action_text">Lock Now</string>
<string name="quickpanel_androidbeam_text">Android Beam</string>
<string name="brightness_settings_automatic">AUTO</string>
<string name="brightness_settings_title" />
<string name="quickpanel_usb_debugging_text">USB Debugging</string>
<string name="quickpanel_usb_connection_mode_text">USB Conn. Mode</string>
<string name="quickpanel_usb_current_mtp_title">Current mode: MPT</string>
<string name="quickpanel_usb_current_msc_title">Current mode: MSC</string>
<string name="usb_mpt_mode">MPT - Media Transfer</string>
<string name="usb_msc_mode">MSC - Mass Storage</string>
<string name="quickpanel_stay_awake_plugged_text">Stay Awake</string>
<string name="quickpanel_battery_info_text">Battery Info</string>
<string name="battery_info_info">Battery Information</string>
<string name="battery_info_usage">Battery Power Usage</string>
[/COLOR]
- res/values/integers.xml
Code:
[COLOR="Blue"]<integer name="quickpanel_scroll_threshold_port">5</integer>
<integer name="quickpanel_scroll_threshold_land">8</integer>[/COLOR]
- smali/com/android/systemui/statusbar/phone/PhoneStatusBar.smali
Code:
.field mPixelFormat:I
.field mPositionTmp:[I
.field mPostCollapseCleanup:Ljava/lang/Runnable;
[COLOR="Blue"].field mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;[/COLOR]
.field private mPreviousConfigFontScale:F
.field private mPrevioutConfigOrientation:I
.field mQueueLock:Ljava/lang/Object;
Next find this method
Code:
# virtual methods
.method public addIcon(Ljava/lang/String;IILcom/android/internal/statusbar/StatusBarIcon;)V
and Add the blue code above .return-void
Code:
invoke-virtual {v1, v0, p3, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
[COLOR="Blue"]iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;
invoke-virtual {v1}, Lcom/lidroid/systemui/quickpanel/PowerWidget;->updateWidget()V[/COLOR]
.line 826
return-void
.end method
Next find this method
Code:
.method protected makeStatusBarView()Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
scroll down still in that method ,
find the Green code, and add the blue code above it
Code:
iget-object [COLOR="Red"]v9[/COLOR], p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
const [COLOR="Red"]v10[/COLOR], 0x7f0c0044
invoke-virtual {[COLOR="Red"]v9, v10[/COLOR]}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
move-result-object [COLOR="Red"]v9[/COLOR]
check-cast [COLOR="Red"]v9[/COLOR], Landroid/widget/ScrollView;
iput-object [COLOR="Red"]v9[/COLOR], p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mScrollView:Landroid/widget/ScrollView;
.line 528
iget-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mScrollView:Landroid/widget/ScrollView;
const/4 v10, 0x0
invoke-virtual {v9, v10}, Landroid/widget/ScrollView;->setVerticalScrollBarEnabled(Z)V
[COLOR="Blue"]iget-object [COLOR="Red"]v9[/COLOR], p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
.line 444
const [COLOR="Red"]v10[/COLOR], 0x7f0c00da
invoke-virtual {[COLOR="Red"]v9, v10[/COLOR]}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
.line 445
move-result-object [COLOR="Red"]v9[/COLOR]
check-cast [COLOR="Red"]v9[/COLOR], Lcom/lidroid/systemui/quickpanel/PowerWidget;
iput-object [COLOR="Red"]v9[/COLOR], p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;[/COLOR]
.line 530
[COLOR="Green"]new-instance v9, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;
iget-object v10, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
invoke-direct {v9, p0, v1, v10}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar$MyTicker;-><init>(Lcom/android/systemui/statusbar/phone/PhoneStatusBar;Landroid/content/Context;Landroid/view/View;)V
iput-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mTicker:Lcom/android/systemui/statusbar/phone/Ticker;
[/COLOR]
Pay attentiion on the red code in the part of blue code, it have to be wriiten the same like above/previous part
Next go to post #2
Oke Next
still in that method, scroll down
add the red code
Mediatek device
Code:
const-string v9, "android.intent.action.SIM_INFO_UPDATE"
invoke-virtual {v7, v9}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
.line 607
iget-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mSIMInfoReceiver:Landroid/content/BroadcastReceiver;
invoke-virtual {v1, v9, v7}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
[COLOR="Red"]iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;
invoke-virtual {v1}, Lcom/lidroid/systemui/quickpanel/PowerWidget;->setupWidget()V[/COLOR]
Xperia/AOSP
Code:
const-string v7, "android.intent.action.SCREEN_OFF"
invoke-virtual {v1, v7}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
.line 517
iget-object v7, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mBroadcastReceiver:Landroid/content/BroadcastReceiver;
invoke-virtual {v0, v7, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
.line 518
[COLOR="Red"]iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;
invoke-virtual {v1}, Lcom/lidroid/systemui/quickpanel/PowerWidget;->setupWidget()V[/COLOR]
go to res/layout/ here
pay attention in this step of layout folder, you must adapt it to your device
below is example from my mod for CM10, where the notification panel is in
status_bar_expanded.xml, so I must put the lidroid toggle in it.
Code:
<LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginBottom="@dimen/close_handle_underlap">
<include android:layout_width="fill_parent" android:layout_height="@dimen/notification_panel_header_height" layout="@layout/status_bar_expanded_header" />
[COLOR="Red"]<com.lidroid.systemui.quickpanel.PowerWidget android:id="@id/adi_widget" android:layout_width="fill_parent" android:layout_height="wrap_content" />[/COLOR]
<include layout="@layout/adi_brightness" />
<RelativeLayout android:orientation="horizontal" android:background="#ff293945" android:layout_width="fill_parent" android:layout_height="wrap_content">
<TextView android:textSize="15.0dip" android:textStyle="bold" android:textColor="#ffadc1d6" android:gravity="left|center" android:id="@id/latestNotificationText" android:paddingLeft="11.0dip" android:layout_width="fill_parent" android:layout_height="23.0dip" android:text="@string/status_bar_latest_events_title" android:layout_alignParentLeft="true" />
<TextView android:textSize="15.0dip" android:textColor="#ffffffff" android:gravity="center" android:id="@id/clear_all_button" android:background="@drawable/tw_btn_default_small" android:padding="0.100000024dip" android:focusable="true" android:clickable="true" android:layout_width="123.0dip" android:layout_height="24.0dip" android:layout_marginRight="4.0dip" android:text="@string/status_bar_clear_all_button" android:layout_alignParentRight="true" android:contentDescription="@string/accessibility_clear_all" />
</RelativeLayout>
<TextView android:textAppearance="@style/TextAppearance.StatusBar.Expanded.Network.EmergencyOnly" android:gravity="center" android:id="@id/emergency_calls_only" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="wrap_content" />
<ScrollView android:id="@id/scroll" android:fadingEdge="none" android:layout_width="fill_parent" android:layout_height="fill_parent" android:overScrollMode="always">
<com.android.systemui.statusbar.policy.NotificationRowLayout android:id="@id/latestItems" android:layout_width="fill_parent" android:layout_height="wrap_content" systemui:rowHeight="@dimen/notification_row_min_height" />
</ScrollView>
</LinearLayout>
Recompile your systemUI.apk and decompile the newly Recompiled APK again
Next go to
res/values/public.xml
open it with Notepad++
leave it, but keep it open
next
- smali/com/android/systemui/statusbar/phone/PhoneStatusBar.smali
with Notepad++ , control+F
Code:
iget-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
.line 444
const v10, [COLOR="Red"]0x7f0c00da[/COLOR]
invoke-virtual {v9, v10}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
.line 445
move-result-object v9
check-cast v9, Lcom/lidroid/systemui/quickpanel/PowerWidget;
iput-object v9, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPowerWidget:Lcom/lidroid/systemui/quickpanel/PowerWidget;
replace the red code 0x7f0c00da
with the new ids from public.xml of the second decompiled systemUI.apk
Code:
<public type="id" name="adi_widget" id="[COLOR="Red"]0x7fXXXXXX[/COLOR]" />
Next go to post#3
Next : Download this : source_public, and open it with Notepad++
so you have two public.xml now which is opened in the Notepad++
1. secod decompiled public.xml
2. source_public.xml
- go to , smali/com/lidroid/systemui/quickpanel/here...
there are a lot of smalis there
FIND ALL IDS in all that smalis THAT'S STARTED WITH
Code:
0x7fxxxxxx
EXAMPLE :
AirplaneButton.smali
find this :
Code:
const v0, [COLOR="Red"]0x7f0900b4[/COLOR]
find 0x7f0900b4 in source_public.xml
Code:
<public type="string" name="quickpanel_lockscreen_text" id="0x7f0900b3" />
<public type="string" name="[COLOR="Green"]quickpanel_airplane_text[/COLOR]" id="[COLOR="Red"]0x7f0900b4[/COLOR]" />
<public type="string" name="quickpanel_flashlight_text" id="0x7f0900b5" />
we find that 0x7f0900b4 is for quickpanel_airplane_text
Next, find quickpanel_airplane_text new ids in your second decompiled SystemUI.apk
Code:
<public type="string" name="quickpanel_airplane_text" id="[COLOR="Red"]0x7f??????[/COLOR]" />
change the ids in AirplaneButton.smali with your new ids from second decompiled systemui.apk.
Do it too, to all
Code:
0x7fxxxxxx
in all smalis in the lidroid folder.
, The last part
open Android.Manifest.xml
Before
Code:
[COLOR="Red"]<manifest android:versionCode="16"[/COLOR] android:versionName="4.1.2-eng.arco.20130605.050149" package="com.android.systemui" coreApp="true"
change it to :
Code:
[COLOR="Red"]<manifest android:sharedUserId="android.uid.system" android:process="system" android:versionCode="16"[/COLOR] android:versionName="4.1.2-eng.arco.20130605.050149" package="com.android.systemui" coreApp="true"
Next, add the red code
Code:
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
[COLOR="Red"]<uses-permission android:name="android.permission.CAMERA" />[/COLOR]
<application android:label="@string/app_label" android:icon="@*android:drawable/platlogo" android:allowClearUserData="false" android:persistent="true" android:allowBackup="false" android:hardwareAccelerated="true">
<service android:name="SystemUIService" android:exported="true" />
Done & Compile, don't forget to sign it coz we've make change to the android.manifest.xml
I ussually use ApkMultitools to decompile/recompile/sign APK
so if you use ApkMultitools, you can use my signer keys
download attached file, exstract it and merge to your ApkMultitools / other / here
Done
Thanks @BOND1987 for the screenshot from Mediatek device
Additional Guide
[Porting Guide][CM10/JB] Mod 4.2 Statusbar Quicksettings ( TABS, Slider, Flip Anim )
wow... nice guide om
Do not follow the guide yet "!..
It hasn't finished yet,. Still so many missing part.
Later I'll continue
Sent from my GT-I8150 using xda app-developers app
Congrats buddy!!! :good:
I´m about to release my Power Toggles v2 implementation (built from scratch), so after that u´ll get 28 toggles at all, and with a totally new reorder toggles way (built from scratch too). See it on XZ forum, here.
serajr said:
Congrats buddy!!! :good:
I´m about to release my Power Toggles v2 implementation (built from scratch), so after that u´ll get 28 toggles at all, and with a totally new reorder toggles way (built from scratch too). See it on XZ forum, here.
Click to expand...
Click to collapse
That's cool sir
Oke guys, Guide Done now,.
Please do check again from the beginning of the guide ,.
have a nice modding
Adi Aisiteru Reborn said:
Click to expand...
Click to collapse
Sir Need Assistance, Getting this error.....
Code:
E/AndroidRuntime( 432): FATAL EXCEPTION: main
E/AndroidRuntime( 432): java.lang.NullPointerException
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton.updateImageView(PowerButton.java:167)
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton.access$000(PowerButton.java:29)
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton$1.handleMessage(PowerButton.java:92)
E/AndroidRuntime( 432): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 432): at android.os.Looper.loop(Looper.java:153)
E/AndroidRuntime( 432): at android.app.ActivityThread.main(ActivityThread.java:5086)
E/AndroidRuntime( 432): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 432): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 432): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
E/AndroidRuntime( 432): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
E/AndroidRuntime( 432): at dalvik.system.NativeStart.main(Native Method)
Please guide.....
BOND1987 said:
Sir Need Assistance, Getting this error.....
Code:
E/AndroidRuntime( 432): FATAL EXCEPTION: main
E/AndroidRuntime( 432): java.lang.NullPointerException
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton.updateImageView(PowerButton.java:167)
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton.access$000(PowerButton.java:29)
E/AndroidRuntime( 432): at com.lidroid.systemui.quickpanel.PowerButton$1.handleMessage(PowerButton.java:92)
E/AndroidRuntime( 432): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 432): at android.os.Looper.loop(Looper.java:153)
E/AndroidRuntime( 432): at android.app.ActivityThread.main(ActivityThread.java:5086)
E/AndroidRuntime( 432): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 432): at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 432): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
E/AndroidRuntime( 432): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
E/AndroidRuntime( 432): at dalvik.system.NativeStart.main(Native Method)
Please guide.....
Click to expand...
Click to collapse
How can you get Fatal error..
Did you apply the guide to stok unmodded apk or trying to combine it with other modded apk
Sent from my GT-I8150 using xda app-developers app
Don't know sir.
But it's not modded SystemUI. It's stock one from my favorite ROM. The errors are pointing towards power button.smali. I checked that too. But not able to understand. Now what to do.
Edit:-
Got the culprit. Rectifying problem. Will let you know if it's resolved. Almost close to solution.
EDIT-1:-
Glad to inform you sir. Issue resolved. No problem in guide. Actually my brain is the problem.
In couple of minutes uploading my new mod's screenshots.
Once again like to thank you sir. But not able to find any post where I haven't thanked yet.
""Hitting Thanks Don't Cost You Anything, then, Why You All Are Getting Bothered in Doing So. Hitting Thanks Increases My Motivation to Work for this Community....""
BOND1987 said:
Don't know sir.
But it's not modded SystemUI. It's stock one from my favorite ROM. The errors are pointing towards power button.smali. I checked that too. But not able to understand. Now what to do.
Edit:-
Got the culprit. Rectifying problem. Will let you know if it's resolved. Almost close to solution.
EDIT-1:-
Glad to inform you sir. Issue resolved. No problem in guide. Actually my brain is the problem.
In couple of minutes uploading my new mod's screenshots.
Once again like to thank you sir. But not able to find any post where I haven't thanked yet.
""Hitting Thanks Don't Cost You Anything, then, Why You All Are Getting Bothered in Doing So. Hitting Thanks Increases My Motivation to Work for this Community....""
Click to expand...
Click to collapse
I don't know Bond, the problem can be from installl wrong framework-res.apk,.
so in this case if you mod that rom, so you must use that rom res.apk too
Good to know
And first thanking the God of this Mod- @Adi Aisiteru Reborn.
Thanks a ton sir.
Presenting my new SystemUI mod.:beer::beer::beer:
Feeling like
""Hitting Thanks Don't Cost You Anything, then, Why You All Are Getting Bothered in Doing So. Hitting Thanks Increases My Motivation to Work for this Community....""
got it working in first try... thanks to adi..
well explained as always... but this one is gold..... :good::good:
my device mt6577
in my res/xml/settings_header.xm don't have this line:
<header android:icon="@drawable/ic_settings_system" android:id="@id/system_settings" android:title="@string/system_settings_title" android:fragment="com.android.settings.cyanogenmod.SystemSettings" />
Click to expand...
Click to collapse
Should I add this too ?
lucky92 said:
in my res/xml/settings_header.xm don't have this line:
Should I add this too ?
Click to expand...
Click to collapse
Paste the line mentioned in op above wireless setting line.
It will work good.
""Hitting Thanks Don't Cost You Anything, then, Why You All Are Getting Bothered in Doing So. Hitting Thanks Increases My Motivation to Work for this Community....""
lucky92 said:
in my res/xml/settings_header.xm don't have this line:
Should I add this too ?
Click to expand...
Click to collapse
you can add it anywhere....
ex... after :
<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" />
actually its not compulsory, its nothing to do with maintoggles .. as i skipped this part... added shortcut using apex launcher....
Thank you all guys
I cannot press your all thnks , as only permited to 8 thanks
Btw, as additional , yes you can skip the settings.apk steps
I have another alternative
decompile Lidroid_Settings.apk, and make change to its android.manifest.xml
Code:
<activity android:label="@string/app_name" android:name="Settings">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.[COLOR="Red"]DEFAULT[/COLOR]" />
</intent-filter>
</activity>
<activity android:label="@string/app_name" android:name="SettingsActivity" />
This will make the Lidroid settings app show in app drawer
Code:
<category android:name="android.intent.category.[COLOR="Red"]LAUNCHER[/COLOR]" />
I'm sorry but I have a question, when i recompiling Settings.apk, systemui.apk by Apk-multi-tools, it's show: that
I: Checking whether sources has changed...
I: Checking whether resources has changed...
I: Building apk file...
The system cannot find the file specified.
it's normail or i do something wrong ? any idea ?
ICS??
Thank you for the amazing guide. Is there any way of making it work on ICS? I don't have JB on my MTK device, and there's no hope of getting it in the forseeable future..
Hi there! I am a beginner to Android Studio and right now trying to create an app with the functionality of trying to display a splash screen and then after 5 seconds, the app will change the layout from the Splashscreen to the login page. I
This are the code i have attempted to used but failed causing the app to crash.
Code:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Thread startTimer = new Thread() {
public void run() {
try {
sleep(5000);
Intent i = new Intent(MainActivity.this, Login_Page.class);
startActivity(i);
finish();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
startTimer.start();
}}
I have a total of 4 layouts
1) Activity_main.xml
2) Content_main.xxml
3) login.xml
4) splash.xml
I have 3 acitivities
1) Login_page
2) MainAcitvity
3) Splash
Error Code
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities
E/AndroidRuntime: FATAL EXCEPTION: Thread-148
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: Process: com.yong.combinedhuamtities, PID: 3495
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.yong.combinedhuamtities/com.yong.combinedhuamtities.Login_Page}; have you declared this activity in your AndroidManifest.xml?
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1794)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Instrumentation.execStartActivity(Instrumentation.java:1512)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Activity.startActivityForResult(Activity.java:3917)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Activity.startActivityForResult(Activity.java:3877)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:784)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Activity.startActivity(Activity.java:4200)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at android.app.Activity.startActivity(Activity.java:4168)
12-04 15:28:47.209 3495-3547/com.yong.combinedhuamtities E/AndroidRuntime: at com.yong.combinedhuamtities.MainActivity$1.run(MainActivity.java:25)
12-04 15:28:47.673 3495-3582/com.yong.combinedhuamtities E/Surface: getSlotFromBufferLocked: unknown buffer: 0xb3f97710
Would appreciate if any professional programmer can explain the error of mine... Thank you!
Read the message:
Unable to find explicit activity class {com.yong.combinedhuamtities/com.yong.combinedhuamtities.Login_Page};
have you declared this activity in your AndroidManifest.xml?
<activity
android:name=".SplashActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
</activity>
a26484306 said:
<activity
android:name=".SplashActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
</activity>
Click to expand...
Click to collapse
Thanks for your help!!!