[Guide]How to add Lollipop Easter Egg in your Rom for updated to v2(For GingerBread

Search This thread

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
BAI3Bj1.png

Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.


Requirements:

  • framework2.jar from your ROM (for kitkat roms)
    framework.jar for gb+ Rom
  • Know how to decompile APK
  • Easter Egg app attached below


Let's start


1. Decompile framework2.jar

2. Go to smali/com/android/internal/app
and open PlatLogoActivity.smali

3. Select all and replace it with this code:


Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"


# direct methods
.method public constructor <init>()V
    .registers 1

    .prologue
    .line 12
    invoke-direct {p0}, Landroid/app/Activity;-><init>()V

    return-void
.end method


# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
    .registers 7
    .parameter "savedInstanceState"

    .prologue
    .line 16
    invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V

    .line 18
    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.intent.action.MAIN"

    invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    .line 19
    .local v1, intent:Landroid/content/Intent;
    new-instance v2, Landroid/content/ComponentName;

const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"

const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"

    invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;

    .line 23
    :try_start_16
    invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
    :try_end_19
    .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d

    .line 39
    :goto_19
    invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V

    .line 41
    return-void

    .line 31
    :catch_1d
    move-exception v0

    .line 35
    .local v0, e:Landroid/content/ActivityNotFoundException;
    const-string v2, "First install that app Droidbuster told you to!"

    const/4 v3, 0x0

    invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

    move-result-object v2

    invoke-virtual {v2}, Landroid/widget/Toast;->show()V

    goto :goto_19
.end method
4. Recompile framework.jar
Push it into system/framework
Set correct permissions(rw-r--r--)



5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:



V1.2 Announced for GB

Change Log


  1. Force close fixed while holding long on Platlogo:fingers-crossed:
  2. size decreased
  3. Some layout problem fixed



V2 Announced for GB

Change Log



  • Finally Fixed Color Issue fixed
  • Multiple Density Support no need to download Different apks For different density
  • More Crispy.
  • Size Decreased




Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi

Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi


Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm



Download For GingerBread Platform Device V2 : Multiple Density Support




XDA:DevDB Information
Droidbuster lollipop Easter Egg, Theme for the All Devices

Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support

Download source code of Droidbuster_lollipop_Platelogo_3.0+ : https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_3.0-Support
Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support
Download source code of Droidbuster_lollipop_Platelogo_Finalversion 2.3+ : https://github.com/Droidbuster/Final-Version-Lollipop-Platelogo-GingerBread


Contributors
Droidbuster, m4rinko2, iamareebjamal, MuSaddiq

Version Information
Status: Stable
Current Stable Version: V2
Stable Release Date: 2015-05-16

Created 2015-01-25
Last Updated
2015-05-16
dROIDBUSTER%20TEAMXDA_zpsadkeveh8.png
 
Last edited:

dondiordnadon

Member
Oct 3, 2014
5
2
26
Quezon City, Philippines
Success!

Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
BAI3Bj1.png
Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.


Requirements:

  • framework.jar from your ROM
  • Know how to decompile APK
  • Easter Egg app attached below


Let's start


1. Decompile framework.jar

2. Go to smali/com/android/internal/app
and open PlatLogoActivity.smali

3. Select all and replace it with this code:


Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"


# direct methods
.method public constructor <init>()V
    .registers 1

    .prologue
    .line 12
    invoke-direct {p0}, Landroid/app/Activity;-><init>()V

    return-void
.end method


# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
    .registers 7
    .parameter "savedInstanceState"

    .prologue
    .line 16
    invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V

    .line 18
    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.intent.action.MAIN"

    invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V

    .line 19
    .local v1, intent:Landroid/content/Intent;
    new-instance v2, Landroid/content/ComponentName;

const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"

const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"

    invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;

    .line 23
    :try_start_16
    invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
    :try_end_19
    .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d

    .line 39
    :goto_19
    invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V

    .line 41
    return-void

    .line 31
    :catch_1d
    move-exception v0

    .line 35
    .local v0, e:Landroid/content/ActivityNotFoundException;
    const-string v2, "First install that app Droidbuster told you to!"

    const/4 v3, 0x0

    invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

    move-result-object v2

    invoke-virtual {v2}, Landroid/widget/Toast;->show()V

    goto :goto_19
.end method
4. Recompile framework.jar
Push it into system/framework
Set correct permissions(rw-r--r--)



5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:


V1.2 Announced for GB

Change Log


  1. Force close fixed while holding long on Platlogo:fingers-crossed:
  2. size decreased
  3. Some layout problem fixed



Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi

Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi


Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm

XDA:DevDB Information
Droidbuster lollipop Easter Egg, Theme for the All Devices



Contributors
Droidbuster, m4rinko2, iamareebjamal, MuSaddiq

Version Information
Status: Stable
Current Stable Version: 1.0
Stable Release Date: 2015-01-25

Created 2015-01-25
Last Updated 2015-01-25
wKCLYJh.png

thanks bro :D
 

Tech N You

Senior Member
Jul 10, 2014
648
631
Unknown Land
[GUIDE][NOOBS] Adding Lollipop Easter Egg for 4.4+ ROM (CM11, PA, PAC-MAN, AOSP etc)

Hello all,
I rewrite this tutorial for Android 4.4+
Note you must have a deodexed ROM for this if you try on stock ROM.
I also have attached a flashable zip in the end that'll work for all users on any android version. GB, JB or KK
Let's begin

GUIDE
Tools we need for this are Notepad++, Jar editing tool (don't just use any apktool or you'll end up with smaling error) and your correct dpi resolution apk
Download the tool to decompile from here http://www.mediafire.com/download/h...l+-+baksmali+-+Signer+v3+Mixed+by+ibanez7.zip (thanks to @ibanez7) or this tool from here http://www.mediafire.com/download/yx8lswms7ocd4oh/Apk+Changer+forked+by+gamzekal+11.3.2014.exe (thanks to @gamzekal)

1) Pull out framework2.jar from your device. Make sure you have necessary adb files or minimal-sdk package (adb files). If you dont have then download from below adb.zip and extract them to C:/adb(Recommended for ease of use) or any folder.
Now connect your device with PC make sure USB Debugging is on and accept any RSA Fingerprint prompt on your device.
Now hold right Shift and press right click. From the menu choose "Open command window here" and copy or type the following code.

adb pull framework2.jar /system/framework

You'll see a file named framework2.jar in the adb folder. Congrats you got your file! :D Now moving on.

2) Decompile using any of the given tools, here I explain using ibanez7 tool. Download the tool and extract it to C:\Users\here don't keep spaces between any folder/file name. For more accurate tutorial how to setup the tool go to this thread here http://xdaforums.com/showthread.php?t=2251719

- Copy framework2.jar file to apktool folder (make sure is the same folder).

- Open framework2.jar using Winrar or 7zip and extract classes.dex file (Recommended WinRAR)

- Drag & drop classes.dex to Quick-Baksmali.cmd (decompile process)

- Wait and you will see a folder with the name "classout"

- Now you can start editing smali file on classout folder (use Notepad++ only for editing it)

- Go to classout/smali/com/android/internal/app and search for PlatLogoActivity.smali, right click it and open it with Notepad++

- Easy just select all of the code and delete it and replace it with OP's code, Here

Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"


# direct methods
.method public constructor ()V
    .registers 1

    .prologue
    .line 12
    invoke-direct {p0}, Landroid/app/Activity;->()V

    return-void
.end method


# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
    .registers 7
    .parameter "savedInstanceState"

    .prologue
    .line 16
    invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V

    .line 18
    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.intent.action.MAIN"

    invoke-direct {v1, v2}, Landroid/content/Intent;->(Ljava/lang/String;)V

    .line 19
    .local v1, intent:Landroid/content/Intent;
    new-instance v2, Landroid/content/ComponentName;

const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"

const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"

    invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;->(Ljava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;

    .line 23
    :try_start_16
    invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
    :try_end_19
    .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d

    .line 39
    :goto_19
    invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V

    .line 41
    return-void

    .line 31
    :catch_1d
    move-exception v0

    .line 35
    .local v0, e:Landroid/content/ActivityNotFoundException;
    const-string v2, "First install that app Droidbuster told you to!"

    const/4 v3, 0x0

    invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

    move-result-object v2

    invoke-virtual {v2}, Landroid/widget/Toast;->show()V

    goto :goto_19
.end method
After pasting make sure that every line that begins with # Blabla has two lines gap before it and after the .end method line when next # Blabla line start it should have two line gap. For eg

Code:
# direct methods
.method public constructor ()V
- Code here
.end method
                                                                   1st line gap
                                                                   2nd line gap
# virtual methods
.method (rest code here)
-Code here
.end method
Hope you got my point. If you still dont get it the check the existing smali's in the folder for example.

-After editing the file save it and close Notepad++.

- After editing is complete, Drag & drop classout folder to Quick-Smali.cmd (recompile process)

- After recompile is complete, there will be a file with a name "new-classes.dex"

- Open framework2.jar using WinRAR or 7zip (Recommended WinRAR)

- Rename new-classes.dex to classes.dex, and Drag & drop to framework2.jar with normal compression and your done.


For noobs who have trouble with framework2.jar flashing I have attached flashable zip in the post below just make necessary changes and then open the flashable zip package attached below and add framework2.jar[For 4.4.x]/framework.jar[For 2.3-4.3] to framework folder with normal compression and flash the zip through custom recovery. Remember to make a nandroid backup before you flash anything and make sure to Wipe Cache and Dalvik cache before flashing
Next install the apk as suggested by OP and enjoy :)
All credits to @Droidbuster for this awesome guide and congrats to be on portal ;)
 

Attachments

  • Lollipop_Easter_Egg_Framework_Flashable.zip
    126.4 KB · Views: 259
  • adb.zip
    468.3 KB · Views: 101
Last edited:

corphish

Recognized Dev / Inactive Recognized Contributor
Apr 16, 2014
1,017
2,462
Durgapur

Tried your tutorial. returns this error, while recompiling :
Code:
framework.jar.out\smali\com\android\internal\app\PlatLogoActivity.smali[21,4] Er
ror for input '.parameter': Invalid directive
framework.jar.out\smali\com\android\internal\app\PlatLogoActivity.smali[21,15] m
ismatched input '"savedInstanceState"' expecting END_METHOD_DIRECTIVE
Exception in thread "main" brut.androlib.AndrolibException: Could not smali file
: com/android/internal/app/PlatLogoActivity.smali
        at brut.androlib.src.SmaliBuilder.buildFile(SmaliBuilder.java:72)
        at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:56)
        at brut.androlib.src.SmaliBuilder.build(SmaliBuilder.java:41)
        at brut.androlib.Androlib.buildSourcesSmali(Androlib.java:338)
        at brut.androlib.Androlib.buildSources(Androlib.java:299)
        at brut.androlib.Androlib.build(Androlib.java:285)
        at brut.androlib.Androlib.build(Androlib.java:258)
        at brut.apktool.Main.cmdBuild(Main.java:236)
        at brut.apktool.Main.main(Main.java:88)

Also, ICS + ldpi version is unavailable.
Hope you look in this, I am not expert in compiling/decompiling. I may be making some silly mistakes, because I get same error in other cases too.

EDIT : I tried initially with smali 2.0.3, after debugging issue, I tried smali 1.4.2, still same. Hope you help.
EDIT2 : Its for JB 4.1.2. Should I attach my framework.jar for your perusal and if you have time?

EDIT3 : Done! Used older apktool and got it working. Thanks a lot.
 
Last edited:
  • Like
Reactions: Droidbuster

Droidbuster

Senior Member
Jan 20, 2014
166
332
www.facebook.com
Hello all,
I rewrite this tutorial for Android 4.4+
Note you must have a deodexed ROM for this if you try on stock ROM.
I also have attached a flashable zip in the end that'll work for all users on any android version. GB, JB or KK
Let's begin

GUIDE
Tools we need for this are Notepad++, Jar editing tool (don't just use any apktool or you'll end up with smaling error) and your correct dpi resolution apk
Download the tool to decompile from here http://www.mediafire.com/download/h...l+-+baksmali+-+Signer+v3+Mixed+by+ibanez7.zip (thanks to @ibanez7) or this tool from here http://www.mediafire.com/download/yx8lswms7ocd4oh/Apk+Changer+forked+by+gamzekal+11.3.2014.exe (thanks to @gamzekal)

1) Pull out framework2.jar from your device. Make sure you have necessary adb files or minimal-sdk package (adb files). If you dont have then download from below adb.zip and extract them to C:/adb(Recommended for ease of use) or any folder.
Now connect your device with PC make sure USB Debugging is on and accept any RSA Fingerprint prompt on your device.
Now hold right Shift and press right click. From the menu choose "Open command window here" and copy or type the following code.

adb pull framework2.jar /system/framework

You'll see a file named framework2.jar in the adb folder. Congrats you got your file! :D Now moving on.

2) Decompile using any of the given tools, here I explain using ibanez7 tool. Download the tool and extract it to C:\Users\here don't keep spaces between any folder/file name. For more accurate tutorial how to setup the tool go to this thread here http://xdaforums.com/showthread.php?t=2251719

- Copy framework2.jar file to apktool folder (make sure is the same folder).

- Open framework2.jar using Winrar or 7zip and extract classes.dex file (Recommended WinRAR)

- Drag & drop classes.dex to Quick-Baksmali.cmd (decompile process)

- Wait and you will see a folder with the name "classout"

- Now you can start editing smali file on classout folder (use Notepad++ only for editing it)

- Go to classout/smali/com/android/internal/app and search for PlatLogoActivity.smali, right click it and open it with Notepad++

- Easy just select all of the code and delete it and replace it with OP's code, Here

Code:
.class public Lcom/android/internal/app/PlatLogoActivity;
.super Landroid/app/Activity;
.source "PlatLogoActivity.java"


# direct methods
.method public constructor ()V
    .registers 1

    .prologue
    .line 12
    invoke-direct {p0}, Landroid/app/Activity;->()V

    return-void
.end method


# virtual methods
.method protected onCreate(Landroid/os/Bundle;)V
    .registers 7
    .parameter "savedInstanceState"

    .prologue
    .line 16
    invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V

    .line 18
    new-instance v1, Landroid/content/Intent;

    const-string v2, "android.intent.action.MAIN"

    invoke-direct {v1, v2}, Landroid/content/Intent;->(Ljava/lang/String;)V

    .line 19
    .local v1, intent:Landroid/content/Intent;
    new-instance v2, Landroid/content/ComponentName;

const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"

const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"

    invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;->(Ljava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;

    .line 23
    :try_start_16
    invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
    :try_end_19
    .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d

    .line 39
    :goto_19
    invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V

    .line 41
    return-void

    .line 31
    :catch_1d
    move-exception v0

    .line 35
    .local v0, e:Landroid/content/ActivityNotFoundException;
    const-string v2, "First install that app Droidbuster told you to!"

    const/4 v3, 0x0

    invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;

    move-result-object v2

    invoke-virtual {v2}, Landroid/widget/Toast;->show()V

    goto :goto_19
.end method
After pasting make sure that every line that begins with # Blabla has two lines gap before it and after the .end method line when next # Blabla line start it should have two line gap. For eg

Code:
# direct methods
.method public constructor ()V
- Code here
.end method
                                                                   1st line gap
                                                                   2nd line gap
# virtual methods
.method (rest code here)
-Code here
.end method
Hope you got my point. If you still dont get it the check the existing smali's in the folder for example.

-After editing the file save it and close Notepad++.

- After editing is complete, Drag & drop classout folder to Quick-Smali.cmd (recompile process)

- After recompile is complete, there will be a file with a name "new-classes.dex"

- Open framework2.jar using WinRAR or 7zip (Recommended WinRAR)

- Rename new-classes.dex to classes.dex, and Drag & drop to framework2.jar with normal compression and your done.


For noobs who have trouble with framework2.jar flashing I have attached flashable zip in the post below just make necessary changes and then open the flashable zip package attached below and add framework2.jar[For 4.4.x]/framework.jar[For 2.3-4.3] to framework folder with normal compression and flash the zip through custom recovery. Remember to make a nandroid backup before you flash anything and make sure to Wipe Cache and Dalvik cache before flashing
Next install the apk as suggested by OP and enjoy :)
All credits to @Droidbuster for this awesome guide and congrats to be on portal ;)


thanks bro .you made my work to easy . and thanks for wishes for xda portal post but i missed that portal post
 
  • Like
Reactions: Tech N You

Top Liked Posts

  • There are no posts matching your filters.
  • 17
    Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
    BAI3Bj1.png

    Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.


    Requirements:

    • framework2.jar from your ROM (for kitkat roms)
      framework.jar for gb+ Rom
    • Know how to decompile APK
    • Easter Egg app attached below


    Let's start


    1. Decompile framework2.jar

    2. Go to smali/com/android/internal/app
    and open PlatLogoActivity.smali

    3. Select all and replace it with this code:


    Code:
    .class public Lcom/android/internal/app/PlatLogoActivity;
    .super Landroid/app/Activity;
    .source "PlatLogoActivity.java"
    
    
    # direct methods
    .method public constructor <init>()V
        .registers 1
    
        .prologue
        .line 12
        invoke-direct {p0}, Landroid/app/Activity;-><init>()V
    
        return-void
    .end method
    
    
    # virtual methods
    .method protected onCreate(Landroid/os/Bundle;)V
        .registers 7
        .parameter "savedInstanceState"
    
        .prologue
        .line 16
        invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
    
        .line 18
        new-instance v1, Landroid/content/Intent;
    
        const-string v2, "android.intent.action.MAIN"
    
        invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
    
        .line 19
        .local v1, intent:Landroid/content/Intent;
        new-instance v2, Landroid/content/ComponentName;
    
    const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
    
    const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
    
        invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
    
        invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
    
        .line 23
        :try_start_16
        invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
        :try_end_19
        .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
    
        .line 39
        :goto_19
        invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
    
        .line 41
        return-void
    
        .line 31
        :catch_1d
        move-exception v0
    
        .line 35
        .local v0, e:Landroid/content/ActivityNotFoundException;
        const-string v2, "First install that app Droidbuster told you to!"
    
        const/4 v3, 0x0
    
        invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
    
        move-result-object v2
    
        invoke-virtual {v2}, Landroid/widget/Toast;->show()V
    
        goto :goto_19
    .end method
    4. Recompile framework.jar
    Push it into system/framework
    Set correct permissions(rw-r--r--)



    5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:



    V1.2 Announced for GB

    Change Log


    1. Force close fixed while holding long on Platlogo:fingers-crossed:
    2. size decreased
    3. Some layout problem fixed



    V2 Announced for GB

    Change Log



    • Finally Fixed Color Issue fixed
    • Multiple Density Support no need to download Different apks For different density
    • More Crispy.
    • Size Decreased




    Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi

    Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi


    Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
    Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm



    Download For GingerBread Platform Device V2 : Multiple Density Support




    XDA:DevDB Information
    Droidbuster lollipop Easter Egg, Theme for the All Devices

    Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support

    Download source code of Droidbuster_lollipop_Platelogo_3.0+ : https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_3.0-Support
    Download source code of Droidbuster_lollipop_platelogo_2.3+ :https://github.com/Droidbuster/Droidbuster_lollipop_Platelogo_2.3-Support
    Download source code of Droidbuster_lollipop_Platelogo_Finalversion 2.3+ : https://github.com/Droidbuster/Final-Version-Lollipop-Platelogo-GingerBread


    Contributors
    Droidbuster, m4rinko2, iamareebjamal, MuSaddiq

    Version Information
    Status: Stable
    Current Stable Version: V2
    Stable Release Date: 2015-05-16

    Created 2015-01-25
    Last Updated
    2015-05-16
    dROIDBUSTER%20TEAMXDA_zpsadkeveh8.png
    2
    Wow! Thanks.
    But as I and many don't know to decompile ROM, can you make this a flashable zip? :)
    2
    [GUIDE][NOOBS] Adding Lollipop Easter Egg for 4.4+ ROM (CM11, PA, PAC-MAN, AOSP etc)

    Hello all,
    I rewrite this tutorial for Android 4.4+
    Note you must have a deodexed ROM for this if you try on stock ROM.
    I also have attached a flashable zip in the end that'll work for all users on any android version. GB, JB or KK
    Let's begin

    GUIDE
    Tools we need for this are Notepad++, Jar editing tool (don't just use any apktool or you'll end up with smaling error) and your correct dpi resolution apk
    Download the tool to decompile from here http://www.mediafire.com/download/h...l+-+baksmali+-+Signer+v3+Mixed+by+ibanez7.zip (thanks to @ibanez7) or this tool from here http://www.mediafire.com/download/yx8lswms7ocd4oh/Apk+Changer+forked+by+gamzekal+11.3.2014.exe (thanks to @gamzekal)

    1) Pull out framework2.jar from your device. Make sure you have necessary adb files or minimal-sdk package (adb files). If you dont have then download from below adb.zip and extract them to C:/adb(Recommended for ease of use) or any folder.
    Now connect your device with PC make sure USB Debugging is on and accept any RSA Fingerprint prompt on your device.
    Now hold right Shift and press right click. From the menu choose "Open command window here" and copy or type the following code.

    adb pull framework2.jar /system/framework

    You'll see a file named framework2.jar in the adb folder. Congrats you got your file! :D Now moving on.

    2) Decompile using any of the given tools, here I explain using ibanez7 tool. Download the tool and extract it to C:\Users\here don't keep spaces between any folder/file name. For more accurate tutorial how to setup the tool go to this thread here http://xdaforums.com/showthread.php?t=2251719

    - Copy framework2.jar file to apktool folder (make sure is the same folder).

    - Open framework2.jar using Winrar or 7zip and extract classes.dex file (Recommended WinRAR)

    - Drag & drop classes.dex to Quick-Baksmali.cmd (decompile process)

    - Wait and you will see a folder with the name "classout"

    - Now you can start editing smali file on classout folder (use Notepad++ only for editing it)

    - Go to classout/smali/com/android/internal/app and search for PlatLogoActivity.smali, right click it and open it with Notepad++

    - Easy just select all of the code and delete it and replace it with OP's code, Here

    Code:
    .class public Lcom/android/internal/app/PlatLogoActivity;
    .super Landroid/app/Activity;
    .source "PlatLogoActivity.java"
    
    
    # direct methods
    .method public constructor ()V
        .registers 1
    
        .prologue
        .line 12
        invoke-direct {p0}, Landroid/app/Activity;->()V
    
        return-void
    .end method
    
    
    # virtual methods
    .method protected onCreate(Landroid/os/Bundle;)V
        .registers 7
        .parameter "savedInstanceState"
    
        .prologue
        .line 16
        invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
    
        .line 18
        new-instance v1, Landroid/content/Intent;
    
        const-string v2, "android.intent.action.MAIN"
    
        invoke-direct {v1, v2}, Landroid/content/Intent;->(Ljava/lang/String;)V
    
        .line 19
        .local v1, intent:Landroid/content/Intent;
        new-instance v2, Landroid/content/ComponentName;
    
    const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
    
    const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
    
        invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;->(Ljava/lang/String;Ljava/lang/String;)V
    
        invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
    
        .line 23
        :try_start_16
        invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
        :try_end_19
        .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
    
        .line 39
        :goto_19
        invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
    
        .line 41
        return-void
    
        .line 31
        :catch_1d
        move-exception v0
    
        .line 35
        .local v0, e:Landroid/content/ActivityNotFoundException;
        const-string v2, "First install that app Droidbuster told you to!"
    
        const/4 v3, 0x0
    
        invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
    
        move-result-object v2
    
        invoke-virtual {v2}, Landroid/widget/Toast;->show()V
    
        goto :goto_19
    .end method
    After pasting make sure that every line that begins with # Blabla has two lines gap before it and after the .end method line when next # Blabla line start it should have two line gap. For eg

    Code:
    # direct methods
    .method public constructor ()V
    - Code here
    .end method
                                                                       1st line gap
                                                                       2nd line gap
    # virtual methods
    .method (rest code here)
    -Code here
    .end method
    Hope you got my point. If you still dont get it the check the existing smali's in the folder for example.

    -After editing the file save it and close Notepad++.

    - After editing is complete, Drag & drop classout folder to Quick-Smali.cmd (recompile process)

    - After recompile is complete, there will be a file with a name "new-classes.dex"

    - Open framework2.jar using WinRAR or 7zip (Recommended WinRAR)

    - Rename new-classes.dex to classes.dex, and Drag & drop to framework2.jar with normal compression and your done.


    For noobs who have trouble with framework2.jar flashing I have attached flashable zip in the post below just make necessary changes and then open the flashable zip package attached below and add framework2.jar[For 4.4.x]/framework.jar[For 2.3-4.3] to framework folder with normal compression and flash the zip through custom recovery. Remember to make a nandroid backup before you flash anything and make sure to Wipe Cache and Dalvik cache before flashing
    Next install the apk as suggested by OP and enjoy :)
    All credits to @Droidbuster for this awesome guide and congrats to be on portal ;)
    1
    Hey bro I want the modded flashable zip so if I flash the file I'll get the easter egg. :)
    Bro tell me on which rom you because but i can only give only for single time rest you have to do by own
    1
    Success!

    Hey Guys, I am back with another guide and this time i will show you how to add Lollipop Easter Egg in your ROM.
    BAI3Bj1.png
    Disclaimer: I and XDA are not responsible for the damage of your phone. Take necessary backup if you are indoubt.


    Requirements:

    • framework.jar from your ROM
    • Know how to decompile APK
    • Easter Egg app attached below


    Let's start


    1. Decompile framework.jar

    2. Go to smali/com/android/internal/app
    and open PlatLogoActivity.smali

    3. Select all and replace it with this code:


    Code:
    .class public Lcom/android/internal/app/PlatLogoActivity;
    .super Landroid/app/Activity;
    .source "PlatLogoActivity.java"
    
    
    # direct methods
    .method public constructor <init>()V
        .registers 1
    
        .prologue
        .line 12
        invoke-direct {p0}, Landroid/app/Activity;-><init>()V
    
        return-void
    .end method
    
    
    # virtual methods
    .method protected onCreate(Landroid/os/Bundle;)V
        .registers 7
        .parameter "savedInstanceState"
    
        .prologue
        .line 16
        invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V
    
        .line 18
        new-instance v1, Landroid/content/Intent;
    
        const-string v2, "android.intent.action.MAIN"
    
        invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
    
        .line 19
        .local v1, intent:Landroid/content/Intent;
        new-instance v2, Landroid/content/ComponentName;
    
    const-string v3, "com.Droidbuster.droidbuster_LollipopEasterEgg"
    
    const-string v4, "com.Droidbuster.droidbuster_LollipopEasterEgg.MainActivity"
    
        invoke-direct {v2, v3, v4}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
    
        invoke-virtual {v1, v2}, Landroid/content/Intent;->setComponent(Landroid/content/ComponentName;)Landroid/content/Intent;
    
        .line 23
        :try_start_16
        invoke-virtual {p0, v1}, Lcom/android/internal/app/PlatLogoActivity;->startActivity(Landroid/content/Intent;)V
        :try_end_19
        .catch Landroid/content/ActivityNotFoundException; {:try_start_16 .. :try_end_19} :catch_1d
    
        .line 39
        :goto_19
        invoke-virtual {p0}, Lcom/android/internal/app/PlatLogoActivity;->finish()V
    
        .line 41
        return-void
    
        .line 31
        :catch_1d
        move-exception v0
    
        .line 35
        .local v0, e:Landroid/content/ActivityNotFoundException;
        const-string v2, "First install that app Droidbuster told you to!"
    
        const/4 v3, 0x0
    
        invoke-static {p0, v2, v3}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast;
    
        move-result-object v2
    
        invoke-virtual {v2}, Landroid/widget/Toast;->show()V
    
        goto :goto_19
    .end method
    4. Recompile framework.jar
    Push it into system/framework
    Set correct permissions(rw-r--r--)



    5. Install this app by me, it Contain important the Easter Egg code and that smali above redirects to it:


    V1.2 Announced for GB

    Change Log


    1. Force close fixed while holding long on Platlogo:fingers-crossed:
    2. size decreased
    3. Some layout problem fixed



    Download For GingerBread Platform Device: Idpi , Mdpi , Hdpi , Xdpi

    Download For Ics+ Platform Device: Idpi , Mdpi , Hdpi , Xdpi


    Download For GingerBread Platform Device V1.2: Idpi , Mdpi , Hdpi , Xdpi
    Note = Random Color Change Feature not work on 2.3 platform But on ICs + device its working Like a charm

    XDA:DevDB Information
    Droidbuster lollipop Easter Egg, Theme for the All Devices



    Contributors
    Droidbuster, m4rinko2, iamareebjamal, MuSaddiq

    Version Information
    Status: Stable
    Current Stable Version: 1.0
    Stable Release Date: 2015-01-25

    Created 2015-01-25
    Last Updated 2015-01-25
    wKCLYJh.png

    thanks bro :D