Pencarian

Monday, June 23, 2014

Tutorial MOD SystemUI FlmeOS pada ICS/JB

Kesempatan pertama .. saya mencoba untuk berbagi sedikit trik untuk memodifikasi SystemUI.apk (ICS)

persyaratan:
-memahami bagaimana untuk mendekompilasi dan mengkompilasi menggunakan apktool atau apkmulti tool

Langsung saja ke TKP :
Saya menggunakan apktool

1. Ambil systemUI.apk dalam sistem folder / app dan framework-res.apk dan SemcGenericUxpRes.apk dalam  folder sistem / framework dan taruh di C:/apktool/disini

2. instal framework-res.apk dan SemcGenericUxpRes.apk ,  dengan perintah "apktool if framework-res.apk tekan enter, dan apktool if SemcGenericUxpRes.apk tekan enter"

3. Decompile SytemUI.apk dengan perintah "apktool d SystemUI.apk" tekan enter

4. Buka folder SystemUI/res/layout/Status_bar.xml
   copas line ini :

<?xml version="1.0" encoding="utf-8"?>
<com.android.systemui.statusbar.phone.PhoneStatusBarView android:orientation="vertical" android:background="@drawable/statusbar_costum_background" android:focusable="true" android:fitsSystemWindows="true"  android:descendantFocusability="afterDescendants"
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:systemui="http://schemas.android.com/apk/res/com.android.systemui">
    <LinearLayout android:orientation="horizontal" android:id="@id/icons" android:paddingLeft="6.0dip" android:paddingRight="6.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
  <ImageView android:gravity="left|center" android:id="@id/carrier_logo_id" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/carrier_logo" android:scaleType="fitCenter" android:adjustViewBounds="true" />
  <LinearLayout android:orientation="vertical" android:paddingLeft="6.0dip" android:paddingRight="0.0dip" android:layout_width="fill_parent" android:layout_height="fill_parent">
            <LinearLayout android:gravity="right" android:paddingRight="3.0dip" android:layout_width="fill_parent" android:layout_height="0.0dip" android:layout_weight="1.0">
    <com.android.systemui.statusbar.phone.IconPartitioner android:layout_width="0.0dip" android:layout_height="fill_parent" android:layout_weight="1.0">
     <com.android.systemui.statusbar.StatusBarIconView android:id="@id/moreIcon" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="fill_parent" android:src="@drawable/stat_notify_more" />
     <com.android.systemui.statusbar.phone.IconMerger android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/notificationIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
    </com.android.systemui.statusbar.phone.IconPartitioner>
    <com.android.systemui.statusbar.policy.Clock android:textAppearance="@style/TextAppearance.StatusBar.Clock" android:textSize="16.0dip" android:gravity="left|center" android:id="@id/clock" android:layout_width="wrap_content" android:layout_height="fill_parent" android:singleLine="true" />
   </LinearLayout>
            <LinearLayout android:paddingRight="3.0dip" android:layout_width="fill_parent" android:layout_height="0.0dip" android:layout_weight="1.0">
                <LinearLayout android:gravity="right" android:layout_width="fill_parent" android:layout_height="fill_parent">
     <LinearLayout android:gravity="center_vertical" android:orientation="horizontal" android:id="@id/statusIcons" android:layout_width="wrap_content" android:layout_height="fill_parent" />
     <ImageView android:layout_gravity="center_vertical" android:id="@id/stat_no_sim" android:background="@drawable/stat_sys_no_sim" android:paddingLeft="2.0dip" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" />
     <com.android.systemui.statusbar.policy.Traffic android:textAppearance="@style/TextAppearance.StatusBar.Traffic" android:gravity="left|center" android:id="@id/traffic" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_marginRight="2.0dip" android:singleLine="true" />
     <LinearLayout android:gravity="center" android:orientation="horizontal" android:id="@id/signal_battery_cluster" android:paddingLeft="0.0dip" android:layout_width="wrap_content" android:layout_height="fill_parent">
      <include android:id="@id/signal_cluster" android:layout_width="wrap_content" android:layout_height="wrap_content" layout="@layout/signal_cluster_view" />
      <TextView android:layout_gravity="left|center" android:id="@id/name_carrier_id" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/carrier_name_abal" android:singleLine="true" style="@style/StatusBarNotificationText" />
      <TextView android:layout_gravity="left|center" android:id="@id/battery_text" android:visibility="gone" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/status_bar_settings_settings_button" android:singleLine="true" style="@style/StatusBarNotificationText" />
      <ImageView android:id="@id/battery" android:paddingLeft="2.0dip" android:layout_width="wrap_content" android:layout_height="wrap_content" />
     </LinearLayout>
    </LinearLayout>
   </LinearLayout> 
  </LinearLayout> 
    </LinearLayout>
    <LinearLayout android:orientation="horizontal" android:id="@id/ticker" android:paddingLeft="6.0dip" android:animationCache="false" android:layout_width="fill_parent" android:layout_height="fill_parent">
        <ImageSwitcher android:id="@id/tickerIcon" android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:layout_marginRight="4.0dip">
            <com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
            <com.android.systemui.statusbar.AnimatedImageView android:layout_width="@dimen/status_bar_icon_size" android:layout_height="@dimen/status_bar_icon_size" android:scaleType="center" />
        </ImageSwitcher>
        <com.android.systemui.statusbar.phone.TickerView android:id="@id/tickerText" android:paddingTop="2.0dip" android:paddingRight="10.0dip" android:layout_width="0.0dip" android:layout_height="wrap_content" android:layout_weight="1.0">
            <TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
            <TextView android:textAppearance="@style/TextAppearance.StatusBar.PhoneTicker" android:layout_width="fill_parent" android:layout_height="wrap_content" android:singleLine="true" />
        </com.android.systemui.statusbar.phone.TickerView>
    </LinearLayout>
</com.android.systemui.statusbar.phone.PhoneStatusBarView>

5. SystemUI\smali\com\android\systemui\statusbar\poli cy
copy and paste
Traffic$1.smali
Traffic$2.smali
Traffic$3.smali
Traffic$SettingsObserver.smali
Traffic.smali

6. Buka ids.xml di folder SystemUI/res/value/ids.xml
dan tambahkan kode ini :

<item type="id" name="traffic">false</item>
    <item type="id" name="carrier_logo_id">false</item>
    <item type="id" name="name_carrier_id">false</item>
</resources>

7. buka SystemUI/res/value/strings.xml
dan tambahkan kode ini :

<string name="carrier_name_abal">Paboya</string> 
</resources>

8. buka SystemUI/res/value/styles.xml
dan tambahkan kode ini :

    <style name="TextAppearance.StatusBar.Traffic" parent="@*android:style/TextAppearance.StatusBar.Icon">
        <item name="android:textSize">14.0dip</item>
        <item name="android:textStyle">normal</item>
        <item name="android:textColor">#ffffffff</item>
    </style>
</resources>

9. buka  SystemUI\res\drawable-hdpi dan tambahkan "carrier_logo.png"
10. Recompile SystemUI anda dengan perintah "apktool b SystemUI_new.apk"

tahap selanjutnya adalah decompile framework-res.apk

1. Decompile framework-res.apk
2. buka dimens.xml
cari kode ini :

<dimen name="status_bar_height">25.0dip</dimen>

ganti dengan ini :


 <dimen name="status_bar_height">40.0dip</dimen>

cari kode ini :

<dimen name="status_bar_icon_size">25.0dip</dimen>
 ganti dengan ini :

<dimen name="status_bar_icon_size">30.0dip</dimen>

3. simpan dan recompile kembali framework-res.apk
4.selesai


Letakkan kembali SystemUI.apk dan framework-res.apk pada:
SystemUI.apk di system/app/taruh sini set permission r-w-r-r
framework-res.apk di system/framework/taruh sini set permission r-w-r-r

5. Reboot


sampai di sini saya berbagi ilmu, semoga bermanfaat bagi kalian dan menambah ilmu kita tentang belajar OS android.

Wassalamu'alaikum wr.wb

thanks to:
- Allah SWT
- Keluarga saya
- Fendy arif susanto
- Eko setiawan
- xda

No comments:

Post a Comment