[Sony Cross-Device General] slipsystem:
1.Framework-res.apk

REF: http://xdaforums.com/crossdevice-dev/sony/cm12-how-to-easily-port-xperia-lolipop-t3110734

Decompile Framework-res.apk

open \framework-res\AndroidManifest.xml

add this code above

<uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>

<permission android:name="com.sony.smallapp.permission.CONTROL_SMALLAPP" android:protectionLevel="system|signature"/>
<permission android:description="@string/permdesc_smallapp" android:label="@string/permlab_smallapp" android:name="com.sony.smallapp.permission.SMALLAPP" android:protectionLevel="dangerous"/>
<permission android:description="@string/permdesc_taskSwitcherPluginView" android:label="@string/permlab_taskSwitcherPluginView" android:name="com.sonymobile.permission.TASK_SWITCHER_PLUGIN_VIEW" android:protectionLevel="signatureOrSystem"/>
<permission android:name="com.sonymobile.permission.ACCESS_BEACON_MANAGER" android:protectionLevel="system|signature"/>

open \framework-res\res\values\strings.xml

and add these lines at the end before

</resources>

<string name="permlab_smallapp">Show small apps</string>
<string name="permdesc_smallapp">Allow the application to display small apps on top of other applications.</string>
<string name="permlab_taskSwitcherPluginView">Provide plugin-view to the task-switcher</string>
<string name="permdesc_taskSwitcherPluginView">Allows the application to provide a plugin-view to the task-switcher.</string>

Save your modifications and recompile it.

2.android.policy.jar

Decompile android.policy.jar

REF: http://xdaforums.com/crossdevice-dev/sony/cm12-how-to-easily-port-xperia-lolipop-t3110734

open \android.policy\com\android\internal\policy\impl\PhoneWindowManager.smali

find this "android.permission.SYSTEM_ALERT_WINDOW"

mine looked like this

const-string v0, "android.permission.SYSTEM_ALERT_WINDOW"

const/16 v3, 0x18

aput v3, p2, v2

goto :goto_2a

:sswitch_data_42
.sparse-switch
0x7d2 -> :sswitch_3b
0x7d3 -> :sswitch_3b
0x7d5 -> :sswitch_36
0x7d6 -> :sswitch_3b
0x7d7 -> :sswitch_3b
0x7da -> :sswitch_3b
0x7db -> :sswitch_2a
0x7dd -> :sswitch_2a
0x7e7 -> :sswitch_2a
0x7ee -> :sswitch_2a
0x7ef -> :sswitch_2a
0x7f0 -> :sswitch_2a
.end sparse-switch
.end method

so i modified like this

const-string v0, "android.permission.SYSTEM_ALERT_WINDOW"

const/16 v3, 0x18

aput v3, p2, v2

goto :goto_2a

[COLOR="red"]	:sswitch_2d
const-string v0, "com.sony.smallapp.permission.SMALLAPP"

goto :goto_2a[/COLOR]

:sswitch_data_42
.sparse-switch
0x7d2 -> :sswitch_3b
0x7d3 -> :sswitch_3b
0x7d5 -> :sswitch_36
0x7d6 -> :sswitch_3b
0x7d7 -> :sswitch_3b
0x7da -> :sswitch_3b
0x7db -> :sswitch_2a
0x7dd -> :sswitch_2a
0x7e7 -> :sswitch_2a
0x7ee -> :sswitch_2a
0x7ef -> :sswitch_2a
0x7f0 -> :sswitch_2a
[COLOR="Red"]	0xbb5 -> :sswitch_2d
0xbb6 -> :sswitch_2d[/COLOR]
.end sparse-switch
.end method

notice that the goto: after "com.sony.smallapp.permission.SMALLAPP" is the same goto as a the goto above :sswitch_2d

and that the :sswitch_2d was not in the origonal method if you already have a :sswitch_2d make it something else like :sswitch_3

Save your modifications and recompile it.

3.framework.jar

Decompile your framework.jar

REF: http://xdaforums.com/crossdevice-dev/sony/guide-how-to-port-featured-sony-t3208276

REF: http://xdaforums.com/crossdevice-dev/sony/cm12-how-to-easily-port-xperia-lolipop-t3110734

Open /Framework/android/telephony/TelephonyManager.smali

find this line .method public handlePinMmi and add this before

.method public getVoicemailString()Ljava/lang/String;
.registers 3

.prologue
.line 3592
iget-object v0, p0, Landroid/telephony/TelephonyManager;->mContext:Landroid/content/Context;

if-nez v0, :cond_6

const/4 v0, 0x0

.line 3593
:goto_5
return-object v0

:cond_6
iget-object v0, p0, Landroid/telephony/TelephonyManager;->mContext:Landroid/content/Context;

invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v0

const v1, 0x1040051

invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;

move-result-object v0

goto :goto_5
.end method

Open /Framework/android/telecom/Call.smali

find this method

.method public getDetails()Landroid/telecom/Call$Details;
.registers 2

iget-object v0, p0, Landroid/telecom/Call;->mDetails:Landroid/telecom/Call$Details;

return-object v0
.end method

and add this after if you cant find this code just add it to the end

.method public getNotificationCode()I
.registers 2

.prologue
.line 415
iget v0, p0, Landroid/telecom/Call;->mNotificationCode:I

return v0
.end method

.method public getNotificationType()I
.registers 2

.prologue
.line 410
iget v0, p0, Landroid/telecom/Call;->mNotificationType:I

return v0
.end method

find this

.field private final mListeners:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List",
"<",
"Landroid/telecom/Call$Listener;",
">;"
}
.end annotation
.end field

and add this after if you cant find this just add it under

# instance fields

.field private mNotificationCode:I

.field private mNotificationType:I

Open /Framework/android/telecom/Phone.smali

Add This Field at line 55

.field private mSomcInCallAdapterExtend:Landroid/telecom/SomcInCallAdapterExtend;

Add This method before .method public switchToOtherActiveSub

.method public final somcGetCommand(ILjava/lang/String;)Ljava/lang/String;
.registers 5
.parameter "commandId"
.parameter "option"

.prologue
.line 386
const/4 v0, 0x0

.line 387
.local v0, result:Ljava/lang/String;
iget-object v1, p0, Landroid/telecom/Phone;->mSomcInCallAdapterExtend:Landroid/telecom/SomcInCallAdapterExtend;

if-eqz v1, :cond_b

.line 388
iget-object v1, p0, Landroid/telecom/Phone;->mSomcInCallAdapterExtend:Landroid/telecom/SomcInCallAdapterExtend;

invoke-virtual {v1, p1, p2}, Landroid/telecom/SomcInCallAdapterExtend;->somcGetCommand(ILjava/lang/String;)Ljava/lang/String;

move-result-object v0

.line 389
:cond_b
return-object v0
.end method

Download the attached framework.zip and extract it.

copy all the files to your framework

recompile

4.services.jar

Follow this tutorial

http://xdaforums.com/showpost.php?p=62909773&postcount=4

5.Flashing

Download this

XPERIA MOD SLIPSYSTEM

open the zip using winrar

copy the files created to /system/framework folder by dragging and dropping