[GUIDE][SMALI] How to port Mokee ListView Animation for CyanogenMod.11

Search This thread

phenomarc

Senior Member
Nov 17, 2011
219
119
OnePlus 8T
Hi phenomarc, i'm on TW 4.1.2 ROM for Samsung Galaxy S2 too and i tried to import this feature, i followed the guide in op ,the only things that change is that all AbsListView smali files are in my framework2.jar so i replaced them.
But not work for me i've a lot of FC .
Which changes have you made?
thanks
I use the files from the adi CM 10.1 ROM, like he suggested, and all works fine. First I use the files from CM 11, but give me bootloop.
 
  • Like
Reactions: remuntada78

lacoursiere18

Senior Member
Jan 9, 2013
4,183
7,001
LbTs
this is the whole logcat View attachment 2833949
hope someone can find the problem

Looks like it is searching for a method that is called in Mms apk but is not available anymore.. probably in AbsListView.smali

Error is here:
Code:
I/dalvikvm( 6651): Could not find method com.android.mms.ui.MessageListView.setMotionEvent, referenced from method com.android.mms.ui.ComposeMessageFragment.onSipStatusChanged

W/dalvikvm( 6651): VFY: unable to resolve virtual method 11119: Lcom/android/mms/ui/MessageListView;.setMotionEvent (Z)V

setMotionEvent is prob in TW AbsListView somewhere
 

remuntada78

Senior Member
Jun 2, 2013
903
964
Looks like it is searching for a method that is called in Mms apk but is not available anymore.. probably in AbsListView.smali

Error is here:
Code:
I/dalvikvm( 6651): Could not find method com.android.mms.ui.MessageListView.setMotionEvent, referenced from method com.android.mms.ui.ComposeMessageFragment.onSipStatusChanged

W/dalvikvm( 6651): VFY: unable to resolve virtual method 11119: Lcom/android/mms/ui/MessageListView;.setMotionEvent (Z)V

setMotionEvent is prob in TW AbsListView somewhere

assuming i'll add all the method that i need for make it work i'll solve only the message problem or contact problem too?
i don't seen any reference for contact in my logcat
 

phenomarc

Senior Member
Nov 17, 2011
219
119
OnePlus 8T
assuming i'll add all the method that i need for make it work i'll solve only the message problem or contact problem too?
i don't seen any reference for contact in my logcat

I have searched this method in framework2.jar but found nothing. So this method goes in mms apk. BTW, I think that I don't have this FC with my modded file. If you want I can upload the files I used.
 
  • Like
Reactions: remuntada78

remuntada78

Senior Member
Jun 2, 2013
903
964
I have searched this method in framework2.jar but found nothing. So this method goes in mms apk. BTW, I think that I don't have this FC with my modded file. If you want I can upload the files I used.
The method is in the original AbsListView
Yes if you post your files i will try them thanks
 

remuntada78

Senior Member
Jun 2, 2013
903
964
You are right. I searched in all the folder, but VTS didn't found the method in the original files.
Here are my files:http://d-h.st/GrR
You may check the ids, but if it's for the S2 they will be the same that mines.
Same problem with your files and after more test i got other problems with Tapatalk, whatsapp and other
I will try to add all the necessary to make it work , long job[emoji31]
 

phenomarc

Senior Member
Nov 17, 2011
219
119
OnePlus 8T
basically are fc, i show you what happens

the last app i tried to open was contact
Well, I can tell you that I don't have FC in any of apps I have tried (whattsapp, tapatalk, messages,contacts,settings...) But in messages and contacts the animations are the stock.
Also, I'm trying another mods during this morning (SystemUI), and I have made a logcat. Well, in this logcat I have found the error you posted before (refering com.mms.ui...).
 

Top Liked Posts

  • There are no posts matching your filters.
  • 33
    Guide for CyanogenMod11 KOT49H


    HOW TO PORT "Mokee ListView Animations" for CyanogenMod11 only !!

    Hello guys, I want to share to you smali Guide how to port with settings. custom Mokee ListView Animation,.
    credit to Mokee rom

    ok lets go to Guide:
    first of all need some requirement for this MOD-GUIDE

    REQUIREMENT:
    - BRAIN
    - Patient
    - experience
    - Know how to decompile/recompiling Apk and JAR file
    - notepad++
    - Tool for decompiling, : apkmanager/apktool/Virtous/apkmultitools/ or else


    Settings.apk

    Decompile your CM11 Settings.apk
    1. Settings.apk\res\values\arrays.xml
    add this to end of it before
    Code:
    </resources>
    so it will be like this
    Code:
    <string-array name="listview_animation_entries">
            <item>@string/listview_off</item>
            <item>@string/listview_wave_left</item>
            <item>@string/listview_wave_right</item>
            <item>@string/listview_scale</item>
            <item>@string/listview_alpha</item>
            <item>@string/listview_stack_top</item>
            <item>@string/listview_stack_bottom</item>
            <item>@string/listview_unfold</item>
            <item>@string/listview_fold</item>
            <item>@string/listview_translate_left</item>
            <item>@string/listview_translate_right</item>
            <item>@string/listview_rotate</item>
        </string-array>
        <string-array name="listview_animation_values">
            <item>0</item>
            <item>1</item>
            <item>2</item>
            <item>3</item>
            <item>4</item>
            <item>5</item>
            <item>6</item>
            <item>7</item>
            <item>8</item>
            <item>9</item>
            <item>10</item>
            <item>11</item>
        </string-array>
        <string-array name="listview_interpolator_entries">
            <item>@string/listview_off</item>
            <item>@string/listview_accelerate_interpolator</item>
            <item>@string/listview_decelerate_interpolator</item>
            <item>@string/listview_accelerate_decelerate_interpolator</item>
            <item>@string/listview_anticipate_interpolator</item>
            <item>@string/listview_overshoot_interpolator</item>
            <item>@string/listview_anticipate_overshoot_interpolator</item>
            <item>@string/listview_bounce_interpolator</item>
        </string-array>
        <string-array name="listview_interpolator_values">
            <item>0</item>
            <item>1</item>
            <item>2</item>
            <item>3</item>
            <item>4</item>
            <item>5</item>
            <item>6</item>
            <item>7</item>
        </string-array>
    [COLOR="Blue"]</resources>[/COLOR]

    2. Settings.apk\res\values\strings.xml
    add this to end of it before
    Code:
    </resources>
    so it will be like this
    Code:
    <string name="listview_animation_title">ListView animation</string>
        <string name="listview_off">Off</string>
        <string name="listview_wave_left">Wave (left)</string>
        <string name="listview_wave_right">Wave (right)</string>
        <string name="listview_alpha">Alpha</string>
        <string name="listview_scale">Scale</string>
        <string name="listview_stack_top">Stack (top)</string>
        <string name="listview_stack_bottom">Stack (bottom)</string>
        <string name="listview_unfold">Unfold</string>
        <string name="listview_fold">Fold</string>
        <string name="listview_translate_left">Translate (left)</string>
        <string name="listview_translate_right">Translate (right)</string>
        <string name="listview_rotate">Rotate</string>
        <string name="listview_interpolator_title">ListView interpolator</string>
        <string name="listview_accelerate_interpolator">Accelerate</string>
        <string name="listview_decelerate_interpolator">Decelerate</string>
        <string name="listview_accelerate_decelerate_interpolator">Accelerate decelerate</string>
        <string name="listview_anticipate_interpolator">Anticipate</string>
        <string name="listview_overshoot_interpolator">Overshoot</string>
        <string name="listview_anticipate_overshoot_interpolator">Anticipate overshoot</string>
        <string name="listview_bounce_interpolator">Bounce</string>
    [COLOR="Blue"]</resources>[/COLOR]

    3. Settings.apk\res\xml\system_ui_settings.xml
    add this line
    Code:
    <PreferenceScreen android:title="@string/listview_animation_title" android:key="listview_animation_settings" android:fragment="com.android.settings.adi.ListViewSettings" />
    this is the example :
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <PreferenceScreen android:title="@string/system_interface_title"
      xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
        <PreferenceScreen android:title="@string/status_bar_title" android:key="status_bar" android:fragment="com.android.settings.cyanogenmod.StatusBar" />
        <PreferenceScreen android:title="@string/quick_settings_panel_title" android:key="quick_settings_panel" android:fragment="com.android.settings.quicksettings.QuickSettings" />
        <PreferenceScreen android:title="@string/notification_drawer_title" android:key="notification_drawer" android:fragment="com.android.settings.cyanogenmod.NotificationDrawer" />
        <PreferenceCategory android:title="@string/power_menu_expanded_desktop" android:key="expanded_desktop_category">
            <ListPreference android:persistent="false" android:entries="@array/expanded_desktop_entries" android:title="@string/expanded_desktop_style" android:key="expanded_desktop" android:entryValues="@array/expanded_desktop_values" />
            <com.android.settings.cyanogenmod.SystemSettingCheckBoxPreference android:title="@string/expanded_desktop_system_bars_visibility" android:key="expanded_desktop_system_bars_visibility" android:summary="@string/expanded_desktop_system_bars_visibility_summary" android:defaultValue="false" />
        </PreferenceCategory>
        <Preference android:key="touch_screen_gesture_settings">
            <intent android:targetPackage="com.cyanogenmod.settings.device" android:action="com.cyanogenmod.action.LAUNCH_TOUCHSCREEN_GESTURE_SETTINGS" android:targetClass="com.cyanogenmod.settings.device.TouchscreenGestureSettings" />
        </Preference>
        [COLOR="Red"]<PreferenceScreen android:title="@string/listview_animation_title" android:key="listview_animation_settings" android:fragment="com.android.settings.adi.ListViewSettings" />[/COLOR]
        <PreferenceScreen android:title="@string/ram_bar" android:key="recents_panel" android:fragment="com.android.settings.adi.RecentsPanelSettings" />
        <PreferenceCategory android:title="@string/navigation_bar_category">
            <CheckBoxPreference android:title="@string/navbar_enable_bar" android:key="enable_nav_bar" android:summary="@string/navbar_enable_bar_summary" android:defaultValue="true" />
            <PreferenceScreen android:title="@string/navbar_style_dimen_title" android:key="navbar_dimen_settings" android:dependency="enable_nav_bar" android:fragment="com.android.settings.adi.NavbarDimenSettings" />
            <PreferenceScreen android:title="@string/navigation_bar_title" android:key="navigation_bar" android:dependency="enable_nav_bar" android:fragment="com.android.settings.cyanogenmod.NavBar" />
            <PreferenceScreen android:title="@string/navigation_ring_title" android:key="navigation_ring" android:dependency="enable_nav_bar" android:fragment="com.android.settings.cyanogenmod.NavRing" />
            <com.android.settings.cyanogenmod.SystemSettingCheckBoxPreference android:title="@string/navigation_bar_left_title" android:key="navigation_bar_left" android:summary="@string/navigation_bar_left_summary" android:dependency="enable_nav_bar" android:defaultValue="false" />
        </PreferenceCategory>
        <PreferenceCategory android:title="@string/hw_keys_title" android:key="hw_keys_on_navbar">
            <CheckBoxPreference android:title="@string/key_back_enabled" android:key="key_back_enabled" android:defaultValue="true" />
            <CheckBoxPreference android:title="@string/key_menu_enabled" android:key="key_menu_enabled" android:defaultValue="true" />
            <CheckBoxPreference android:title="@string/key_home_enabled" android:key="key_home_enabled" android:defaultValue="true" />
        </PreferenceCategory>
    </PreferenceScreen>

    4. Download attached file and merge to your decompiled Settings.apk, done and recompile it

    5. Decompile the newly Recompiled APK again
    - Next go to res/values/public.xml
    open it with Notepad++
    search for this line
    Code:
    <public type="xml" name="adi_mokee_listview_animations" id="[COLOR="Red"]??????????[/COLOR]" />
    and pay attention to this ??????????

    leave it, but keep it open

    6. from the second decompiled Settings.apk , go to Settings.apk\smali\com\android\settings\adi\ListViewSettings.smali
    search for this line
    Code:
    const v6, 0x7f050076
    change this ids value 0x7f050076 in the smali
    from here
    Code:
    <public type="xml" name="adi_mokee_listview_animations" id="[COLOR="Red"]??????????[/COLOR]" />

    7. Done and recompile your settings.apk
    23
    framework.jar

    1. Decompile your CM11 framework.jar
    go to framework.jar\classout\android\widget\
    remove all AbsListView.smali and its subs file
    replace them with attached file

    2. Decompile your CM11 framework-res.apk
    go to \framework-res.apk\res\values\public.xml
    search for this lines :

    Code:
    <public type="attr" name="absListViewStyle" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="style" name="Animation.TypingFilter" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="style" name="Animation.TypingFilterRestore" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="layout" name="typing_filter" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="drawable" name="list_selector_background" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="accelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="accelerate_decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="anticipate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="anticipate_overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    Code:
    <public type="anim" name="bounce_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    pay attention to the red highlight the last 5 digits of each line 0x010?????


    3. open AbsListView.smali file I gave
    and search for this
    - const v0, 0x101006a
    change the last 5 digits ids 1006a in the smali according to your own have in
    Code:
    <public type="attr" name="absListViewStyle" id="0x010[COLOR="Red"]?????[/COLOR]" />

    do it too to all of line below
    - const v2, 0x10301ed
    Code:
    <public type="style" name="Animation.TypingFilter" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10301ee
    Code:
    <public type="style" name="Animation.TypingFilterRestore" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v1, 0x10900b8
    Code:
    <public type="layout" name="typing_filter" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v1, 0x1080062
    Code:
    <public type="drawable" name="list_selector_background" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0005
    Code:
    <public type="anim" name="accelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0006
    Code:
    <public type="anim" name="decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0004
    Code:
    <public type="anim" name="accelerate_decelerate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0007
    Code:
    <public type="anim" name="anticipate_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0008
    Code:
    <public type="anim" name="overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a0009
    Code:
    <public type="anim" name="anticipate_overshoot_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    - const v2, 0x10a000a
    Code:
    <public type="anim" name="bounce_interpolator" id="0x010[COLOR="Red"]?????[/COLOR]" />

    4. Done and compile your framework.jar
    6
    Attention !

    if you guys, having such of problem when compiling , try to use this smali file http://xdaforums.com/showpost.php?p=51213812&postcount=14

    credit to @lacoursiere18

    don't forget to press his thanks button :)
    6
    With permission from @Adi Aisiteru Reborn..
    Here is all his smali that was moddified.. I made it so it compiles fine. You don't have to go through and remove any lines..
    YOU do NEED to add your correct public id's though!

    View attachment ListView_Settings.apk.zip

    View attachment ListView_framework.jar.out.zip

    Thanks again for this guide @Adi Aisiteru Reborn.. :good:
    5
    That's it, have a nice moding :)

    good luck

    Screenshot
    youtube : http://youtu.be/y_dhcNnueB8