Related
Please give thanks/credit if you use this in your ROM - Donations are also appreciated!
This one really aggravated me with the latest update since it stayed on the statusbar all the time. You can of course just turn off the Smartstay or Smartrotation but that wouldn't be any fun. You can also cheat and mess with the icon file itself but that's not any fun either. I will admit this method is a little aggressive as I just boss hogged through the module and removed the icon usage all through it. I'm sure there are several other methods as well.
Yes, I could have attached the smali files themselves but that's not the point of How-To threads. Plus you'll need to learn for the next ROM base anyways
SystemUI/smali/com/android/systemui/statusbar/policy/FaceDetectionController$SmartRotationObserver.smali
Code:
invoke-static {v2}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->access$300(Lcom/android/systemui/statusbar/policy/FaceDetectionController;)Z
move-result v2
[COLOR="Red"] --invoke-virtual {v0, v1, v2}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V[/COLOR]
.line 97
return-void
.line 93
:cond_1
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController$SmartRotationObserver;->this$0:Lcom/android/systemui/statusbar/policy/FaceDetectionController;
#setter for: Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mEnableDetect:Z
invoke-static {v0, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->access$302(Lcom/android/systemui/statusbar/policy/FaceDetectionController;Z)Z
goto :goto_0
.end method
SystemUI/smali/com/android/systemui/statusbar/policy/FaceDetectionController$SmartStayObserver.smali
Code:
#getter for: Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mEnableDetect:Z
invoke-static {v2}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->access$300(Lcom/android/systemui/statusbar/policy/FaceDetectionController;)Z
move-result v2
[COLOR="Red"] --invoke-virtual {v0, v1, v2}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V[/COLOR]
.line 78
return-void
.line 74
:cond_1
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController$SmartStayObserver;->this$0:Lcom/android/systemui/statusbar/policy/FaceDetectionController;
#setter for: Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mEnableDetect:Z
invoke-static {v0, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->access$302(Lcom/android/systemui/statusbar/policy/FaceDetectionController;Z)Z
goto :goto_0
.end method
SystemUI/smali/com/android/systemui/statusbar/policy/FaceDetectionController.smali
Starting at line 118 (take note that your line numbers may change as we work down the file deleting lines)
Code:
const-string v2, "face"
iget v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
const/4 v4, 0x0
[COLOR="Red"] --invoke-virtual {v1, v2, v3, v5, v4}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;IILjava/lang/String;)V[/COLOR]
.line 105
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
[COLOR="Red"] --invoke-virtual {v1, v2, v5}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V[/COLOR]
.line 107
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mContext:Landroid/content/Context;
Starting at about Line 176
Code:
.line 116
:goto_0
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
iget-boolean v2, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mEnableDetect:Z
[COLOR="Red"] --invoke-direct {p0, v1, v2}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
.line 117
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
iget-boolean v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mEnableDetect:Z
[COLOR="Red"] --invoke-virtual {v1, v2, v3}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V[/COLOR]
.line 119
new-instance v1, Lcom/android/systemui/statusbar/policy/FaceDetectionController$SmartStayObserver;
Starting at about Line 372
Code:
.method static synthetic access$500(Lcom/android/systemui/statusbar/policy/FaceDetectionController;IZ)V
.locals 0
.parameter "x0"
.parameter "x1"
.parameter "x2"
.prologue
.line 35
[COLOR="Red"] --invoke-direct {p0, p1, p2}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
return-void
.end method
Starting at about Line 396
Code:
.method private final updateFaceIconVisibility(Z)V
.locals 2
.parameter "visible"
.prologue
.line 149
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v1, "face"
[COLOR="Red"] --invoke-virtual {v0, v1, p1}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V[/COLOR]
.line 150
return-void
.end method
Starting at about Line 446
Code:
.line 144
if-eqz p2, :cond_0
const/4 v3, 0x0
:goto_1
[COLOR="Red"] --invoke-virtual {v2, v3}, Landroid/widget/ImageView;->setVisibility(I)V[/COLOR]
.line 141
add-int/lit8 v1, v1, 0x1
Starting at about Line 472
Code:
# virtual methods
.method public addIconView(Landroid/widget/ImageView;)V
.locals 1
.parameter "v"
.prologue
.line 136
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mIconViews:Ljava/util/ArrayList;
[COLOR="Red"] --invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z[/COLOR]
.line 137
return-void
.end method
Starting at about Line 552
Code:
if-eqz v1, :cond_1
.line 157
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStartIconId:I
[COLOR="Red"] --invoke-direct {p0, v1, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
.line 158
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
iget v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStartIconId:I
[COLOR="Red"] --invoke-virtual {v1, v2, v3, v5, v6}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;IILjava/lang/String;)V[/COLOR]
.line 174
:cond_0
:goto_0
Starting at about Line 579
Code:
move-result v1
if-eqz v1, :cond_2
.line 160
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-direct {p0, v1, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
.line 161
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
iget v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-virtual {v1, v2, v3, v5, v6}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;IILjava/lang/String;)V[/COLOR]
goto :goto_0
Starting at about Line 614
Code:
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->isSmartStayMode:I
if-eq v1, v4, :cond_3
.line 164
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-direct {p0, v1, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
.line 168
:goto_1
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
iget v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-virtual {v1, v2, v3, v5, v6}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;IILjava/lang/String;)V[/COLOR]
goto :goto_0
.line 166
:cond_3
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mFailIconId:I
[COLOR="Red"] --invoke-direct {p0, v1, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
goto :goto_1
.line 169
:cond_4
const-string v1, "android.intent.action.SCREEN_OFF"
Starting at about Line 653
Code:
.line 170
iget v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-direct {p0, v1, v4}, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->updateIconView(IZ)V[/COLOR]
.line 171
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mService:Landroid/app/StatusBarManager;
const-string v2, "face"
iget v3, p0, Lcom/android/systemui/statusbar/policy/FaceDetectionController;->mStopIconId:I
[COLOR="Red"] --invoke-virtual {v1, v2, v3, v5, v6}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;IILjava/lang/String;)V[/COLOR]
goto :goto_0
.end method
If you like this MOD and would like to see others please consider a donation via my profile. I encourage other developers to share their work in How-To's as well.
you are on it today! haha
t3project said:
you are on it today! haha
Click to expand...
Click to collapse
Doing the knowledge dump Being meaning to do these for a while and just haven't had time.
digiblur said:
Doing the knowledge dump Being meaning to do these for a while and just haven't had time.
Click to expand...
Click to collapse
I did it the easy way by editing the images but would definitely like to give this a try.
Skunk Ape1 said:
I did it the easy way by editing the images but would definitely like to give this a try.
Click to expand...
Click to collapse
This method prevents the icon from being set at all, which in theory should allow that space on the status bar to be used. There always could be some hard coding somewhere else though that tells the status bar to only show so many icons.
Any way to get it back to the old LK8 style where the eye only appeared when it detected a face?
Looks like that FaceDetection smali file moved locations in the Note 3 (or in android 4.3).
If anyone knows its whereabouts it would be much appreciated!
Thanks
Good day here I am again with another guide. Since many galaxy y user ask me and told me to teach them how I manage to made the two lockscreen at LenoxEvolutionV2, I made a guide so that they will not PM me every now and then.
Screen shot:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Disclaimer: I and the very infamous XDA Developers nor the users guide you through this guide has take no responsibility in your phone to be damaged. Please take a nandroidbackup if you arent sure of what you are doin and incase your mod doesnt work.
Click to expand...
Click to collapse
Requirements:
Logic and Algorithms
Notepad ++
Apktool
Download this
The LidroidParts
and lidroid-res.apk
Click to expand...
Click to collapse
What will be edited:
android.policy.jar
framework.jar
lidroid-res.apk
Click to expand...
Click to collapse
Note: As I assume that you already done this guide or this guide so lets start, if you dont then do it first.
Click to expand...
Click to collapse
Instruction:
After finishing the guide of pratyush.creed, we will start it. Backup first! We will be modyfing framework.
A. Framework
1. Decompile your framework.jar.
2.Go to com/android/internal/widget/ and paste the file "LockPatternUtils$NotiMode.smali" from the lockscreen_epic_fascinate_lidroidlock.zip I gave.
3. And open the file "LockPatternUtils.smali" from that folder. and modify it
3.a. Below .source "LockPatternUtils.java" add two spaces and from there add this,
Code:
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/internal/widget/LockPatternUtils$NotiMode;
}
.end annotation
and it will be like this
Code:
.class public Lcom/android/internal/widget/LockPatternUtils;
.super Ljava/lang/Object;
.source "LockPatternUtils.java"
[COLOR="Red"]# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/android/internal/widget/LockPatternUtils$NotiMode;
}
.end annotation[/COLOR]
# static fields
.field public static final FAILED_ATTEMPTS_BEFORE_RESET:I = 0x14
.field public static final FAILED_ATTEMPTS_BEFORE_TIMEOUT:I = 0x5
.field public static final FAILED_ATTEMPT_COUNTDOWN_INTERVAL_MS:J = 0x3e8L
3.b. Now below the "# virtual method"
add these
Code:
.method public getIntentMissedEvent(Lcom/android/internal/widget/LockPatternUtils$NotiMode;)Landroid/app/PendingIntent;
.locals 7
.parameter "mode"
.prologue
const/4 v6, 0x0
.line 1304
const/4 v0, -0x1
.line 1305
.local v0, index:I
const/4 v3, 0x1
.line 1306
.local v3, reqNum:I
const-string v2, "com.android.phone"
.line 1309
.local v2, pkg:Ljava/lang/String;
iget-object v4, p0, Lcom/android/internal/widget/LockPatternUtils;->mContext:Landroid/content/Context;
const-string v5, "notification"
invoke-virtual {v4, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/app/NotificationManager;
.line 1312
.local v1, mNM:Landroid/app/NotificationManager;
sget-object v4, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedCall:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v4, :cond_0
const-string v2, "com.android.phone"
.line 1317
:goto_0
invoke-virtual {v1, v2, v3}, Landroid/app/NotificationManager;->getEventIndexWithReq(Ljava/lang/String;I)I
move-result v0
.line 1319
const/4 v4, -0x1
if-ne v0, v4, :cond_3
move-object v4, v6
.line 1320
:goto_1
return-object v4
.line 1313
:cond_0
sget-object v4, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedMsg:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v4, :cond_1
const-string v2, "com.android.mms"
const/16 v3, 0x7b
goto :goto_0
.line 1314
:cond_1
sget-object v4, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedEMail:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v4, :cond_2
const-string v2, "com.android.email"
goto :goto_0
:cond_2
move-object v4, v6
.line 1315
goto :goto_1
.line 1320
:cond_3
invoke-virtual {v1, v0}, Landroid/app/NotificationManager;->getEventIntent(I)Landroid/app/PendingIntent;
move-result-object v4
goto :goto_1
.end method
.method public getNumMissedEvent(Lcom/android/internal/widget/LockPatternUtils$NotiMode;)I
.locals 8
.parameter "mode"
.prologue
const/4 v7, 0x0
.line 1330
const/4 v1, -0x1
.line 1331
.local v1, index:I
const/4 v4, 0x1
.line 1332
.local v4, reqNum:I
const/4 v0, 0x0
.line 1333
.local v0, count:I
const-string v3, "com.android.phone"
.line 1335
.local v3, pkg:Ljava/lang/String;
iget-object v5, p0, Lcom/android/internal/widget/LockPatternUtils;->mContext:Landroid/content/Context;
const-string v6, "notification"
invoke-virtual {v5, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Landroid/app/NotificationManager;
.line 1336
.local v2, mNM:Landroid/app/NotificationManager;
if-nez v2, :cond_0
move v5, v7
.line 1353
:goto_0
return v5
.line 1340
:cond_0
sget-object v5, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedCall:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v5, :cond_1
const-string v3, "com.android.phone"
.line 1345
:goto_1
invoke-virtual {v2, v3, v4}, Landroid/app/NotificationManager;->getEventIndexWithReq(Ljava/lang/String;I)I
move-result v1
.line 1349
const/4 v5, -0x1
if-ne v1, v5, :cond_4
move v5, v7
goto :goto_0
.line 1341
:cond_1
sget-object v5, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedMsg:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v5, :cond_2
const-string v3, "com.android.mms"
const/16 v4, 0x7b
goto :goto_1
.line 1342
:cond_2
sget-object v5, Lcom/android/internal/widget/LockPatternUtils$NotiMode;->MissedEMail:Lcom/android/internal/widget/LockPatternUtils$NotiMode;
if-ne p1, v5, :cond_3
const-string v3, "com.android.email"
goto :goto_1
:cond_3
move v5, v7
.line 1343
goto :goto_0
.line 1351
:cond_4
invoke-virtual {v2, v1}, Landroid/app/NotificationManager;->getEventCount(I)I
move-result v0
move v5, v0
.line 1353
goto :goto_0
.end method
4. Save it and recopile your framework.jar
B. Android.policy.jar
1. Decompile your android.policy.jar
2. Go to this folder "com/android/internal/policy/impl/" of yours and copy the files from my lockscreen_epic_fascinate_lidr…idlock.zip at the folder android.policy and paste it in.
3. After pasting it, open your "LockPatternKeyguardView.smali" inside "com/android/internal/policy/impl/"
and find these method
Code:
.method createLockScreen()Landroid/view/View;
Replace the method to the method i modified
Code:
.method createLockScreen()Landroid/view/View;
.locals 6
.prologue
.line 890
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x1
if-eq v2, v0, :cond_3
const/4 v2, 0x2
if-eq v2, v0, :cond_3
const/4 v2, 0x3
if-eq v2, v0, :cond_3
const/4 v2, 0x4
if-eq v2, v0, :cond_3
const/4 v2, 0x5
if-eq v2, v0, :cond_3
if-eqz v0, :cond_0
.line 869
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x6
if-eq v2, v0, :cond_2
const/4 v2, 0x7
if-eq v2, v0, :cond_1
const v2, 0x8
if-eq v2, v0, :cond_6
const v2, 0x9
if-eq v2, v0, :cond_7
:cond_0
new-instance v0, Lcom/android/internal/policy/impl/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/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_0
:cond_1
new-instance v0, Lcom/android/internal/policy/impl/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/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_0
:cond_2
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->GLASSLOCK_MODE:Z
if-eqz v0, :cond_4
.line 891
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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 905
:goto_0
return-object v0
:cond_3
new-instance v0, Lcom/android/internal/policy/impl/CyanogenLockScreen;
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/CyanogenLockScreen;-><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_0
.line 897
:cond_4
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->CIRCLELOCK_MODE:Z
if-eqz v0, :cond_5
.line 898
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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_0
.line 905
:cond_5
new-instance v0, Lcom/android/internal/policy/impl/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/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_0
:cond_6
new-instance v0, Lcom/android/internal/policy/impl/EpicLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/EpicLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_0
:cond_7
new-instance v0, Lcom/android/internal/policy/impl/FascinateLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/FascinateLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_0
.end method
4. Save your modified LockPaternKeyguardView.smali and recompile it
C. Flashing
at the app folder add thee following
-Lidroid Parts
at the lidroid folder add thee following
-lidroid-res.apk
-framework.jar
-android.policy.jar
Happy modding hope it helps you. )
Credits to:
[email protected]
[email protected]
[email protected]
Special thanks to:
LenoxDevs
GTroops
SGY.ph
Greets,
[email protected]
NIce Thread Sir
i will try asap :good::laugh:
Oh dude! This is awesome! I was looking for this! Will try a.s.a.p!
You rock!
:victory:
Jersey. said:
Oh dude! This is awesome! I was looking for this! Will try a.s.a.p!
You rock!
:victory:
Click to expand...
Click to collapse
I hope you like it sir.
Sent from my GT-S6102 using Tapatalk 2
thanks sir long wait hehe :laugh:
Add Stock Samsung Lock (Swipe Lock to Unlock)
Hello, Bored from that AOSP slidng tab lockscreen?
Follow this to have the stock samsung swipe to unlock phone.
1. Open your LockPatternKeyguardView.smali
2. Find method creatLockScreen
3. Replace it with this
Code:
.method createLockScreen()Landroid/view/View;
.locals 6
.prologue
.line 868
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x1
if-eq v2, v0, :cond_2
const/4 v2, 0x2
if-eq v2, v0, :cond_2
const/4 v2, 0x3
if-eq v2, v0, :cond_2
const/4 v2, 0x4
if-eq v2, v0, :cond_2
const/4 v2, 0x5
if-eq v2, v0, :cond_2
if-eqz v0, :cond_0
.line 869
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x6
if-eq v2, v0, :cond_1
const/4 v2, 0x7
if-eq v2, v0, :cond_3
const v2, 0x8
if-eq v2, v0, :cond_4
:cond_0
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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_0
new-instance v0, Lcom/android/internal/policy/impl/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/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_0
:cond_1
new-instance v0, Lcom/android/internal/policy/impl/CircleLockScreen;
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/CircleLockScreen;-><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_0
return-object v0
:cond_2
new-instance v0, Lcom/android/internal/policy/impl/CyanogenLockScreen;
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/CyanogenLockScreen;-><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_0
:cond_3
new-instance v0, Lcom/android/internal/policy/impl/EpicLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/EpicLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_0
:cond_4
new-instance v0, Lcom/android/internal/policy/impl/FascinateLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/FascinateLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_0
.end method
At the Lidroid Parts, how to implement it in your very own Lidroid Settings
Since the APK i gave need to resigned all your apps and frameworks or even the whole rom since you dont want to disable signature check, follow this.
1.Decompile the apk that has your lidroid settings
2. Go to res/values/arrays.xml
3. Modify the arrays by adding an item below it to register the choices. Both the entry and value
4. Save and recompile
5. Push or flash
NOTE. Post your problem here not on my facebook account. I dont usually entertain PM in facebook. Sorry.
Click to expand...
Click to collapse
coolest dev :thumbup: haha thanks for sharing master
Sent from my GT-S5360 using xda premium
Good guide sir
:good:
Awesome GUIDE sir ,
thnk's very very much :*
have bootloop with ace-i, no mistakes with comp/decomp:crying:
misha1996 said:
have bootloop with ace-i, no mistakes with comp/decomp:crying:
Click to expand...
Click to collapse
i had use an ace i last time too and i think it is similar. Can you take a proper logcat or one thng,the guide cant cause you bootloop if the previous guide is working.
Sent from my GT-S5360 using Tapatalk 2
PineappleOwl said:
i had use an ace i last time too and i think it is similar. Can you take a proper logcat or one thng,the guide cant cause you bootloop if the previous guide is working.
Sent from my GT-S5360 using Tapatalk 2
Click to expand...
Click to collapse
I think, i find my mistake
UPDATE:
yes; it work. Phone work. But lidroid-parts not work, not as apk, not put to system/app with permissions.
Can i mod my lidroid-parts? If yes, how?:thumbup:
misha1996 said:
I think, i find my mistake
UPDATE:
yes; it work. Phone work. But lidroid-parts not work, not as apk, not put to system/app with permissions.
Can i mod my lidroid-parts? If yes, how?:thumbup:
Click to expand...
Click to collapse
you can mod it. just add an array entries and the likes. sure it will work.
PineappleOwl said:
I hope you like it sir.
Sent from my GT-S6102 using Tapatalk 2
Click to expand...
Click to collapse
Yes I do like it, it's fully working after some adjustments, looks great and I love it :victory:
Too bad I can't hit that Thanks button more than once.
Jersey. said:
Yes I do like it, it's fully working after some adjustments, looks great and I love it :victory:
Too bad I can't hit that Thanks button more than once.
Click to expand...
Click to collapse
+1
Отправлено с моего GT-S5830i через Tapatalk
Hii , I just implemented this in my device ( Galaxy Fit ) and it worked well except for which I had issues selecting the stock lockscreen ... Observing the code :cond_2 has been declared as the stock lockscreen ryt
Code:
:cond_2
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->GLASSLOCK_MODE:Z
if-eqz v0, :cond_4
.line 891
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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 905
:goto_0
return-object v0
Y do we use this after :cond_2
Code:
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->GLASSLOCK_MODE:Z
if-eqz v0, :cond_4
instead of directly calling like this
Code:
:cond_2
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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 905
:goto_0
return-object v0
wilfredcool007 said:
Hii , I just implemented this in my device ( Galaxy Fit ) and it worked well except for which I had issues selecting the stock lockscreen ... Observing the code :cond_2 has been declared as the stock lockscreen ryt
Code:
:cond_2
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->GLASSLOCK_MODE:Z
if-eqz v0, :cond_4
.line 891
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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 905
:goto_0
return-object v0
Y do we use this after :cond_2
Code:
iget-boolean v0, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->GLASSLOCK_MODE:Z
if-eqz v0, :cond_4
instead of directly calling like this
Code:
:cond_2
new-instance v0, Lcom/android/internal/policy/impl/GlassLockScreen;
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/GlassLockScreen;-><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 905
:goto_0
return-object v0
Click to expand...
Click to collapse
Thats the stock for galaxy y sir. hehe. what i did was just add the CyanogenLockScreen at the bottom of method. and make it as is. also that time i was rushing in modding and i dont want to have a testing but a full shot. hehe. so i take two time to think what will be the best . and what i did is the guide.I just copy my method / Hehehe.
PineappleOwl said:
Thats the stock for galaxy y sir. hehe. what i did was just add the CyanogenLockScreen at the bottom of method. and make it as is. also that time i was rushing in modding and i dont want to have a testing but a full shot. hehe. so i take two time to think what will be the best . and what i did is the guide.I just copy my method / Hehehe.
Click to expand...
Click to collapse
Figured out a possible solution, Use this method
Code:
.method createLockScreen()Landroid/view/View;
.registers 7
.prologue
.line 890
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x1
if-eq v2, v0, :cond_6d
const/4 v2, 0x2
if-eq v2, v0, :cond_6d
const/4 v2, 0x3
if-eq v2, v0, :cond_6d
const/4 v2, 0x4
if-eq v2, v0, :cond_6d
const/4 v2, 0x5
if-eq v2, v0, :cond_6d
if-eqz v0, :cond_3d
.line 869
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x6
if-eq v2, v0, :cond_5d
const/4 v2, 0x7
if-eq v2, v0, :cond_4d
const v2, 0x8
if-eq v2, v0, :cond_7d
const v2, 0x9
if-eq v2, v0, :cond_8b
:cond_3d
new-instance v0, Lcom/android/internal/policy/impl/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/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_6c
:cond_4d
new-instance v0, Lcom/android/internal/policy/impl/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/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_6c
:cond_5d
new-instance v0, Lcom/android/internal/policy/impl/CircleLockScreen;
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/CircleLockScreen;-><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_6c
return-object v0
:cond_6d
new-instance v0, Lcom/android/internal/policy/impl/CyanogenLockScreen;
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/CyanogenLockScreen;-><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_6c
:cond_7d
new-instance v0, Lcom/android/internal/policy/impl/EpicLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/EpicLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_6c
:cond_8b
new-instance v0, Lcom/android/internal/policy/impl/FascinateLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/FascinateLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_6c
.end method
U have included GLASS_LOCKSCREEN in place of stock
wilfredcool007 said:
Figured out a possible solution, Use this method
Code:
.method createLockScreen()Landroid/view/View;
.registers 7
.prologue
.line 890
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x1
if-eq v2, v0, :cond_6d
const/4 v2, 0x2
if-eq v2, v0, :cond_6d
const/4 v2, 0x3
if-eq v2, v0, :cond_6d
const/4 v2, 0x4
if-eq v2, v0, :cond_6d
const/4 v2, 0x5
if-eq v2, v0, :cond_6d
if-eqz v0, :cond_3d
.line 869
const/4 v2, 0x0
const/4 v0, 0x0
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v3
const-string v4, "lockscreen_style_pref"
invoke-static {v3, v4, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
const/4 v2, 0x6
if-eq v2, v0, :cond_5d
const/4 v2, 0x7
if-eq v2, v0, :cond_4d
const v2, 0x8
if-eq v2, v0, :cond_7d
const v2, 0x9
if-eq v2, v0, :cond_8b
:cond_3d
new-instance v0, Lcom/android/internal/policy/impl/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/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_6c
:cond_4d
new-instance v0, Lcom/android/internal/policy/impl/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/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_6c
:cond_5d
new-instance v0, Lcom/android/internal/policy/impl/CircleLockScreen;
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/CircleLockScreen;-><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_6c
return-object v0
:cond_6d
new-instance v0, Lcom/android/internal/policy/impl/CyanogenLockScreen;
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/CyanogenLockScreen;-><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_6c
:cond_7d
new-instance v0, Lcom/android/internal/policy/impl/EpicLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/EpicLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_6c
:cond_8b
new-instance v0, Lcom/android/internal/policy/impl/FascinateLockScreen;
iget-object v1, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mContext:Landroid/content/Context;
iget-object v2, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mLockPatternUtils:Lcom/android/internal/widget/LockPatternUtils;
iget-object v3, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mUpdateMonitor:Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;
iget-object v4, p0, Lcom/android/internal/policy/impl/LockPatternKeyguardView;->mKeyguardScreenCallback:Lcom/android/internal/policy/impl/KeyguardScreenCallback;
invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/policy/impl/FascinateLockScreen;-><init>(Landroid/content/Context;Lcom/android/internal/widget/LockPatternUtils;Lcom/android/internal/policy/impl/KeyguardUpdateMonitor;Lcom/android/internal/policy/impl/KeyguardScreenCallback;)V
goto :goto_6c
.end method
U have included GLASS_LOCKSCREEN in place of stock
Click to expand...
Click to collapse
Yep. GLASS_LOCKSCREEN, no problem for galaxy y sir because it was on stock .
Nice, gonna try IT ! now me gusta
Good day again. I have a new guide here. As I see the famous EDT Tweaks by Mr. RomanBB, the remodified EDT by pvyMods but I havent seen any other mods except PotatoXLenox that has a working an signal option, yes the hide and default. I didnt include the left signal. Its for you to implement it. Also i recieve many PMs regarding this so I made it.
Disclaimer:
You can add it in your ROM, you can modify it but please dont edit the About Us preference as a respect for us. Kanging is bad right? Also if you are nice enough put us in credits of your ROM.
Before you ask question double check your question first and think. As I did it and workin on stock SystemUI. Also take a necessary backup first hehe
Note: This mod is in PotatoXLenox ROM now so for them no need to do this.
Requirements:
What will be needing is a
1. Working brain that can understand my poor grammar
2. Notepad ++
3. APKTool
4. Luck
5. Your very owned SystemUI
Steps:
1. Pull your SystemUI.apk
2. Decompile your SystemUI.apk
3. After decompiling , go to this directory of your decompiled systemui
com/android/systemui/statusbar/policy/
Click to expand...
Click to collapse
4. Open the "StatusBarPolicy.smali" no need for the dollar things.
5. Now find ,
Code:
.method private final updateSignalStrength()V
6. Now replace this,
Code:
.method private final updateSignalStrength()V
.locals 11
.prologue
const/16 v8, 0xd
const/4 v7, 0x2
const/4 v6, 0x1
const/4 v5, 0x0
const-string v9, "StatusBarPolicy"
.line 1219
.line 1221
const-string v0, "ro.csc.sales_code"
invoke-static {v0}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
.line 1223
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->updateCdmaRoamingIcon()V
.line 1228
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->hasService()Z
move-result v0
if-nez v0, :cond_1
.line 1230
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v0
const-string v1, "airplane_mode_on"
invoke-static {v0, v1, v5}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v0
if-ne v0, v6, :cond_0
.line 1232
const v0, 0x7f020087
iput v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
.line 1236
:goto_0
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v1, "phone_signal"
iget v2, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
invoke-virtual {v0, v1, v2, v5}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;II)V
.line 1350
:goto_1
return-void
.line 1234
:cond_0
const v0, 0x7f020088
iput v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
goto :goto_0
.line 1258
:cond_1
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->isCdma()Z
move-result v0
if-nez v0, :cond_12
.line 1264
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v0}, Landroid/telephony/SignalStrength;->getGsmSignalStrength()I
move-result v0
.line 1265
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v1}, Landroid/telephony/SignalStrength;->getGsmBitErrorRate()I
move-result v1
.line 1286
const/16 v2, 0x13
if-lt v1, v2, :cond_2
move v2, v5
.line 1290
:goto_2
const-string v3, "StatusBarPolicy"
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "ecio: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v9, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1291
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getRAT()I
move-result v1
packed-switch v1, :pswitch_data_0
:pswitch_0
move v0, v5
.line 1327
:goto_3
iget-object v1, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhone:Landroid/telephony/TelephonyManager;
invoke-virtual {v1}, Landroid/telephony/TelephonyManager;->isNetworkRoaming()Z
move-result v1
if-eqz v1, :cond_11
.line 1328
sget-object v1, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages_r:[[I
iget v2, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v1, v1, v2
move-object v10, v1
move v1, v0
move-object v0, v10
.line 1348
:goto_4
aget v0, v0, v1
iput v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
.line 1349
iget-object v0, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v1, "phone_signal"
iget v2, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
invoke-virtual {v0, v1, v2, v5}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;II)V
goto :goto_1
.line 1287
:cond_2
if-lt v1, v8, :cond_3
const/16 v2, 0x13
if-ge v1, v2, :cond_3
const/4 v2, -0x1
goto :goto_2
.line 1288
:cond_3
if-ge v1, v8, :cond_14
const/4 v2, -0x2
goto :goto_2
.line 1293
:pswitch_1
if-lez v0, :cond_4
const/16 v1, 0x63
if-ne v0, v1, :cond_5
:cond_4
move v0, v5
.line 1300
:goto_5
const-string v1, "StatusBarPolicy"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "iconLevel: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v9, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_3
.line 1294
:cond_5
if-lt v0, v8, :cond_6
const/4 v0, 0x4
goto :goto_5
.line 1295
:cond_6
const/16 v1, 0xa
if-lt v0, v1, :cond_7
const/4 v0, 0x3
goto :goto_5
.line 1296
:cond_7
const/16 v1, 0x8
if-lt v0, v1, :cond_8
move v0, v7
goto :goto_5
.line 1297
:cond_8
const/4 v1, 0x6
if-lt v0, v1, :cond_9
move v0, v6
goto :goto_5
:cond_9
move v0, v5
.line 1298
goto :goto_5
.line 1305
:pswitch_2
if-lez v0, :cond_a
const/16 v1, 0x63
if-ne v0, v1, :cond_c
:cond_a
move v0, v5
.line 1312
:goto_6
add-int/2addr v0, v2
.line 1314
if-gez v0, :cond_b
move v0, v5
.line 1316
:cond_b
const-string v1, "StatusBarPolicy"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "iconLevel: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v9, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto/16 :goto_3
.line 1306
:cond_c
const/16 v1, 0xc
if-lt v0, v1, :cond_d
const/4 v0, 0x4
goto :goto_6
.line 1307
:cond_d
const/16 v1, 0x8
if-lt v0, v1, :cond_e
const/4 v0, 0x3
goto :goto_6
.line 1308
:cond_e
const/4 v1, 0x5
if-lt v0, v1, :cond_f
move v0, v7
goto :goto_6
.line 1309
:cond_f
if-lt v0, v7, :cond_10
move v0, v6
goto :goto_6
:cond_10
move v0, v5
.line 1310
goto :goto_6
.line 1330
:cond_11
sget-object v1, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages:[[I
iget v2, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v1, v1, v2
move-object v10, v1
move v1, v0
move-object v0, v10
goto/16 :goto_4
.line 1333
:cond_12
sget-object v0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages:[[I
iget v1, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v0, v0, v1
.line 1338
iget v1, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneState:I
if-nez v1, :cond_13
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->isEvdo()Z
move-result v1
if-eqz v1, :cond_13
iget-boolean v1, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mAlwaysUseCdmaRssi:Z
if-nez v1, :cond_13
.line 1340
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getEvdoLevel()I
move-result v1
goto/16 :goto_4
.line 1345
:cond_13
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getCdmaLevel()I
move-result v1
goto/16 :goto_4
:cond_14
move v2, v5
goto/16 :goto_2
.line 1291
nop
:pswitch_data_0
.packed-switch 0x2
:pswitch_1
:pswitch_0
:pswitch_0
:pswitch_2
.end packed-switch
.end method
with these
Code:
.method private final updateSignalStrength()V
.locals 15
.prologue
.line 993
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mContext:Landroid/content/Context;
invoke-virtual {v11}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v10
.line 994
.local v10, resolver:Landroid/content/ContentResolver;
invoke-virtual {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->updateSignalStrengthDbm()V
.line 996
const-string v11, "ro.csc.sales_code"
invoke-static {v11}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
.line 997
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->updateCdmaRoamingIcon()V
.line 998
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->hasService()Z
move-result v11
if-nez v11, :cond_2
.line 1000
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mContext:Landroid/content/Context;
invoke-virtual {v11}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v11
const-string v12, "airplane_mode_on"
const/4 v13, 0x0
invoke-static {v11, v12, v13}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v11
const/4 v12, 0x1
if-ne v11, v12, :cond_0
.line 1001
const v11, 0x7f020087
iput v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
.line 1005
:goto_0
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
iget v13, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
const/4 v14, 0x0
invoke-virtual {v11, v12, v13, v14}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;II)V
.line 1006
const-string v11, "hide_signal_icon"
const/4 v12, 0x0
invoke-static {v10, v11, v12}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v9
.line 1007
.local v9, mHideSignalStrength:I
if-nez v9, :cond_1
.line 1008
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
const/4 v13, 0x1
invoke-virtual {v11, v12, v13}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
.line 1123
:goto_1
return-void
.line 1003
.end local v9 #mHideSignalStrength:I
:cond_0
const v11, 0x7f020088
iput v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
goto :goto_0
.line 1010
.restart local v9 #mHideSignalStrength:I
:cond_1
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
const/4 v13, 0x0
invoke-virtual {v11, v12, v13}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
goto :goto_1
.line 1018
.end local v9 #mHideSignalStrength:I
:cond_2
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->isCdma()Z
move-result v11
if-nez v11, :cond_12
.line 1020
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v11}, Landroid/telephony/SignalStrength;->getGsmSignalStrength()I
move-result v6
.line 1021
.local v6, j:I
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v11}, Landroid/telephony/SignalStrength;->getGsmBitErrorRate()I
move-result v7
.line 1023
.local v7, k:I
const/16 v11, 0x13
if-lt v7, v11, :cond_3
.line 1024
const/4 v3, 0x0
.line 1033
.local v3, byte0:B
:goto_2
const-string v11, "StatusBarPolicy"
new-instance v12, Ljava/lang/StringBuilder;
invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
const-string v13, "ecio: "
invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v12
invoke-static {v11, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 1035
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getRAT()I
move-result v11
packed-switch v11, :pswitch_data_0
.line 1090
:pswitch_0
const/4 v8, 0x0
.line 1093
.local v8, l:I
:goto_3
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhone:Landroid/telephony/TelephonyManager;
invoke-virtual {v11}, Landroid/telephony/TelephonyManager;->isNetworkRoaming()Z
move-result v11
if-eqz v11, :cond_11
.line 1095
sget-object v11, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages_r:[[I
iget v12, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v2, v11, v12
.line 1096
.local v2, ai2:[I
move v5, v8
.line 1097
.local v5, i:I
move-object v0, v2
.line 1112
.end local v2 #ai2:[I
.end local v3 #byte0:B
.end local v6 #j:I
.end local v7 #k:I
.end local v8 #l:I
.local v0, ai:[I
:goto_4
aget v11, v0, v5
iput v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
.line 1113
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
iget v13, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneSignalIconId:I
const/4 v14, 0x0
invoke-virtual {v11, v12, v13, v14}, Landroid/app/StatusBarManager;->setIcon(Ljava/lang/String;II)V
.line 1117
const-string v11, "hide_signal_icon"
const/4 v12, 0x0
invoke-static {v10, v11, v12}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v9
.line 1118
.restart local v9 #mHideSignalStrength:I
if-nez v9, :cond_14
.line 1119
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
const/4 v13, 0x1
invoke-virtual {v11, v12, v13}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
goto :goto_1
.line 1026
.end local v0 #ai:[I
.end local v5 #i:I
.end local v9 #mHideSignalStrength:I
.restart local v6 #j:I
.restart local v7 #k:I
:cond_3
const/16 v11, 0xd
if-lt v7, v11, :cond_4
const/16 v11, 0x13
if-ge v7, v11, :cond_4
.line 1027
const/4 v3, -0x1
.restart local v3 #byte0:B
goto :goto_2
.line 1029
.end local v3 #byte0:B
:cond_4
const/16 v11, 0xd
if-ge v7, v11, :cond_5
.line 1030
const/4 v3, -0x2
.restart local v3 #byte0:B
goto :goto_2
.line 1032
.end local v3 #byte0:B
:cond_5
const/4 v3, 0x0
.restart local v3 #byte0:B
goto :goto_2
.line 1039
:pswitch_1
if-lez v6, :cond_b
const/16 v11, 0x63
if-eq v6, v11, :cond_b
.line 1041
const/16 v11, 0xc
if-lt v6, v11, :cond_7
.line 1042
const/4 v4, 0x4
.line 1058
.local v4, byte1:B
:goto_5
add-int v8, v4, v3
.line 1059
.restart local v8 #l:I
if-gez v8, :cond_6
.line 1060
const/4 v8, 0x0
.line 1061
:cond_6
const-string v11, "StatusBarPolicy"
new-instance v12, Ljava/lang/StringBuilder;
invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
const-string v13, "iconLevel: "
invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v12
invoke-static {v11, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_3
.line 1044
.end local v4 #byte1:B
.end local v8 #l:I
:cond_7
const/16 v11, 0x8
if-lt v6, v11, :cond_8
.line 1045
const/4 v4, 0x3
.restart local v4 #byte1:B
goto :goto_5
.line 1047
.end local v4 #byte1:B
:cond_8
const/4 v11, 0x5
if-lt v6, v11, :cond_9
.line 1048
const/4 v4, 0x2
.restart local v4 #byte1:B
goto :goto_5
.line 1050
.end local v4 #byte1:B
:cond_9
const/4 v11, 0x2
if-lt v6, v11, :cond_a
.line 1051
const/4 v4, 0x1
.restart local v4 #byte1:B
goto :goto_5
.line 1053
.end local v4 #byte1:B
:cond_a
const/4 v4, 0x0
.line 1054
.restart local v4 #byte1:B
goto :goto_5
.line 1056
.end local v4 #byte1:B
:cond_b
const/4 v4, 0x0
.restart local v4 #byte1:B
goto :goto_5
.line 1065
.end local v4 #byte1:B
:pswitch_2
if-lez v6, :cond_10
const/16 v11, 0x63
if-eq v6, v11, :cond_10
.line 1067
const/16 v11, 0xd
if-lt v6, v11, :cond_c
.line 1068
const/4 v8, 0x4
.line 1084
.restart local v8 #l:I
:goto_6
const-string v11, "StatusBarPolicy"
new-instance v12, Ljava/lang/StringBuilder;
invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
const-string v13, "iconLevel: "
invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v12
invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v12
invoke-static {v11, v12}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto/16 :goto_3
.line 1070
.end local v8 #l:I
:cond_c
const/16 v11, 0xa
if-lt v6, v11, :cond_d
.line 1071
const/4 v8, 0x3
.restart local v8 #l:I
goto :goto_6
.line 1073
.end local v8 #l:I
:cond_d
const/16 v11, 0x8
if-lt v6, v11, :cond_e
.line 1074
const/4 v8, 0x2
.restart local v8 #l:I
goto :goto_6
.line 1076
.end local v8 #l:I
:cond_e
const/4 v11, 0x6
if-lt v6, v11, :cond_f
.line 1077
const/4 v8, 0x1
.restart local v8 #l:I
goto :goto_6
.line 1079
.end local v8 #l:I
:cond_f
const/4 v8, 0x0
.line 1080
.restart local v8 #l:I
goto :goto_6
.line 1082
.end local v8 #l:I
:cond_10
const/4 v8, 0x0
.restart local v8 #l:I
goto :goto_6
.line 1100
:cond_11
sget-object v11, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages:[[I
iget v12, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v1, v11, v12
.line 1101
.local v1, ai1:[I
move v5, v8
.line 1102
.restart local v5 #i:I
move-object v0, v1
.line 1104
.restart local v0 #ai:[I
goto/16 :goto_4
.line 1106
.end local v0 #ai:[I
.end local v1 #ai1:[I
.end local v3 #byte0:B
.end local v5 #i:I
.end local v6 #j:I
.end local v7 #k:I
.end local v8 #l:I
:cond_12
sget-object v11, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->sSignalImages:[[I
iget v12, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mInetCondition:I
aget-object v0, v11, v12
.line 1107
.restart local v0 #ai:[I
iget v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mPhoneState:I
if-nez v11, :cond_13
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->isEvdo()Z
move-result v11
if-eqz v11, :cond_13
iget-boolean v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mAlwaysUseCdmaRssi:Z
if-nez v11, :cond_13
.line 1108
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getEvdoLevel()I
move-result v5
.restart local v5 #i:I
goto/16 :goto_4
.line 1110
.end local v5 #i:I
:cond_13
invoke-direct {p0}, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->getCdmaLevel()I
move-result v5
.restart local v5 #i:I
goto/16 :goto_4
.line 1121
.restart local v9 #mHideSignalStrength:I
:cond_14
iget-object v11, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mService:Landroid/app/StatusBarManager;
const-string v12, "phone_signal"
const/4 v13, 0x0
invoke-virtual {v11, v12, v13}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
goto/16 :goto_1
.line 1035
nop
:pswitch_data_0
.packed-switch 0x2
:pswitch_2
:pswitch_0
:pswitch_0
:pswitch_1
.end packed-switch
.end method
7. Below (it is located at the end of the StatusbarPolicy.smali)
Code:
const-string v1, "wifi"
invoke-virtual {v0, v4, v3}, Landroid/app/StatusBarManager;->setIconVisibility(Ljava/lang/String;Z)V
goto :goto_1
.end method
add two spaces, and add this,
Code:
# virtual methods
.method public updateSignalStrengthDbm()V
.locals 6
.prologue
const/4 v4, -0x1
.line 1126
const/4 v1, -0x1
.line 1128
.local v1, dBm:I
iget-object v5, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v5}, Landroid/telephony/SignalStrength;->isGsm()Z
move-result v5
if-nez v5, :cond_1
.line 1129
iget-object v4, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v4}, Landroid/telephony/SignalStrength;->getCdmaDbm()I
move-result v1
.line 1137
:cond_0
:goto_0
new-instance v2, Landroid/content/Intent;
const-string v4, "com.android.intent.action.DBM_SIGNAL_CHANGED"
invoke-direct {v2, v4}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
.line 1139
.local v2, dbmIntent:Landroid/content/Intent;
const-string v4, "dbm"
invoke-virtual {v2, v4, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
.line 1141
iget-object v4, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mContext:Landroid/content/Context;
invoke-virtual {v4, v2}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
.line 1145
return-void
.line 1131
.end local v2 #dbmIntent:Landroid/content/Intent;
:cond_1
iget-object v5, p0, Lcom/android/systemui/statusbar/policy/StatusBarPolicy;->mSignalStrength:Landroid/telephony/SignalStrength;
invoke-virtual {v5}, Landroid/telephony/SignalStrength;->getGsmSignalStrength()I
move-result v3
.line 1132
.local v3, gsmSignalStrength:I
const/16 v5, 0x63
if-ne v3, v5, :cond_2
move v0, v4
.line 1133
.local v0, asu:I
:goto_1
if-eq v0, v4, :cond_0
.line 1134
mul-int/lit8 v4, v0, 0x2
add-int/lit8 v1, v4, -0x71
goto :goto_0
.end local v0 #asu:I
:cond_2
move v0, v3
.line 1132
goto :goto_1
.end method
8. Now save the smali
9. Recompile your SystemUI.apk
10. Now flash or push hehe
10. Download te PxL Residue below
11. Install it as a normal apk
12. And finish
Screenshot:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Click to expand...
Click to collapse
Download link
Here
Credits:
PxL Developers
PotatoInc
Lenox Devs
Haters
RomanBB
Greets,
PineappleOwl
First :laugh:
I will be handsome now
what about putting the signal icons to the left? like lenox does
zzapz said:
what about putting the signal icons to the left? like lenox does
Click to expand...
Click to collapse
Hehe there still a bug too in aigna in lenox sir so i didnt gave it
Sent from my Nexus 7 using Tapatalk
Great Guide.
Thanks working properly in Custock Rom.
More power LenoxDevs
Thanks, sir. I wait it looong time:laugh:
waaawwww very cool
btw can u make icon signal look like jb
i mean signal bar n gprs to be as one?
Minions_Army said:
waaawwww very cool
btw can u make icon signal look like jb
i mean signal bar n gprs to be as one?
Click to expand...
Click to collapse
You can make it . Its yours just change the png in drawable. Haha Gprs i find it hard but we can i think
PineappleOwl said:
You can make it . Its yours just change the png in drawable. Haha Gprs i find it hard but we can i think
Click to expand...
Click to collapse
haha...
we know in jb icon data connection and signal in one frame
error when smaling
error on smaling but Iv'e used your statusbarpolicy.smali iv'e pull it from your Lenox Rom and it works .. thanks for it
waiting for stable left signal mod.
I dont have "StatusBarPolicy.smali"
will you find a solution?
I guess it works with only galaxy y..cauz i dont have
" .method private final updateSignalStrength()V" this line lol
Here is simple smali editing guide showing you how to give your SystemUI.apk runtime theme accent color change!
Changes that you will get by this guide was originally implemented by me here and later on my Xperia™ Xposed (KK) module, also brilliantly ported by:
- 4.3: @kongaz2 (here)
- 4.2.2: @STRYDER~007 (here)
Screenshot:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Requirements:
- Original Xperia™ stock SystemUI.apk
- Read lines below carefully
- Not to be afraid of FCs you will probably face
TRY IT AT YOUR OWN RISK
Here we go...
- Decompile SystemUI.apk v1.2 from my thread.
- Decompile KK one (yours)
I´m gonna show you where exactly I put accent color related code and you compare both decompiled smali files to get diffs (in red) ok!!
ToolsMain.smali
Code:
# instance fields
[COLOR="Red"].field private mAccentColorId:I[/COLOR]
Code:
.method public constructor <init>(Landroid/content/Context;Landroid/view/ViewGroup;)V
.locals 4
.parameter "context"
.parameter "parent"
.
.
[COLOR="red"].line 105
iget-object v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
const-string v1, "somc_accent_color_neutral"
const-string v2, "color"
const-string v3, "com.sonyericsson.uxp"
invoke-virtual {v0, v1, v2, v3}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v0
iput v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mAccentColorId:I[/COLOR]
Code:
[COLOR="red"].method static synthetic access$1000(Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;)V
.locals 0
.parameter "x0"
.prologue
.line 47
invoke-direct {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->colorize()V
return-void
.end method[/COLOR]
Code:
[COLOR="red"].method private colorize()V
.locals 4
.prologue
.line 749
iget v2, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mAccentColorId:I
if-eqz v2, :cond_0
.line 750
iget-object v2, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mButtons:Ljava/util/LinkedList;
invoke-virtual {v2}, Ljava/util/LinkedList;->iterator()Ljava/util/Iterator;
move-result-object v0
.local v0, i$:Ljava/util/Iterator;
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;
.line 751
.local v1, toolButton:Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;
iget-object v2, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mContext:Landroid/content/Context;
invoke-virtual {v2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v2
iget v3, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->mAccentColorId:I
invoke-virtual {v2, v3}, Landroid/content/res/Resources;->getColor(I)I
move-result v2
invoke-virtual {v1, v2}, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->colorize(I)V
goto :goto_0
.line 754
.end local v0 #i$:Ljava/util/Iterator;
.end local v1 #toolButton:Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;
:cond_0
return-void
.end method[/COLOR]
Code:
.method public configurationChanged(Landroid/content/res/Configuration;)V
.locals 5
.parameter "newConfig"
.
.
.line 1020
:cond_1
[COLOR="red"]invoke-direct {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->colorize()V[/COLOR]
.line 1021
return-void
Code:
.method public start()V
.locals 5
.
.
[COLOR="red"].line 162
invoke-direct {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->colorize()V[/COLOR]
.line 163
return-void
.end method
Code:
.method private reCreateButtons()V
.locals 17
.
.
.line 200
.end local v7 #i:I
:cond_4
[COLOR="red"]invoke-direct {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->colorize()V
.line 201[/COLOR]
return-void
.end method
ToolsMain$1.smali
Code:
# virtual methods
.method public onChange(Z)V
.locals 4
.parameter "selfChange"
.
.
.line 124
iget-object v3, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain$1;->this$0:Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;
#calls: Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->startServices()V
invoke-static {v3}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->access$400(Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;)V
[COLOR="Red"] .line 125
iget-object v3, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain$1;->this$0:Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;
#calls: Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->colorize()V
invoke-static {v3}, Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;->access$1000(Lcom/sonymobile/systemui/statusbar/tools/ToolsMain;)V[/COLOR]
ToolsButton.smali
Code:
[COLOR="Red"].method public colorize(I)V
.locals 1
.parameter "color"
.prologue
.line 447
iput p1, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->mAccentColor:I
.line 450
iget-object v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->mIcon:Landroid/widget/ImageView;
invoke-direct {p0, v0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->colorize(Landroid/widget/ImageView;)V
.line 451
iget-object v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->mLabel:Landroid/widget/TextView;
invoke-direct {p0, v0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->colorize(Landroid/widget/TextView;)V
.line 452
iget-object v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->mAnimationView:Landroid/widget/ImageView;
invoke-direct {p0, v0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsButton;->colorize(Landroid/widget/ImageView;)V
.line 453
return-void
.end method[/COLOR]
ToolsTabWidget.smali
Code:
.method public setCurrentTab(I)V
.locals 2
.parameter "index"
.prologue
.line 101
invoke-super {p0, p1}, Landroid/widget/TabWidget;->setCurrentTab(I)V
.line 102
if-ltz p1, :cond_0
invoke-virtual {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->getTabCount()I
move-result v0
if-ge p1, v0, :cond_0
iget v0, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->mCurrentTab:I
if-ne p1, v0, :cond_1
.line 106
:cond_0
:goto_0
[COLOR="Red"]invoke-virtual {p0, p1}, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->getChildTabViewAt(I)Landroid/view/View;
move-result-object v0
invoke-virtual {p0}, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->getTabCount()I
move-result v1
invoke-direct {p0, v0, p1, v1}, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->setActiveTabColorFilter(Landroid/view/View;II)V[/COLOR]
.line 107
return-void
.line 105
:cond_1
iput p1, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->mCurrentTab:I
goto :goto_0
.end method
Code:
[COLOR="Red"].method private setActiveTabColorFilter(Landroid/view/View;II)V
.locals 10
.parameter "view"
.parameter "activeTab"
.parameter "tabCount"
.prologue
.line 43
invoke-virtual {p1}, Landroid/view/View;->getContext()Landroid/content/Context;
move-result-object v7
invoke-virtual {v7}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v3
.line 44
.local v3, res:Landroid/content/res/Resources;
const-string v7, "somc_accent_color_neutral"
const-string v8, "color"
const-string v9, "com.sonyericsson.uxp"
invoke-virtual {v3, v7, v8, v9}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v1
.line 46
.local v1, accentNeutralResId:I
if-nez v1, :cond_1
.line 74
:cond_0
:goto_0
return-void
.line 51
:cond_1
:try_start_0
invoke-virtual {v3, v1}, Landroid/content/res/Resources;->getColor(I)I
move-result v0
.line 53
.local v0, accentNeutralColor:I
const/4 v4, 0x0
.local v4, tabIndex:I
:goto_1
if-ge v4, p3, :cond_0
.line 55
invoke-virtual {p0, v4}, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->getChildTabViewAt(I)Landroid/view/View;
move-result-object v5
.line 56
.local v5, tabView:Landroid/view/View;
const-string v7, "title"
const-string v8, "id"
const-string v9, "android"
invoke-virtual {v3, v7, v8, v9}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v7
invoke-virtual {v5, v7}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v6
check-cast v6, Landroid/widget/TextView;
.line 58
.local v6, titleView:Landroid/widget/TextView;
invoke-virtual {v5}, Landroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable;
move-result-object v7
invoke-virtual {v7}, Landroid/graphics/drawable/Drawable;->clearColorFilter()V
.line 59
iget-object v7, p0, Lcom/sonymobile/systemui/statusbar/tools/ToolsTabWidget;->mTabTextColor:Landroid/content/res/ColorStateList;
invoke-virtual {v6, v7}, Landroid/widget/TextView;->setTextColor(Landroid/content/res/ColorStateList;)V
.line 61
if-ne v4, p2, :cond_2
.line 63
invoke-virtual {v5}, Landroid/view/View;->getBackground()Landroid/graphics/drawable/Drawable;
move-result-object v7
new-instance v8, Landroid/graphics/PorterDuffColorFilter;
sget-object v9, Landroid/graphics/PorterDuff$Mode;->MULTIPLY:Landroid/graphics/PorterDuff$Mode;
invoke-direct {v8, v0, v9}, Landroid/graphics/PorterDuffColorFilter;-><init>(ILandroid/graphics/PorterDuff$Mode;)V
invoke-virtual {v7, v8}, Landroid/graphics/drawable/Drawable;->setColorFilter(Landroid/graphics/ColorFilter;)V
.line 64
invoke-virtual {v6, v0}, Landroid/widget/TextView;->setTextColor(I)V
:try_end_0
.catch Landroid/content/res/Resources$NotFoundException; {:try_start_0 .. :try_end_0} :catch_0
.line 53
:cond_2
add-int/lit8 v4, v4, 0x1
goto :goto_1
.line 69
.end local v0 #accentNeutralColor:I
.end local v4 #tabIndex:I
.end local v5 #tabView:Landroid/view/View;
.end local v6 #titleView:Landroid/widget/TextView;
:catch_0
move-exception v2
.line 71
.local v2, e:Landroid/content/res/Resources$NotFoundException;
invoke-virtual {v2}, Landroid/content/res/Resources$NotFoundException;->printStackTrace()V
goto :goto_0
.end method[/COLOR]
SomcTabsNotificationPanelView.smali
Code:
# instance fields
[COLOR="Red"].field private mExpanded:Z[/COLOR]
Code:
# virtual methods
.method public onConfigurationChanged()V
.locals 3
.
.
.line 102
:cond_0
[COLOR="Red"] iget-boolean v0, p0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->mExpanded:Z
if-nez v0, :cond_1
.line 104
iget-object v2, p0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->mTabHost:Landroid/widget/TabHost;
if-eqz v2, :cond_1
.line 106
iget-object v2, p0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->mTabHost:Landroid/widget/TabHost;
invoke-virtual {v2}, Landroid/widget/TabHost;->clearAllTabs()V
.line 107
const/4 v2, 0x0
iput-object v2, p0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->mTabHost:Landroid/widget/TabHost;
.line 109
invoke-direct {p0}, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->initTabs()V
.line 111
:cond_1[/COLOR]
return-void
.end method
Code:
.method public onExpandedChanged(Z)V
.locals 2
.parameter "expanded"
.prologue
[COLOR="Red"].line 292
iput-boolean p1, p0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->mExpanded:Z
.line 293[/COLOR]
if-eqz p1, :cond_0
RecentsPanelView.smali
Code:
.method private showImpl(Z)V
.locals 5
.parameter "show"
.prologue
const/4 v2, 0x0
const/4 v1, 0x1
[COLOR="Red"].line 364
invoke-direct {p0}, Lcom/android/systemui/recent/RecentsPanelView;->setRecentsNoAppsTextColor()V[/COLOR]
.line 365
iget-object v3, p0, Lcom/android/systemui/recent/RecentsPanelView;->mContext:Landroid/content/Context;
const-string v4, "recentapps"
invoke-static {v3, v4}, Lcom/android/systemui/recent/RecentsPanelView;->sendCloseSystemWindows(Landroid/content/Context;Ljava/lang/String;)V
Code:
[COLOR="Red"].method private setRecentsNoAppsTextColor()V
.locals 8
.prologue
.line 86
iget-object v5, p0, Lcom/android/systemui/recent/RecentsPanelView;->mContext:Landroid/content/Context;
invoke-virtual {v5}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v4
.line 87
.local v4, res:Landroid/content/res/Resources;
const-string v5, "somc_accent_color_neutral"
const-string v6, "color"
const-string v7, "com.sonyericsson.uxp"
invoke-virtual {v4, v5, v6, v7}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v1
.line 89
.local v1, accentNeutralResId:I
if-nez v1, :cond_0
.line 104
:goto_0
return-void
.line 94
:cond_0
:try_start_0
invoke-virtual {v4, v1}, Landroid/content/res/Resources;->getColor(I)I
move-result v0
.line 96
.local v0, accentNeutralColor:I
const v5, 0x7f0800a5
invoke-virtual {p0, v5}, Lcom/android/systemui/recent/RecentsPanelView;->findViewById(I)Landroid/view/View;
move-result-object v3
check-cast v3, Landroid/widget/TextView;
.line 97
.local v3, recentsNoAppsText:Landroid/widget/TextView;
invoke-virtual {v3, v0}, Landroid/widget/TextView;->setTextColor(I)V
:try_end_0
.catch Landroid/content/res/Resources$NotFoundException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_0
.line 99
.end local v0 #accentNeutralColor:I
.end local v3 #recentsNoAppsText:Landroid/widget/TextView;
:catch_0
move-exception v2
.line 101
.local v2, e:Landroid/content/res/Resources$NotFoundException;
invoke-virtual {v2}, Landroid/content/res/Resources$NotFoundException;->printStackTrace()V
goto :goto_0
.end method[/COLOR]
PhoneStatusBar.smali
Code:
.method makeExpandedVisible()V
.locals 5
.prologue
const/4 v3, 0x1
.line 1995
iget-boolean v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedVisible:Z
if-nez v0, :cond_0
invoke-virtual {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->panelsEnabled()Z
move-result v0
if-nez v0, :cond_1
.line 2027
:cond_0
:goto_0
return-void
.line 1999
:cond_1
iput-boolean v3, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mExpandedVisible:Z
.line 2000
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mPile:Lcom/android/systemui/statusbar/policy/NotificationRowLayout;
invoke-virtual {v0, v3}, Lcom/android/systemui/statusbar/policy/NotificationRowLayout;->setLayoutTransitionsEnabled(Z)V
.line 2001
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNavigationBarView:Lcom/android/systemui/statusbar/phone/NavigationBarView;
if-eqz v0, :cond_2
.line 2002
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNavigationBarView:Lcom/android/systemui/statusbar/phone/NavigationBarView;
invoke-virtual {v0, v3}, Lcom/android/systemui/statusbar/phone/NavigationBarView;->setSlippery(Z)V
.line 2004
:cond_2
invoke-virtual {p0, v3}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->updateCarrierLabelVisibility(Z)V
.line 2006
const/16 v0, -0x2710
invoke-virtual {p0, v0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->updateExpandedViewPos(I)V
[COLOR="red"].line 2007
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
const-string v1, "somc_accent_color_neutral"
const-string v2, "color"
const-string v4, "com.sonyericsson.uxp"
invoke-virtual {v0, v1, v2, v4}, Landroid/content/res/Resources;->getIdentifier(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
move-result v1
.line 2008
if-eqz v1, :cond_3
.line 2009
:try_start_0
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;
invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getColor(I)I
move-result v2
.line 2010
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNotificationPanelHeader:Landroid/view/View;
const v4, 0x7f08007b
invoke-virtual {v0, v4}, Landroid/view/View;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/TextView;
invoke-virtual {v0, v2}, Landroid/widget/TextView;->setTextColor(I)V
.line 2012
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
const v4, 0x7f08007e
invoke-virtual {v0, v4}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/Button;
invoke-virtual {v0, v2}, Landroid/widget/Button;->setTextColor(I)V
.line 2013
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
const v4, 0x7f08007f
invoke-virtual {v0, v4}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->findViewById(I)Landroid/view/View;
move-result-object v0
check-cast v0, Landroid/widget/Button;
invoke-virtual {v0, v2}, Landroid/widget/Button;->setTextColor(I)V
:try_end_0
.catch Landroid/content/res/Resources$NotFoundException; {:try_start_0 .. :try_end_0} :catch_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
.line 2016
:cond_3
:goto_1[/COLOR]
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
invoke-virtual {v0}, Lcom/android/systemui/statusbar/phone/StatusBarWindowView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
move-result-object v0
check-cast v0, Landroid/view/WindowManager$LayoutParams;
.line 2017
iget v1, v0, Landroid/view/WindowManager$LayoutParams;->flags:I
and-int/lit8 v1, v1, -0x9
iput v1, v0, Landroid/view/WindowManager$LayoutParams;->flags:I
.line 2018
iget v1, v0, Landroid/view/WindowManager$LayoutParams;->flags:I
const/high16 v2, 0x2
or-int/2addr v1, v2
iput v1, v0, Landroid/view/WindowManager$LayoutParams;->flags:I
.line 2019
const/4 v1, -0x1
iput v1, v0, Landroid/view/WindowManager$LayoutParams;->height:I
.line 2020
iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mWindowManager:Landroid/view/WindowManager;
iget-object v2, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarWindow:Lcom/android/systemui/statusbar/phone/StatusBarWindowView;
invoke-interface {v1, v2, v0}, Landroid/view/WindowManager;->updateViewLayout(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V
.line 2021
invoke-virtual {p0, v3}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->visibilityChanged(Z)V
.line 2022
invoke-virtual {p0, v3, v3}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->setInteracting(IZ)V
.line 2023
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNotificationPanel:Lcom/android/systemui/statusbar/phone/NotificationPanelView;
instance-of v0, v0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;
if-eqz v0, :cond_0
.line 2024
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mNotificationPanel:Lcom/android/systemui/statusbar/phone/NotificationPanelView;
check-cast v0, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;
invoke-virtual {v0, v3}, Lcom/sonymobile/systemui/statusbar/tools/SomcTabsNotificationPanelView;->onExpandedChanged(Z)V
.line 2025
invoke-direct {p0}, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->isAccessibilityEnabled()Z
move-result v0
if-eqz v0, :cond_0
.line 2026
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mStatusBarView:Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;
const/4 v1, 0x4
invoke-virtual {v0, v1}, Lcom/android/systemui/statusbar/phone/PhoneStatusBarView;->setVisibility(I)V
goto/16 :goto_0
[COLOR="red"].line 1854
:catch_0
move-exception v0
.line 1855
const-string v0, "PhoneStatusBar"
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "Can not find color resource "
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-static {v1}, Ljava/lang/Integer;->toHexString(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_1
.line 1856
:catch_1
move-exception v0
.line 1857
const-string v0, "PhoneStatusBar"
const-string v1, "Can not colorize the clock"
invoke-static {v0, v1}, Landroid/util/Slog;->w(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_1[/COLOR]
.end method
Pay attention on every method, in some cases I have needed to increase .locals value (underneath method name)
That´s it!! Good luck... \m/
Changelog
v1.0 - 08/02/2015:
- Initial release
@serajr thanks you
I needed a lot
Keep good work
Nice tut blood bro @serajr
Keep it up, very usefull for new people
Sent From Somewhere On Earth With My Z2 ^^
Amazing guide sir!! Thanks a lot.. :highfive::good:
omg !!!!
Amazing
Thanks :good::good::good:
Nice
It looks good and possible! However im just lazy and it looks scary to me!
WoW
well done :good:
Congratulations!!
Congratulations sir!! Your fantastic guide is on portal!! :good:
STRYDER~007 said:
Congratulations sir!! Your fantastic guide is on portal!! :good:
Click to expand...
Click to collapse
Wow... xda guys are faster than never!
Thank you bro!!!
thanks @serajr ^^ nice tut ^^
@serajr awesome.
Thanks Bro. Greats! Regards ?✌
Sent from my Sony Xperia Z3 Sensation - D6643 by Ogunja ??✌
serajr said:
v1.0 - 08/02/2015:
- Initial release
Click to expand...
Click to collapse
Nice work @serajr :highfive:
The Master did it again!!Thanks Master of smali coding----->@serajr :good:
This guide blows my mind
Any simpler guide or something else like that?
MT27i said:
This guide blows my mind
Any simpler guide or something else like that?
Click to expand...
Click to collapse
There's a way to get theme accent without editing any smali.
idid idamrep said:
There's a way to get theme accent without editing any smali.
Click to expand...
Click to collapse
Exactly!
I'm gonna try updating this guide with Lollipop SystemUI.apk.
No ETA, please!
Awesome guide!
Hello guys here go a simple tut
all you need is Deodexed Systemui.apk
1. Decompile SystemUI.apk
2. Open Systemui.apk/smali/com/android/statusbar/phone/PhoneStatusBar.smali
and find this Method
Code:
.method public resetHeadsUpDecayTimer()V
and completely replace with this method
Code:
.method public resetHeadsUpDecayTimer()V
.locals 5
.prologue
const/16 v4, 0x407
.line 1756
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHandler:Lcom/android/systemui/statusbar/BaseStatusBar$H;
invoke-virtual {v0, v4}, Lcom/android/systemui/statusbar/BaseStatusBar$H;->removeMessages(I)V
.line 1757
iget-boolean v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mUseHeadsUp:Z
if-eqz v0, :cond_0
iget v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHeadsUpNotificationDecay:I
if-lez v0, :cond_0
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHeadsUpNotificationView:Lcom/android/systemui/statusbar/policy/HeadsUpNotificationView;
invoke-virtual {v0}, Lcom/android/systemui/statusbar/policy/HeadsUpNotificationView;->isClearable()Z
move-result v0
if-eqz v0, :cond_0
.line 1759
iget-object v0, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mHandler:Lcom/android/systemui/statusbar/BaseStatusBar$H;
iget-object v1, p0, Lcom/android/systemui/statusbar/phone/PhoneStatusBar;->mContext:Landroid/content/Context;
invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v1
const-string v2, "heads_up_timeout"
const/16 v3, 0xbb8
invoke-static {v1, v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
move-result v1
int-to-long v2, v1
invoke-virtual {v0, v4, v2, v3}, Lcom/android/systemui/statusbar/BaseStatusBar$H;->sendEmptyMessageDelayed(IJ)Z
.line 1761
:cond_0
return-void
.end method
Done...!
save it and close
Now compile/sign it and replace the systemui.apk
Control with my app (Click here)
Have fun....
Dont forgot to tag me if you use my work
Thank u very much bro works fine