2014-09-07 4 views
0

apc (api 19에서 api 18까지)로 디 컴파일하여 SemcClock.apk를 이식하려고했으나 일부 ​​fc를 경험했습니다. 알람은 올바르게 설정되지만 알람 시간에는 강제로 닫힙니다.포팅 할 때 강제로 닫으십시오.

로그 캣

09-08 00:37:00.130 E/AndroidRuntime(21010): java.lang.NoSuchMethodError: Landroid/content/Context;.startService 
09-08 00:37:00.130 E/AndroidRuntime(21010): at com.sonyericsson.alarm.AlarmReceiver.onReceive(AlarmReceiver.java:146) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2488) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.app.ActivityThread.access$1500(ActivityThread.java:150) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1374) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.os.Handler.dispatchMessage(Handler.java:99) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.os.Looper.loop(Looper.java:213) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at android.app.ActivityThread.main(ActivityThread.java:5225) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at java.lang.reflect.Method.invokeNative(Native Method) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at java.lang.reflect.Method.invoke(Method.java:525) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at  com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:741) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557) 
09-08 00:37:00.130 E/AndroidRuntime(21010): at dalvik.system.NativeStart.main(Native Method) 
09-08 00:37:13.064 E/ActivityManager(1025): ANR in com.sonyericsson.organizer 
09-08 00:37:13.064 E/ActivityManager(1025): Reason: Broadcast of Intent { act=com.sonyericsson.alarm.ALARM_ALERT flg=0x10000014 cmp=com.sonyericsson.organizer/com.sonyericsson.alarm.AlarmReceiver (has extras) } 

AlarmReceiver.smali

.class public Lcom/sonyericsson/alarm/AlarmReceiver; 
.super Landroid/content/BroadcastReceiver; 
.source "AlarmReceiver.java" 


# static fields 
.field private static final BACKUP_COMPLETE_APPLICATION:Ljava/lang/String; =  "com.sonyericsson.vendor.backuprestore.intent.PACKAGE_NAME" 

.field private static final BACKUP_COMPLETE_INTENT:Ljava/lang/String; = "com.sonyericsson.vendor.backuprestore.intent.ACTION_RESTORE_APP_COMPLETE" 

.field private static final PACKAGE_NAME:Ljava/lang/String; = "com.sonyericsson.organizer" 

.field private static final STALE_WINDOW:I = 0x1b7740 


# direct methods 
.method public constructor <init>()V 
.locals 0 

.prologue 
.line 39 
invoke-direct {p0}, Landroid/content/BroadcastReceiver;-><init>()V 

return-void 
.end method 

.method private getNotificationManager(Landroid/content/Context;)Landroid/app/NotificationManager; 
.locals 1 
.param p1, "context" # Landroid/content/Context; 

.prologue 
.line 190 
const-string v0, "notification" 

invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; 

move-result-object v0 

check-cast v0, Landroid/app/NotificationManager; 

return-object v0 
.end method 

.method private updateNotification(Landroid/content/Context;Lcom/sonyericsson/alarm/Alarm;I)V 
.locals 12 
.param p1, "context" # Landroid/content/Context; 
.param p2, "alarm" # Lcom/sonyericsson/alarm/Alarm; 
.param p3, "timeout" # I 

.prologue 
const/4 v11, 0x0 

const/4 v10, 0x1 

.line 194 
invoke-direct {p0, p1}, Lcom/sonyericsson/alarm/AlarmReceiver;->getNotificationManager(Landroid/content/Context;)Landroid/app/NotificationManager; 

move-result-object v4 

.line 196 
.local v4, "nm":Landroid/app/NotificationManager; 
if-nez p2, :cond_0 

.line 223 
:goto_0 
return-void 

.line 204 
:cond_0 
new-instance v5, Landroid/content/Intent; 

const-class v6, Lcom/sonyericsson/alarm/AlarmAlertFullScreen; 

invoke-direct {v5, p1, v6}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V 

.line 205 
.local v5, "viewAlarm":Landroid/content/Intent; 
const-string v6, "intent.extra.alarm" 

invoke-virtual {v5, v6, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; 

.line 206 
iget v6, p2, Lcom/sonyericsson/alarm/Alarm;->id:I 

invoke-static {p1, v6, v5, v11}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; 

move-result-object v1 

.line 210 
.local v1, "intent":Landroid/app/PendingIntent; 
invoke-virtual {p2, p1}, Lcom/sonyericsson/alarm/Alarm;->getLabelOrDefault(Landroid/content/Context;)Ljava/lang/String; 

move-result-object v2 

.line 211 
.local v2, "label":Ljava/lang/String; 
new-instance v0, Landroid/support/v4/app/NotificationCompat$Builder; 

invoke-direct {v0, p1}, Landroid/support/v4/app/NotificationCompat$Builder;-><init>(Landroid/content/Context;)V 

.line 212 
.local v0, "builder":Landroid/support/v4/app/NotificationCompat$Builder; 
const v6, 0x7f020050 

invoke-virtual {v0, v6}, Landroid/support/v4/app/NotificationCompat$Builder;->setSmallIcon(I)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

invoke-virtual {v6, v2}, Landroid/support/v4/app/NotificationCompat$Builder;->setTicker(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

iget-wide v7, p2, Lcom/sonyericsson/alarm/Alarm;->time:J 

invoke-virtual {v6, v7, v8}, Landroid/support/v4/app/NotificationCompat$Builder;->setWhen(J)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

invoke-virtual {v6, v2}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentTitle(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

const v7, 0x7f0b0013 

new-array v8, v10, [Ljava/lang/Object; 

invoke-static {p3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; 

move-result-object v9 

aput-object v9, v8, v11 

invoke-virtual {p1, v7, v8}, Landroid/content/Context;->getString(I[Ljava/lang/Object;)Ljava/lang/String; 

move-result-object v7 

invoke-virtual {v6, v7}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentText(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

invoke-virtual {v6, v1}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentIntent(Landroid/app/PendingIntent;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

invoke-virtual {v6, v10}, Landroid/support/v4/app/NotificationCompat$Builder;->setOngoing(Z)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v6 

invoke-virtual {v6, v10}, Landroid/support/v4/app/NotificationCompat$Builder;->setLocalOnly(Z)Landroid/support/v4/app/NotificationCompat$Builder; 

.line 216 
invoke-virtual {v0}, Landroid/support/v4/app/NotificationCompat$Builder;->build()Landroid/app/Notification; 

move-result-object v3 

.line 221 
.local v3, "n":Landroid/app/Notification; 
iget v6, p2, Lcom/sonyericsson/alarm/Alarm;->id:I 

invoke-virtual {v4, v6}, Landroid/app/NotificationManager;->cancel(I)V 

.line 222 
iget v6, p2, Lcom/sonyericsson/alarm/Alarm;->id:I 

invoke-virtual {v4, v6, v3}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V 

goto :goto_0 
.end method 


# virtual methods 
.method public onReceive(Landroid/content/Context;Landroid/content/Intent;)V 
.locals 29 
.param p1, "context" # Landroid/content/Context; 
.param p2, "intent" # Landroid/content/Intent; 

.prologue 
.line 55 
new-instance v3, Ljava/lang/StringBuilder; 

invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V 

const-string v4, "action: " 

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 

move-result-object v3 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; 

move-result-object v4 

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 

move-result-object v3 

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; 

move-result-object v3 

invoke-static {v3}, Lcom/sonyericsson/alarm/Log;->v(Ljava/lang/String;)V 

.line 57 
const-string v3, "alarm_killed" 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; 

move-result-object v4 

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

move-result v3 

if-eqz v3, :cond_1 

.line 59 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/IlluminationEffects;->stopEffects(Landroid/content/Context;)V 

.line 62 
:try_start_0 
const-string v3, "intent.extra.alarm" 

move-object/from16 v0, p2 

invoke-virtual {v0, v3}, Landroid/content/Intent;->getParcelableExtra(Ljava/lang/String;)Landroid/os/Parcelable; 

move-result-object v25 

.line 63 
.local v25, "parcel":Landroid/os/Parcelable; 
check-cast v25, Lcom/sonyericsson/alarm/Alarm; 

.end local v25 # "parcel":Landroid/os/Parcelable; 
const-string v3, "alarm_killed_timeout" 

const/4 v4, -0x1 

move-object/from16 v0, p2 

invoke-virtual {v0, v3, v4}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I 

move-result v3 

move-object/from16 v0, p0 

move-object/from16 v1, p1 

move-object/from16 v2, v25 

invoke-direct {v0, v1, v2, v3}, Lcom/sonyericsson/alarm/AlarmReceiver;->updateNotification(Landroid/content/Context;Lcom/sonyericsson/alarm/Alarm;I)V 
:try_end_0 
.catch Landroid/os/BadParcelableException; {:try_start_0 .. :try_end_0} :catch_0 

.line 187 
:cond_0 
:goto_0 
return-void 

.line 65 
:catch_0 
move-exception v17 

.line 66 
.local v17, "e":Landroid/os/BadParcelableException; 
invoke-virtual/range {v17 .. v17}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String; 

move-result-object v3 

invoke-static {v3}, Lcom/sonyericsson/alarm/Log;->e(Ljava/lang/String;)V 

goto :goto_0 

.line 69 
.end local v17 # "e":Landroid/os/BadParcelableException; 
:cond_1 
const-string v3, "cancel_snooze" 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; 

move-result-object v4 

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

move-result v3 

if-eqz v3, :cond_2 

.line 70 
const/4 v3, -0x1 

const-wide/16 v6, -0x1 

move-object/from16 v0, p1 

invoke-static {v0, v3, v6, v7}, Lcom/sonyericsson/alarm/Alarms;->saveSnoozeAlert(Landroid/content/Context;IJ)V 

goto :goto_0 

.line 72 
:cond_2 
const-string v3, "com.sonyericsson.vendor.backuprestore.intent.ACTION_RESTORE_APP_COMPLETE" 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; 

move-result-object v4 

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

move-result v3 

if-eqz v3, :cond_3 

const-string v3, "com.sonyericsson.organizer" 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle; 

move-result-object v4 

const-string v6, "com.sonyericsson.vendor.backuprestore.intent.PACKAGE_NAME" 

invoke-virtual {v4, v6}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object; 

move-result-object v4 

invoke-virtual {v4}, Ljava/lang/Object;->toString()Ljava/lang/String; 

move-result-object v4 

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

move-result v3 

if-eqz v3, :cond_3 

.line 75 
const/4 v3, -0x1 

const-wide/16 v6, -0x1 

move-object/from16 v0, p1 

invoke-static {v0, v3, v6, v7}, Lcom/sonyericsson/alarm/Alarms;->saveSnoozeAlert(Landroid/content/Context;IJ)V 

.line 78 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/Alarms;->makeOutDatedAlarmAlert(Landroid/content/Context;)V 

.line 79 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/Alarms;->disableExpiredAlarms(Landroid/content/Context;)V 

.line 80 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/Alarms;->setNextAlert(Landroid/content/Context;)V 

goto :goto_0 

.line 83 
:cond_3 
const-string v3, "com.sonyericsson.alarm.ALARM_ALERT" 

invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String; 

move-result-object v4 

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

move-result v3 

if-eqz v3, :cond_0 

.line 88 
const/4 v12, 0x0 

.line 93 
.local v12, "alarm":Lcom/sonyericsson/alarm/Alarm; 
const-string v3, "intent.extra.alarm_raw" 

move-object/from16 v0, p2 

invoke-virtual {v0, v3}, Landroid/content/Intent;->getByteArrayExtra(Ljava/lang/String;)[B 

move-result-object v16 

.line 94 
.local v16, "data":[B 
if-eqz v16, :cond_4 

.line 95 
invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel; 

move-result-object v19 

.line 96 
.local v19, "in":Landroid/os/Parcel; 
const/4 v3, 0x0 

move-object/from16 v0, v16 

array-length v4, v0 

move-object/from16 v0, v19 

move-object/from16 v1, v16 

invoke-virtual {v0, v1, v3, v4}, Landroid/os/Parcel;->unmarshall([BII)V 

.line 97 
const/4 v3, 0x0 

move-object/from16 v0, v19 

invoke-virtual {v0, v3}, Landroid/os/Parcel;->setDataPosition(I)V 

.line 98 
sget-object v3, Lcom/sonyericsson/alarm/Alarm;->CREATOR:Landroid/os/Parcelable$Creator; 

move-object/from16 v0, v19 

invoke-interface {v3, v0}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object; 

move-result-object v12 

.end local v12 # "alarm":Lcom/sonyericsson/alarm/Alarm; 
check-cast v12, Lcom/sonyericsson/alarm/Alarm; 

.line 99 
.restart local v12 # "alarm":Lcom/sonyericsson/alarm/Alarm; 
invoke-virtual/range {v19 .. v19}, Landroid/os/Parcel;->recycle()V 

.line 102 
.end local v19 # "in":Landroid/os/Parcel; 
:cond_4 
if-nez v12, :cond_5 

.line 103 
const-string v3, "Failed to parse the alarm from the intent" 

invoke-static {v3}, Lcom/sonyericsson/alarm/Log;->wtf(Ljava/lang/String;)V 

.line 105 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/Alarms;->setNextAlert(Landroid/content/Context;)V 

goto/16 :goto_0 

.line 110 
:cond_5 
iget v3, v12, Lcom/sonyericsson/alarm/Alarm;->id:I 

move-object/from16 v0, p1 

invoke-static {v0, v3}, Lcom/sonyericsson/alarm/Alarms;->disableSnoozeAlert(Landroid/content/Context;I)V 

.line 112 
iget-object v3, v12, Lcom/sonyericsson/alarm/Alarm;->daysOfWeek:Lcom/sonyericsson/alarm/Alarm$DaysOfWeek; 

invoke-virtual {v3}, Lcom/sonyericsson/alarm/Alarm$DaysOfWeek;->isRepeatSet()Z 

move-result v3 

if-nez v3, :cond_6 

.line 113 
iget v3, v12, Lcom/sonyericsson/alarm/Alarm;->id:I 

const/4 v4, 0x0 

move-object/from16 v0, p1 

invoke-static {v0, v3, v4}, Lcom/sonyericsson/alarm/Alarms;->enableAlarm(Landroid/content/Context;IZ)V 

.line 122 
:goto_1 
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J 

move-result-wide v23 

.line 123 
.local v23, "now":J 
new-instance v3, Ljava/lang/StringBuilder; 

invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V 

const-string v4, "Recevied alarm set for " 

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 

move-result-object v3 

iget-wide v6, v12, Lcom/sonyericsson/alarm/Alarm;->time:J 

invoke-static {v6, v7}, Lcom/sonyericsson/alarm/Log;->formatTime(J)Ljava/lang/String; 

move-result-object v4 

invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; 

move-result-object v3 

invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; 

move-result-object v3 

invoke-static {v3}, Lcom/sonyericsson/alarm/Log;->v(Ljava/lang/String;)V 

.line 126 
iget-wide v3, v12, Lcom/sonyericsson/alarm/Alarm;->time:J 

const-wide/32 v6, 0x1b7740 

add-long/2addr v3, v6 

cmp-long v3, v23, v3 

if-lez v3, :cond_7 

.line 127 
const-string v3, "Ignoring stale alarm" 

invoke-static {v3}, Lcom/sonyericsson/alarm/Log;->v(Ljava/lang/String;)V 

goto/16 :goto_0 

.line 117 
.end local v23 # "now":J 
:cond_6 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/Alarms;->setNextAlert(Landroid/content/Context;)V 

goto :goto_1 

.line 133 
.restart local v23 # "now":J 
:cond_7 
invoke-static/range {p1 .. p1}, Lcom/sonyericsson/alarm/AlarmAlertWakeLock;->acquireCpuWakeLock(Landroid/content/Context;)V 

.line 136 
new-instance v15, Landroid/content/Intent; 

const-string v3, "android.intent.action.CLOSE_SYSTEM_DIALOGS" 

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

.line 137 
.local v15, "closeDialogs":Landroid/content/Intent; 
move-object/from16 v0, p1 

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

.line 141 
const-class v14, Lcom/sonyericsson/alarm/AlarmAlertFullScreen; 

.line 144 
.local v14, "c":Ljava/lang/Class; 
new-instance v27, Landroid/content/Intent; 

const-string v3, "com.sonyericsson.alarm.ALARM_ALERT" 

move-object/from16 v0, v27 

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

.line 145 
.local v27, "playAlarm":Landroid/content/Intent; 
const-string v3, "intent.extra.alarm" 

move-object/from16 v0, v27 

invoke-virtual {v0, v3, v12}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; 

.line 146 
sget-object v3, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle; 

move-object/from16 v0, p1 

move-object/from16 v1, v27 

invoke-virtual {v0, v1, v3}, Landroid/content/Context;->startService(Landroid/content/Intent;Landroid/os/UserHandle;)Landroid/content/ComponentName; 

.line 151 
new-instance v5, Landroid/content/Intent; 

const-class v3, Lcom/sonyericsson/alarm/AlarmAlertFullScreen; 

move-object/from16 v0, p1 

invoke-direct {v5, v0, v3}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V 

.line 152 
.local v5, "notify":Landroid/content/Intent; 
const-string v3, "intent.extra.alarm" 

invoke-virtual {v5, v3, v12}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; 

.line 153 
iget v4, v12, Lcom/sonyericsson/alarm/Alarm;->id:I 

const/high16 v6, 0x8000000 

const/4 v7, 0x0 

sget-object v8, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle; 

move-object/from16 v3, p1 

invoke-static/range {v3 .. v8}, Landroid/app/PendingIntent;->getActivityAsUser(Landroid/content/Context;ILandroid/content/Intent;ILandroid/os/Bundle;Landroid/os/UserHandle;)Landroid/app/PendingIntent; 

move-result-object v26 

.line 158 
.local v26, "pendingNotify":Landroid/app/PendingIntent; 
move-object/from16 v0, p1 

invoke-virtual {v12, v0}, Lcom/sonyericsson/alarm/Alarm;->getLabelOrDefault(Landroid/content/Context;)Ljava/lang/String; 

move-result-object v20 

.line 159 
.local v20, "label":Ljava/lang/String; 
new-instance v13, Landroid/support/v4/app/NotificationCompat$Builder; 

move-object/from16 v0, p1 

invoke-direct {v13, v0}, Landroid/support/v4/app/NotificationCompat$Builder;-><init>(Landroid/content/Context;)V 

.line 160 
.local v13, "builder":Landroid/support/v4/app/NotificationCompat$Builder; 
const v3, 0x7f020050 

invoke-virtual {v13, v3}, Landroid/support/v4/app/NotificationCompat$Builder;->setSmallIcon(I)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

move-object/from16 v0, v20 

invoke-virtual {v3, v0}, Landroid/support/v4/app/NotificationCompat$Builder;->setTicker(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

iget-wide v6, v12, Lcom/sonyericsson/alarm/Alarm;->time:J 

invoke-virtual {v3, v6, v7}, Landroid/support/v4/app/NotificationCompat$Builder;->setWhen(J)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

move-object/from16 v0, v20 

invoke-virtual {v3, v0}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentTitle(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

const v4, 0x7f0b0019 

move-object/from16 v0, p1 

invoke-virtual {v0, v4}, Landroid/content/Context;->getString(I)Ljava/lang/String; 

move-result-object v4 

invoke-virtual {v3, v4}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentText(Ljava/lang/CharSequence;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

move-object/from16 v0, v26 

invoke-virtual {v3, v0}, Landroid/support/v4/app/NotificationCompat$Builder;->setContentIntent(Landroid/app/PendingIntent;)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

const/4 v4, 0x1 

invoke-virtual {v3, v4}, Landroid/support/v4/app/NotificationCompat$Builder;->setOngoing(Z)Landroid/support/v4/app/NotificationCompat$Builder; 

move-result-object v3 

const/4 v4, 0x1 

invoke-virtual {v3, v4}, Landroid/support/v4/app/NotificationCompat$Builder;->setLocalOnly(Z)Landroid/support/v4/app/NotificationCompat$Builder; 

.line 167 
const-string v3, "phone" 

move-object/from16 v0, p1 

invoke-virtual {v0, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; 

move-result-object v28 

check-cast v28, Landroid/telephony/TelephonyManager; 

.line 169 
.local v28, "telephonyManager":Landroid/telephony/TelephonyManager; 
invoke-virtual/range {v28 .. v28}, Landroid/telephony/TelephonyManager;->getCallState()I 

move-result v3 

if-nez v3, :cond_8 

.line 170 
new-instance v8, Landroid/content/Intent; 

move-object/from16 v0, p1 

invoke-direct {v8, v0, v14}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V 

.line 171 
.local v8, "alarmAlert":Landroid/content/Intent; 
const-string v3, "intent.extra.alarm" 

invoke-virtual {v8, v3, v12}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; 

.line 172 
const/high16 v3, 0x10040000 

invoke-virtual {v8, v3}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent; 

.line 175 
iget v7, v12, Lcom/sonyericsson/alarm/Alarm;->id:I 

const/high16 v9, 0x8000000 

const/4 v10, 0x0 

sget-object v11, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle; 

move-object/from16 v6, p1 

invoke-static/range {v6 .. v11}, Landroid/app/PendingIntent;->getActivityAsUser(Landroid/content/Context;ILandroid/content/Intent;ILandroid/os/Bundle;Landroid/os/UserHandle;)Landroid/app/PendingIntent; 

move-result-object v18 

.line 178 
.local v18, "fullScreenIntent":Landroid/app/PendingIntent; 
const/4 v3, 0x1 

move-object/from16 v0, v18 

invoke-virtual {v13, v0, v3}, Landroid/support/v4/app/NotificationCompat$Builder;->setFullScreenIntent(Landroid/app/PendingIntent;Z)Landroid/support/v4/app/NotificationCompat$Builder; 

.line 180 
.end local v8 # "alarmAlert":Landroid/content/Intent; 
.end local v18 # "fullScreenIntent":Landroid/app/PendingIntent; 
:cond_8 
invoke-virtual {v13}, Landroid/support/v4/app/NotificationCompat$Builder;->build()Landroid/app/Notification; 

move-result-object v21 

.line 184 
.local v21, "n":Landroid/app/Notification; 
invoke-direct/range {p0 .. p1}, Lcom/sonyericsson/alarm/AlarmReceiver;->getNotificationManager(Landroid/content/Context;)Landroid/app/NotificationManager; 

move-result-object v22 

.line 185 
.local v22, "nm":Landroid/app/NotificationManager; 
const/4 v3, 0x0 

iget v4, v12, Lcom/sonyericsson/alarm/Alarm;->id:I 

sget-object v6, Landroid/os/UserHandle;->CURRENT:Landroid/os/UserHandle; 

move-object/from16 v0, v22 

move-object/from16 v1, v21 

invoke-virtual {v0, v3, v4, v1, v6}, Landroid/app/NotificationManager;->notifyAsUser(Ljava/lang/String;ILandroid/app/Notification;Landroid/os/UserHandle;)V 

goto/16 :goto_0 
.end method 

내가 그것을 감사

을 !! 포트 수 있기를 바랍니다

답변

0

봐 : 09-08 00 :

이 오류가 : 37 : 00.130 E/AndroidRuntime (21010) : java.lang.NoSuchMethodError

의미하는 문서에 따라 :

응용 프로그램이 지정된 클래스 메서드 (정적 또는 인스턴스)를 호출하려고 시도하고 해당 클래스에 더 이상 해당 메서드의 정의가없는 경우 발생합니다.

일반적으로이 오류는 컴파일러에서 발견합니다. 이 오류는 클래스의 정의가 호환되지 않는 경우에만 런타임에 발생할 수 있습니다. 문서에

링크 :이 도움이 http://docs.oracle.com/javase/7/docs/api/java/lang/NoSuchMethodError.html

희망!

+0

그래, 그 방법은 startService ..하지만 smali 파일에 도움이 필요 알아 :-( – user3813862

관련 문제