(Guide) how To port Ics Lockscreen To Gb Devices(Qualcom)

Search This thread

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
I am Suraj

again with New guide

How to port ICs lockscreen TO GB
SbaMNiE.png

Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device

THis is full explained Guide dont bore :p

So let start

We have to Follow 5 step for gettings ics lockscreen

first step here start

download this zip firststep.zip

1.copy res folder to your framework-res folder

2.
Open ids.xml under res/values foler and add these in last above

Code:
<item type="id" name="rl_multiWaveView">false</item>
    <item type="id" name="digital_clock">false</item>
    <item type="id" name="dateShow">false</item>
    <item type="id" name="iv_drop">false</item>
    <item type="id" name="ib_greenorange">false</item>
    <item type="id" name="rl_click_after">false</item>
    <item type="id" name="ib_photo">false</item>
    <item type="id" name="ib_greenorange_gone">false</item>
    <item type="id" name="ib_phone">false</item>
    <item type="id" name="tv_phone_unread">false</item>
    <item type="id" name="ib_sms">false</item>
    <item type="id" name="tv_sms_unread">false</item>
    <item type="id" name="ib_home">false</item>
    <item type="id" name="tv_remind">false</item>
    <item type="id" name="rl_multiWaveViewforsimulateics">false</item>
    <item type="id" name="iv_wave">false</item>
    <item type="id" name="iv_wave1">false</item>
    <item type="id" name="iv_wave2">false</item>
    <item type="id" name="iv_circle">false</item>

3.. compile the framework-res.apk

4.Now decompile your
framework-res.apk

Now open your public.xml
Leave it alone Now first step complete
:fingers-crossed:

TIME TO DO SECOND SEC0ND STEP

HERE WE START

dOWNLAOD THIS zIP.(SECOND STEP.ZIP)

thats our smalli editing part

1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)

NOW copy all smalli to your decompiled android.policy .jar folder one by one

Now open all files related to com\android\internal\policy\impl mine files

Search " 0x10" Copy the whole id .

Open my provided public.xml

Search for that id in my public.xml

Copy the text of that id.

Like if my Public id is "0x101000e"

but in you pubilc.xml it start from
"0x0101000e" means you have to add 0 before 1


in easy language(
When changing ids in the smali, make sure you remove one "0" after the x. For example, if your public.xml id is "0x010002b", make it "0x10002b". This is actually very important,)

its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop:cool:

NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART

SO HERE WE START


DOWNLOAD THIS ZIP (THIRD PART.ZIP)

thats our Main and difficult part

in your android.policy.jar decompiled folder
search for LockPatternKeyguardView.smalli
open it ..
then search for

.field private mScreenOn:Z
then below it add
.field private mStartForIntent:Landroid/content/Intent;
then search for
.method createLockScreen()Landroid/view/View;
then after

add this

.prologue
.line 660
const-string v3, "true"

const-string v2, "ro.origin.lockscreen"

.line 711
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "false"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_24

.line 712
new-instance v0, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;

iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;

iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;

iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;

iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;

iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;

invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V

.line 726
:goto_23
return-object v0

.line 718
:cond_24
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "simulateICS"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_44

.line 719
new-instance v0, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;

iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;

iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;

iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;

iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;

iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;

invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V

goto :goto_23

:cond_44
then search for

.method static synthetic access$100(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Z
.registers 2
.parameter "x0"

.prologue
.line 65
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsVerifyUnlockOnly:Z

return v0
.end method
then add this code under

.method static synthetic access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;
.registers 2
.parameter "x0"

.prologue
.line 65
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;

return-object v0
.end method

.method static synthetic access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/Intent;)Landroid/content/Intent;
.registers 2
.parameter "x0"
.parameter "x1"

.prologue
.line 65
iput-object p1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;

return-object p1
.end method
Now our third step is completed
---------------------------------------------------------------------------------

Now our forth step here start

1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)


search for LockPatternKeyguardView$1.smalli

Now open it

then search for
.method public goToUnlockScreen()V
then you will see this method
.method public goToUnlockScreen()V
.registers 3


to
#calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V
invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V

goto :goto_8
.end method



so delete this full method

and add this
.method public goToUnlockScreen()V
.registers 6

.prologue
const/4 v2, 0x1

const-string v4, "true"

const-string v3, "ro.origin.lockscreen"

.line 248
invoke-virtual {p0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->isSecure()Z

move-result v0

if-nez v0, :cond_3d

.line 249
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "false"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_1f

.line 250
invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V

.line 259
:goto_1e
return-void

.line 251
:cond_1f
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "simulateICS"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_33

.line 252
invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V

goto :goto_1e

.line 254
:cond_33
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

move-result-object v0

invoke-interface {v0, v2}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

goto :goto_1e

.line 257
:cond_3d
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

sget-object v1, Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;->UnlockScreen:Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;

#calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V
invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V

goto :goto_1e
.end method

Now search for

.method public isSecure()Z

then above it add this

.method public isGotoUnlockscreen(Landroid/content/Intent;)V
.registers 3
.parameter "intent"

.prologue
.line 398
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

#setter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0, p1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/Intent;)Landroid/content/Intent;

.line 399
return-void
.end method
========================================================================================================

Now search for
.method public keyguardDone(Z)V
replace full method with

.method public keyguardDone(Z)V
.registers 6
.parameter "authenticated"

.prologue
const-string v3, "true"

const-string v2, "ro.origin.lockscreen"

.line 334
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "false"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_3c

.line 335
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

move-result-object v0

invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

.line 336
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

move-result-object v0

if-eqz v0, :cond_3b

.line 337
sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;

const-string v1, "mStartForIntent"

invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V

.line 338
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;

move-result-object v0

iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

move-result-object v1

invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

.line 349
:cond_3b
:goto_3b
return-void

.line 340
:cond_3c
const-string v0, "ro.origin.lockscreen"

const-string v0, "true"

invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v0

const-string v1, "simulateICS"

invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

move-result v0

if-eqz v0, :cond_6d

.line 341
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

move-result-object v0

invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

.line 342
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

move-result-object v0

if-eqz v0, :cond_3b

.line 343
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;

move-result-object v0

iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

#getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

move-result-object v1

invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

goto :goto_3b

.line 346
:cond_6d
iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

move-result-object v0

invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

goto :goto_3b
.end method
--------------------------------------------------------------------------------------------------------------------------------------

Now save this Smalli


Now search for this

KeyguardScreenCallback.smalli

then search for

.method public abstract goToUnlockScreen()V
.end method
then add this below this code

.method public abstract isGotoUnlockscreen(Landroid/content/Intent;)V
.end method
Here our fourth step is completed


Now here we start our 5th step

downlaod this Zip (5th step)


Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)


Now open you build.prop


then search for


# ADDITIONAL_BUILD_PROPERTIES
then above it add

#add wanglu 20120811 start
#do not greenorging lockscreen
ro.origin.lockscreen=simulateICS
#add wanglu 20120811 end
I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)

PdXEDz5.jpg
BCHR2XE.png





Note:

1 .if you are using my work so plz give me credit . because i spend many night and days for getting success.

and

If you are porting this guide to To another inform me first . then i will create a seprate guide for your device.
by giving you credit and tester


 
Last edited:

sssomnath474

Senior Member
Mar 9, 2012
210
303
mars :P
www.facebook.com
I am Suraj

again with New guide

How to port ICs lockscreen TO GB
SbaMNiE.png

Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device

THis is full explained Guide dont bore :p

So let start

We have to Follow 5 step for gettings ics lockscreen

first step here start

download this zip firststep.zip

1.copy res folder to your framework-res folder

2.
Open ids.xml under res/values foler and add these in last above

Code:
<item type="id" name="rl_multiWaveView">false</item>
    <item type="id" name="digital_clock">false</item>
    <item type="id" name="dateShow">false</item>
    <item type="id" name="iv_drop">false</item>
    <item type="id" name="ib_greenorange">false</item>
    <item type="id" name="rl_click_after">false</item>
    <item type="id" name="ib_photo">false</item>
    <item type="id" name="ib_greenorange_gone">false</item>
    <item type="id" name="ib_phone">false</item>
    <item type="id" name="tv_phone_unread">false</item>
    <item type="id" name="ib_sms">false</item>
    <item type="id" name="tv_sms_unread">false</item>
    <item type="id" name="ib_home">false</item>
    <item type="id" name="tv_remind">false</item>
    <item type="id" name="rl_multiWaveViewforsimulateics">false</item>
    <item type="id" name="iv_wave">false</item>
    <item type="id" name="iv_wave1">false</item>
    <item type="id" name="iv_wave2">false</item>
    <item type="id" name="iv_circle">false</item>

3.. compile the framework-res.apk

4.Now decompile your
framework-res.apk

Now open your public.xml
Leave it alone Now first step complete
:fingers-crossed:

TIME TO DO SECOND SEC0ND STEP

HERE WE START

dOWNLAOD THIS zIP.(SECOND STEP.ZIP)

thats our smalli editing part

1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)

NOW copy all smalli to your decompiled android.policy .jar folder one by one

Now open all files related to com\android\internal\policy\impl mine files

Search " 0x10" Copy the whole id .

Open my provided public.xml

Search for that id in my public.xml

Copy the text of that id.

Like if my Public id is "0x101000e"

but in you pubilc.xml it start from
"0x0101000e" means you have to add 0 before 1

its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop:cool:

NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART

SO HERE WE START


DOWNLOAD THIS ZIP (THIRD PART.ZIP)

thats our Main and difficult part

in your android.policy.jar decompiled folder
search for LockPatternKeyguardView.smalli
open it ..
then search for

then below it add
then search for
then after

add this

then search for

then add this code under

Now our third step is completed
---------------------------------------------------------------------------------

Now our forth step here start

1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)


search for LockPatternKeyguardView$1.smalli

Now open it

then search for
then you will see this method



so delete this full method

and add this

Now search for


then above it add this

========================================================================================================

Now search for
replace full method with

--------------------------------------------------------------------------------------------------------------------------------------

Now save this Smalli


Now search for this

KeyguardScreenCallback.smalli

then search for

then add this below this code

Here our fourth step is completed


Now here we start our 5th step

downlaod this Zip (5th step)


Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)


Now open you build.prop


then search for


then above it add

I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)

PdXEDz5.jpg
BCHR2XE.png



okay just tried replace every public id of our framework-res.apk to the smali files u given in step2 and copied everything into phone with permission rw-r-r but when restarted there was no lock screen
 

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
Lockscreen working

okay just tried replace every public id of our framework-res.apk to the smali files u given in step2 and copied everything into phone with permission rw-r-r but when restarted there was no lock screen

bro you need to complete all step after that you will get lockscreen by completing just step 2 you can get

you need first to add intergnate that lockscreen in LockPatternKeyguardView.smalli

then you have to put that all fonts in you system then edit build,prop then it will activiate
 
  • Like
Reactions: kiie

markmellarpes

Senior Member
Aug 2, 2012
906
524
Taguig
hi sir i have a question about the ids :) do we need to add 0 or remove 0? because in my ids they already have 0 but in your smalis id dont have 0 after x.. example ur ids are 0x1 and my ids is already 0x01..so i dont need to add 0 anymore because my ids already has 0 so i just need to replace all ur id :)

i got this error while recompilingandroid.policy.jar :)
error.JPG
 

Attachments

  • error.JPG
    error.JPG
    96.9 KB · Views: 242
Last edited:

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
hi sir i have a question about the ids :) do we need to add 0 or remove 0? because in my ids they already have 0 but in your smalis id dont have 0 after x.. example ur ids are 0x1 and my ids is already 0x01..so i dont need to add 0 anymore because my ids already has 0 so i just need to replace all ur id :)

i got this error while recompilingandroid.policy.jar :)
error.JPG


you need to remove zero
 

GSculerlor

Senior Member
Oct 23, 2013
441
89
Malang
Hi, my device getting bootloop i think there was a problem with my smali editing. Can you help me ? My device Galaxy Y GT-S5360
 

Giridharbavana

Senior Member
Apr 13, 2013
52
5
Kovvur
[Help]

welcome bro on which device you ported this?

mention here name i will add in working device list:fingers-crossed:
Can u give the instructions to port OEM specific apps to all other devices....like porting Calendar app from galaxy s4 to all other devices,so th.at it can be installed on every android device
Plz help me, I have been searchig 4 it for a very long time.
 

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
Can u give the instructions to port OEM specific apps to all other devices....like porting Calendar app from galaxy s4 to all other devices,so th.at it can be installed on every android device
Plz help me, I have been searchig 4 it for a very long time.

bro you can port directly . if you know java and c++ then you have to build that same thing from scratch . like you call that apps lke thirdparty. ;)

porting apps ics to ics platform is easy. like you can port any tw app to simple non tw device
 

tjbearX

Senior Member
Dec 10, 2012
408
399
Balanga, Bataan Philippines
Can you help me

here is your android.policy.jar

and Now just skip that android.policy part;)

SC20140426-163431.png


hey guys iam a Galaxy Y Duos GT-6102 user i followed all of the guides and it successfully showed up but when i unlock it my phone keep on rebooting..
can someone help me about this.. i attached my files here can you guys check it for me :crying::crying::crying: i dont know whats wrong with it.

i already checked the IDs and its all ok , idont know about the files under the third step if i have done it correctly.. please help me guys.. i have uploaded the files just find out why it is not unlocking even if the camera on lockscreen.. thanks in advance guys.
 

Attachments

  • SC20140426-163431.png
    SC20140426-163431.png
    20.9 KB · Views: 94
  • NeedToFix.zip
    283.1 KB · Views: 38
Last edited:

radzi0123

Member
Apr 21, 2014
7
0
Thanks bro. But i have one question. How can i do transparent lockscreen (Without wallpaper) ?
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 14
    I am Suraj

    again with New guide

    How to port ICs lockscreen TO GB
    SbaMNiE.png

    Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device

    THis is full explained Guide dont bore :p

    So let start

    We have to Follow 5 step for gettings ics lockscreen

    first step here start

    download this zip firststep.zip

    1.copy res folder to your framework-res folder

    2.
    Open ids.xml under res/values foler and add these in last above

    Code:
    <item type="id" name="rl_multiWaveView">false</item>
        <item type="id" name="digital_clock">false</item>
        <item type="id" name="dateShow">false</item>
        <item type="id" name="iv_drop">false</item>
        <item type="id" name="ib_greenorange">false</item>
        <item type="id" name="rl_click_after">false</item>
        <item type="id" name="ib_photo">false</item>
        <item type="id" name="ib_greenorange_gone">false</item>
        <item type="id" name="ib_phone">false</item>
        <item type="id" name="tv_phone_unread">false</item>
        <item type="id" name="ib_sms">false</item>
        <item type="id" name="tv_sms_unread">false</item>
        <item type="id" name="ib_home">false</item>
        <item type="id" name="tv_remind">false</item>
        <item type="id" name="rl_multiWaveViewforsimulateics">false</item>
        <item type="id" name="iv_wave">false</item>
        <item type="id" name="iv_wave1">false</item>
        <item type="id" name="iv_wave2">false</item>
        <item type="id" name="iv_circle">false</item>

    3.. compile the framework-res.apk

    4.Now decompile your
    framework-res.apk

    Now open your public.xml
    Leave it alone Now first step complete
    :fingers-crossed:

    TIME TO DO SECOND SEC0ND STEP

    HERE WE START

    dOWNLAOD THIS zIP.(SECOND STEP.ZIP)

    thats our smalli editing part

    1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)

    NOW copy all smalli to your decompiled android.policy .jar folder one by one

    Now open all files related to com\android\internal\policy\impl mine files

    Search " 0x10" Copy the whole id .

    Open my provided public.xml

    Search for that id in my public.xml

    Copy the text of that id.

    Like if my Public id is "0x101000e"

    but in you pubilc.xml it start from
    "0x0101000e" means you have to add 0 before 1


    in easy language(
    When changing ids in the smali, make sure you remove one "0" after the x. For example, if your public.xml id is "0x010002b", make it "0x10002b". This is actually very important,)

    its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop:cool:

    NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART

    SO HERE WE START


    DOWNLOAD THIS ZIP (THIRD PART.ZIP)

    thats our Main and difficult part

    in your android.policy.jar decompiled folder
    search for LockPatternKeyguardView.smalli
    open it ..
    then search for

    .field private mScreenOn:Z
    then below it add
    .field private mStartForIntent:Landroid/content/Intent;
    then search for
    .method createLockScreen()Landroid/view/View;
    then after

    add this

    .prologue
    .line 660
    const-string v3, "true"

    const-string v2, "ro.origin.lockscreen"

    .line 711
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "false"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_24

    .line 712
    new-instance v0, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;

    iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;

    iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;

    iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;

    iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;

    invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/GreenOrange_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V

    .line 726
    :goto_23
    return-object v0

    .line 718
    :cond_24
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "simulateICS"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_44

    .line 719
    new-instance v0, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;

    iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mConfiguration:Landroid/content/res/Configuration;

    iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;

    iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;

    iget-object v5, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;

    invoke-direct/range {v0 .. v5}, Lcom/android/internal/policy/impl/SimulateICS_LockScreen;-><init>(Landroid/content/Context;Landroid/content/res/Configuration;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V

    goto :goto_23

    :cond_44
    then search for

    .method static synthetic access$100(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Z
    .registers 2
    .parameter "x0"

    .prologue
    .line 65
    iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mIsVerifyUnlockOnly:Z

    return v0
    .end method
    then add this code under

    .method static synthetic access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;
    .registers 2
    .parameter "x0"

    .prologue
    .line 65
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;

    return-object v0
    .end method

    .method static synthetic access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/Intent;)Landroid/content/Intent;
    .registers 2
    .parameter "x0"
    .parameter "x1"

    .prologue
    .line 65
    iput-object p1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;

    return-object p1
    .end method
    Now our third step is completed
    ---------------------------------------------------------------------------------

    Now our forth step here start

    1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)


    search for LockPatternKeyguardView$1.smalli

    Now open it

    then search for
    .method public goToUnlockScreen()V
    then you will see this method
    .method public goToUnlockScreen()V
    .registers 3


    to
    #calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V
    invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V

    goto :goto_8
    .end method



    so delete this full method

    and add this
    .method public goToUnlockScreen()V
    .registers 6

    .prologue
    const/4 v2, 0x1

    const-string v4, "true"

    const-string v3, "ro.origin.lockscreen"

    .line 248
    invoke-virtual {p0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->isSecure()Z

    move-result v0

    if-nez v0, :cond_3d

    .line 249
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "false"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_1f

    .line 250
    invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V

    .line 259
    :goto_1e
    return-void

    .line 251
    :cond_1f
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v3, v4}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "simulateICS"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_33

    .line 252
    invoke-virtual {p0, v2}, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->keyguardDone(Z)V

    goto :goto_1e

    .line 254
    :cond_33
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

    move-result-object v0

    invoke-interface {v0, v2}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

    goto :goto_1e

    .line 257
    :cond_3d
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    sget-object v1, Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;->UnlockScreen:Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;

    #calls: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->updateScreen(Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V
    invoke-static {v0, v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$200(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Lcom/android/internal/policy/impl/LockPatternKeyguardView$Mode;)V

    goto :goto_1e
    .end method

    Now search for

    .method public isSecure()Z

    then above it add this

    .method public isGotoUnlockscreen(Landroid/content/Intent;)V
    .registers 3
    .parameter "intent"

    .prologue
    .line 398
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    #setter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
    invoke-static {v0, p1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1002(Lcom/android/internal/policy/impl/LockPatternKeyguardView;Landroid/content/Intent;)Landroid/content/Intent;

    .line 399
    return-void
    .end method
    ========================================================================================================

    Now search for
    .method public keyguardDone(Z)V
    replace full method with

    .method public keyguardDone(Z)V
    .registers 6
    .parameter "authenticated"

    .prologue
    const-string v3, "true"

    const-string v2, "ro.origin.lockscreen"

    .line 334
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "false"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_3c

    .line 335
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

    move-result-object v0

    invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

    .line 336
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    #getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
    invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

    move-result-object v0

    if-eqz v0, :cond_3b

    .line 337
    sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream;

    const-string v1, "mStartForIntent"

    invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V

    .line 338
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;

    move-result-object v0

    iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    #getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
    invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

    .line 349
    :cond_3b
    :goto_3b
    return-void

    .line 340
    :cond_3c
    const-string v0, "ro.origin.lockscreen"

    const-string v0, "true"

    invoke-static {v2, v3}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const-string v1, "simulateICS"

    invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_6d

    .line 341
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

    move-result-object v0

    invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

    .line 342
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    #getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
    invoke-static {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

    move-result-object v0

    if-eqz v0, :cond_3b

    .line 343
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getContext()Landroid/content/Context;

    move-result-object v0

    iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    #getter for: Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mStartForIntent:Landroid/content/Intent;
    invoke-static {v1}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->access$1000(Lcom/android/internal/policy/impl/LockPatternKeyguardView;)Landroid/content/Intent;

    move-result-object v1

    invoke-virtual {v0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

    goto :goto_3b

    .line 346
    :cond_6d
    iget-object v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView$1;->this$0:Lcom/android/internal/policy/impl/LockPatternKeyguardView;

    invoke-virtual {v0}, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->getCallback()Lcom/android/internal/policy/impl/KeyguardViewCallback;

    move-result-object v0

    invoke-interface {v0, p1}, Lcom/android/internal/policy/impl/KeyguardViewCallback;->keyguardDone(Z)V

    goto :goto_3b
    .end method
    --------------------------------------------------------------------------------------------------------------------------------------

    Now save this Smalli


    Now search for this

    KeyguardScreenCallback.smalli

    then search for

    .method public abstract goToUnlockScreen()V
    .end method
    then add this below this code

    .method public abstract isGotoUnlockscreen(Landroid/content/Intent;)V
    .end method
    Here our fourth step is completed


    Now here we start our 5th step

    downlaod this Zip (5th step)


    Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)


    Now open you build.prop


    then search for


    # ADDITIONAL_BUILD_PROPERTIES
    then above it add

    #add wanglu 20120811 start
    #do not greenorging lockscreen
    ro.origin.lockscreen=simulateICS
    #add wanglu 20120811 end
    I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)

    PdXEDz5.jpg
    BCHR2XE.png





    Note:

    1 .if you are using my work so plz give me credit . because i spend many night and days for getting success.

    and

    If you are porting this guide to To another inform me first . then i will create a seprate guide for your device.
    by giving you credit and tester


    4
    I am Suraj

    again with New guide

    How to port ICs lockscreen TO GB
    SbaMNiE.png

    Tested On micromax a57 a54 Both are qualcom so cant say about samsung and other Mediatech or mtk device

    THis is full explained Guide dont bore :p

    So let start

    We have to Follow 5 step for gettings ics lockscreen

    first step here start

    download this zip firststep.zip

    1.copy res folder to your framework-res folder

    2.
    Open ids.xml under res/values foler and add these in last above

    Code:
    <item type="id" name="rl_multiWaveView">false</item>
        <item type="id" name="digital_clock">false</item>
        <item type="id" name="dateShow">false</item>
        <item type="id" name="iv_drop">false</item>
        <item type="id" name="ib_greenorange">false</item>
        <item type="id" name="rl_click_after">false</item>
        <item type="id" name="ib_photo">false</item>
        <item type="id" name="ib_greenorange_gone">false</item>
        <item type="id" name="ib_phone">false</item>
        <item type="id" name="tv_phone_unread">false</item>
        <item type="id" name="ib_sms">false</item>
        <item type="id" name="tv_sms_unread">false</item>
        <item type="id" name="ib_home">false</item>
        <item type="id" name="tv_remind">false</item>
        <item type="id" name="rl_multiWaveViewforsimulateics">false</item>
        <item type="id" name="iv_wave">false</item>
        <item type="id" name="iv_wave1">false</item>
        <item type="id" name="iv_wave2">false</item>
        <item type="id" name="iv_circle">false</item>

    3.. compile the framework-res.apk

    4.Now decompile your
    framework-res.apk

    Now open your public.xml
    Leave it alone Now first step complete
    :fingers-crossed:

    TIME TO DO SECOND SEC0ND STEP

    HERE WE START

    dOWNLAOD THIS zIP.(SECOND STEP.ZIP)

    thats our smalli editing part

    1.Now decompile your android.policy.jar ( I GIVEN TOOL INSIDE)

    NOW copy all smalli to your decompiled android.policy .jar folder one by one

    Now open all files related to com\android\internal\policy\impl mine files

    Search " 0x10" Copy the whole id .

    Open my provided public.xml

    Search for that id in my public.xml

    Copy the text of that id.

    Like if my Public id is "0x101000e"

    but in you pubilc.xml it start from
    "0x0101000e" means you have to add 0 before 1

    its a boring part naa but its too much neccesarry too soo better you Do it carefully slow slow dont do fast other it will create reason for bootloop:cool:

    NOW OUR 2ND PART IS COMPLETE nOW TIME TO START 3 PART

    SO HERE WE START


    DOWNLOAD THIS ZIP (THIRD PART.ZIP)

    thats our Main and difficult part

    in your android.policy.jar decompiled folder
    search for LockPatternKeyguardView.smalli
    open it ..
    then search for

    then below it add
    then search for
    then after

    add this

    then search for

    then add this code under

    Now our third step is completed
    ---------------------------------------------------------------------------------

    Now our forth step here start

    1. go to com\android\internal\policy\impl ( your decompiled android.policy.jar)


    search for LockPatternKeyguardView$1.smalli

    Now open it

    then search for
    then you will see this method



    so delete this full method

    and add this

    Now search for


    then above it add this

    ========================================================================================================

    Now search for
    replace full method with

    --------------------------------------------------------------------------------------------------------------------------------------

    Now save this Smalli


    Now search for this

    KeyguardScreenCallback.smalli

    then search for

    then add this below this code

    Here our fourth step is completed


    Now here we start our 5th step

    downlaod this Zip (5th step)


    Now open zip copy this fonts to your system/fonts (necceassry step other wise you will face bootloop)


    Now open you build.prop


    then search for


    then above it add

    I provided this flashable zip you can use it for your Flashing lockscreen (FLASHABLE.ZIP)

    PdXEDz5.jpg
    BCHR2XE.png



    okay just tried replace every public id of our framework-res.apk to the smali files u given in step2 and copied everything into phone with permission rw-r-r but when restarted there was no lock screen
    3
    lockscreen for galaxy y

    here is your android.policy.jar

    and Now just skip that android.policy part;)
    2
    nice keep it up :)

    thanks it worked on micromax a65..giving u some hdpi sources better to add in op
    dont worry about screen shot it is problem of application itself
    2
    just one wait for one day i will port

    but i can build for only one time ;)