DELTALABSITE https://www.deltalabsite.com/2016/02/saljuutilssmali-code.html

SaljuUtils.smali [CODE]

Ini merupakan kode smali untuk yang menerapkan Animasi.
Kode berikut ada penambahan checkbox untuk menonaktifkan Rotasi, sehingga untuk animasi Hujan tidak muter-muter lagi..

A. Ganti isi dari SaljuUtils.smali dengan kode di bawah ini :

.class public Lid/dhianrusdhiana/SaljuUtils;
.super Ljava/lang/Object;
.source "SaljuUtils.java"


# static fields
.field private static floatSpeed:F

.field private static intensitas:I

.field private static speed:I

.field private static str:Z


# direct methods
.method static constructor <clinit>()V
.locals 1

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

sput v0, Lid/dhianrusdhiana/SaljuUtils;->floatSpeed:F

return-void
.end method

.method public constructor <init>()V
.locals 1

.prologue
.line 50
invoke-direct {p0}, Ljava/lang/Object;-><init>()V

.line 51
move-object v0, p0

.line 52
.local v0, "utils":Lid/dhianrusdhiana/SaljuUtils;
return-void
.end method

.method public static getAnimatDrawable(Landroid/content/Context;)I
.locals 1
.param p0, "context" # Landroid/content/Context;

.prologue
.line 55
invoke-static {p0}, Lid/dhianrusdhiana/SaljuUtils;->setAnimationImage(Landroid/content/Context;)I

move-result v0

return v0
.end method

.method public static salju(Landroid/app/Activity;)V
.locals 4
.param p0, "activity" # Landroid/app/Activity;

.prologue
.line 18
move-object v0, p0

.line 19
.local v0, "context":Landroid/content/Context;
invoke-static {v0}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences;

move-result-object v1

.line 20
.local v1, "defaultSharedPreferences":Landroid/content/SharedPreferences;
const-string v2, "salju"

const/4 v3, 0x1

invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z

move-result v2

sput-boolean v2, Lid/dhianrusdhiana/SaljuUtils;->str:Z

.line 21
const-string v2, "intensitas"

const/4 v3, 0x5

invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I

move-result v2

sput v2, Lid/dhianrusdhiana/SaljuUtils;->intensitas:I

.line 22
const-string v2, "speed"

const/16 v3, 0x10

invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getInt(Ljava/lang/String;I)I

move-result v2

sput v2, Lid/dhianrusdhiana/SaljuUtils;->speed:I

.line 23
const v2, 0x358637bd

sget v3, Lid/dhianrusdhiana/SaljuUtils;->speed:I

int-to-float v3, v3

mul-float/2addr v2, v3

sput v2, Lid/dhianrusdhiana/SaljuUtils;->floatSpeed:F

.line 24
sget-boolean v2, Lid/dhianrusdhiana/SaljuUtils;->str:Z

invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

move-result-object v2

invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z

move-result v2

if-eqz v2, :cond_0

.line 25
sget v2, Lid/dhianrusdhiana/SaljuUtils;->intensitas:I

sget v3, Lid/dhianrusdhiana/SaljuUtils;->floatSpeed:F

invoke-static {p0, v2, v3}, Lid/dhianrusdhiana/SaljuUtils;->start(Landroid/app/Activity;IF)V

.line 27
:cond_0
return-void
.end method

.method public static setAnimationImage(Landroid/content/Context;)I
.locals 6
.param p0, "context" # Landroid/content/Context;

.prologue
.line 59
invoke-static {p0}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences;

move-result-object v1

.line 60
.local v1, "preferences":Landroid/content/SharedPreferences;
const-string v2, "animation_drawable"

const-string v3, "0"

invoke-interface {v1, v2, v3}, Landroid/content/SharedPreferences;->getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

move-result-object v2

invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I

move-result v0

.line 62
.local v0, "n":I
if-nez v0, :cond_1

.line 63
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "snow"

const-string v4, "drawable"

invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

.line 81
.end local v0 # "n":I
:cond_0
:goto_0
return v0

.line 66
.restart local v0 # "n":I
:cond_1
const/4 v2, 0x1

if-ne v0, v2, :cond_2

.line 67
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "daun"

const-string v4, "drawable"

invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

goto :goto_0

.line 70
:cond_2
const/4 v2, 0x2

if-ne v0, v2, :cond_3

.line 71
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "bunga"

const-string v4, "drawable"

invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

goto :goto_0

.line 74
:cond_3
const/4 v2, 0x3

if-ne v0, v2, :cond_4

.line 75
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "hujan"

const-string v4, "drawable"

invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

goto :goto_0

.line 78
:cond_4
const/4 v2, 0x4

if-ne v0, v2, :cond_0

.line 79
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

move-result-object v2

const-string v3, "entah"

const-string v4, "drawable"

invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

move-result-object v5

invoke-virtual {v2, v3, v4, v5}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

move-result v0

goto :goto_0
.end method

.method public static setRotation(Landroid/content/Context;)I
.locals 3
.param p0, "context" # Landroid/content/Context;

.prologue
const/4 v1, 0x0

.line 42
invoke-static {p0}, Landroid/preference/PreferenceManager;->getDefaultSharedPreferences(Landroid/content/Context;)Landroid/content/SharedPreferences;

move-result-object v0

.line 43
.local v0, "preferences":Landroid/content/SharedPreferences;
const-string v2, "rotation"

invoke-interface {v0, v2, v1}, Landroid/content/SharedPreferences;->getBoolean(Ljava/lang/String;Z)Z

move-result v2

invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

move-result-object v2

invoke-virtual {v2}, Ljava/lang/Boolean;->booleanValue()Z

move-result v2

if-nez v2, :cond_0

.line 46
:goto_0
return v1

:cond_0
const/16 v1, 0x90

goto :goto_0
.end method

.method private static start(Landroid/app/Activity;IF)V
.locals 13
.param p0, "activity" # Landroid/app/Activity;
.param p1, "i" # I
.param p2, "f" # F

.prologue
const/16 v12, -0xc8

const/high16 v11, 0x40000000

const/high16 v10, 0x3f000000

const v9, 0x3dcccccd

const/4 v8, 0x0

.line 31
move-object v1, p0

.line 32
.local v1, "activity2":Landroid/app/Activity;
move v7, p1

.line 33
.local v7, "i2":I
move v6, p2

.line 35
.local v6, "f2":F
new-instance v0, Lcom/plattysoft/leonids/ParticleSystem;

const/16 v2, 0x78

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->getAnimatDrawable(Landroid/content/Context;)I

move-result v3

const-wide/16 v4, 0x2710

invoke-direct/range {v0 .. v5}, Lcom/plattysoft/leonids/ParticleSystem;-><init>(Landroid/app/Activity;IIJ)V

const/16 v2, 0xb4

const/4 v3, 0x0

invoke-virtual {v0, v8, v9, v2, v3}, Lcom/plattysoft/leonids/ParticleSystem;->setSpeedModuleAndAngleRange(FFII)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-virtual {v0, v10, v11}, Lcom/plattysoft/leonids/ParticleSystem;->setScaleRange(FF)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->setRotation(Landroid/content/Context;)I

move-result v2

int-to-float v2, v2

invoke-virtual {v0, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setRotationSpeed(F)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0x5a

invoke-virtual {v0, v6, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setAcceleration(FI)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0xc8

invoke-virtual {v0, v2, v12, v7}, Lcom/plattysoft/leonids/ParticleSystem;->emit(III)V

.line 36
new-instance v0, Lcom/plattysoft/leonids/ParticleSystem;

const/16 v2, 0x78

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->getAnimatDrawable(Landroid/content/Context;)I

move-result v3

const-wide/16 v4, 0x2710

invoke-direct/range {v0 .. v5}, Lcom/plattysoft/leonids/ParticleSystem;-><init>(Landroid/app/Activity;IIJ)V

const/16 v2, 0xb4

const/4 v3, 0x0

invoke-virtual {v0, v8, v9, v2, v3}, Lcom/plattysoft/leonids/ParticleSystem;->setSpeedModuleAndAngleRange(FFII)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-virtual {v0, v10, v11}, Lcom/plattysoft/leonids/ParticleSystem;->setScaleRange(FF)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->setRotation(Landroid/content/Context;)I

move-result v2

int-to-float v2, v2

invoke-virtual {v0, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setRotationSpeed(F)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0x5a

invoke-virtual {v0, v6, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setAcceleration(FI)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0x64

invoke-virtual {v0, v2, v12, v7}, Lcom/plattysoft/leonids/ParticleSystem;->emit(III)V

.line 37
new-instance v0, Lcom/plattysoft/leonids/ParticleSystem;

const/16 v2, 0x78

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->getAnimatDrawable(Landroid/content/Context;)I

move-result v3

const-wide/16 v4, 0x2710

invoke-direct/range {v0 .. v5}, Lcom/plattysoft/leonids/ParticleSystem;-><init>(Landroid/app/Activity;IIJ)V

const/16 v2, 0xb4

const/4 v3, 0x0

invoke-virtual {v0, v8, v9, v2, v3}, Lcom/plattysoft/leonids/ParticleSystem;->setSpeedModuleAndAngleRange(FFII)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-virtual {v0, v10, v11}, Lcom/plattysoft/leonids/ParticleSystem;->setScaleRange(FF)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

invoke-static {v1}, Lid/dhianrusdhiana/SaljuUtils;->setRotation(Landroid/content/Context;)I

move-result v2

int-to-float v2, v2

invoke-virtual {v0, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setRotationSpeed(F)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0x5a

invoke-virtual {v0, v6, v2}, Lcom/plattysoft/leonids/ParticleSystem;->setAcceleration(FI)Lcom/plattysoft/leonids/ParticleSystem;

move-result-object v0

const/16 v2, 0x190

invoke-virtual {v0, v2, v12, v7}, Lcom/plattysoft/leonids/ParticleSystem;->emit(III)V

.line 39
return-void
.end method


B. Tambahkan kode berikut di salju_preference.xml :

<CheckBoxPreference android:title="Rotation" android:key="rotation" android:defaultValue="false" /> 

Share this post:

DELTALABS
Posted by: DELTALABS
Label:
Reaksi:
  1. Gan bisa request??bbm versi 2.9/210 (yg belum ada likenya) di mod dengan base delta 3.1.1

    ReplyDelete
  2. Gan bisa request??bbm versi 2.9/210 (yg belum ada likenya) di mod dengan base delta 3.1.1

    ReplyDelete
  3. Min anne request nih perminta an temen".. bisa buattin bbm mod buat BlackBerry os10. Ditunggu updeat buat BlackBerry bbm mod os 10 min. Makasih

    ReplyDelete
  4. Min...settingan knp harus d restar terus.?? Tiap x ganti bahasa atopun apaan...bbrpa lama kmudian berubah lagi..dan harus d restar setingan bbm nya...

    ReplyDelete

Subscribe to our newsletter

Notification