[電話] XPERIA X10 mini proのサービスメニュー

2010年9月13日 by
カテゴリ: Android 

先程のLockScreenSEMC.smaliで気になる記述を見つけたのでじわじわ調査。
コレが気になる記述。
どうやらロックスクリーンでキーを押したら呼ばれる模様

.method public onKeyDown(ILandroid/view/KeyEvent;)Z
.locals 7
.parameter "keyCode"
.parameter "event"

.prologue
const/4 v6, 0x7

const/4 v5, 0x1

const/4 v4, 0x0

.line 469
const/4 v1, 0x1

.line 470
.local v1, isMatched:Z
sget-object v2, Lcom/android/internal/policy/impl/LockScreenSEMC;->SM_KEY_COMBINATION:[I

iget v3, p0, Lcom/android/internal/policy/impl/LockScreenSEMC;->mPressKeyIndex:I

aget v2, v2, v3

if-eq p1, v2, :cond_0

.line 471
const/4 v1, 0x0

.line 474
:cond_0
if-eqz v1, :cond_1

iget v2, p0, Lcom/android/internal/policy/impl/LockScreenSEMC;->mPressKeyIndex:I

if-ne v2, v6, :cond_1

.line 476
iput v4, p0, Lcom/android/internal/policy/impl/LockScreenSEMC;->mPressKeyIndex:I

.line 478
new-instance v0, Landroid/content/Intent;

invoke-direct {v0}, Landroid/content/Intent;->()V

.line 479
.local v0, intent:Landroid/content/Intent;
const/high16 v2, 0x1000

invoke-virtual {v0, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;

.line 480
const-string v2, "com.sonyericsson.android.servicemenu"

const-string v3, "com.sonyericsson.android.servicemenu.ServiceMainMenu"

invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->setClassName(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;

.line 481
invoke-virtual {p0}, Lcom/android/internal/policy/impl/LockScreenSEMC;->getContext()Landroid/content/Context;
(以下略)

なんとなく SM_KEY_COMBINATION:[I を押せばサービスメニューに行けそうだ
んで、ここらへんが臭い

.method static constructor ()V
.locals 1

.prologue
.line 91
const/16 v0, 0x8

new-array v0, v0, [I

fill-array-data v0, :array_0

sput-object v0, Lcom/android/internal/policy/impl/LockScreenSEMC;->SM_KEY_COMBINATION:[I

return-void

:array_0
.array-data 0x4
0x3t 0x0t 0x0t 0x0t
0x4t 0x0t 0x0t 0x0t
0x4t 0x0t 0x0t 0x0t
0x3t 0x0t 0x0t 0x0t
0x4t 0x0t 0x0t 0x0t
0x3t 0x0t 0x0t 0x0t
0x3t 0x0t 0x0t 0x0t
0x4t 0x0t 0x0t 0x0t
.end array-data
.end method

0x3と0x4のコンビネーション臭い。
メニューキー押したら起きちゃうので、それ以外でそれっぽいボタンはHomeとBackかな?
ってことで「□←←□←□□←」と押したらサービスメニューが登場ですよ!

だからなんだとか言われても困るが、リバースエンジニアリングして色々見てるとこんなのも分かるもんだということですね。
実に恐ろしい。

コメント

1 件のコメント on [電話] XPERIA X10 mini proのサービスメニュー

    […] サービスメニューは以前と一緒です。 […]