2014-10-27 94 views
0

我是新的服务,我找不到一种方法来停止由警报管理器启动的服务。如何从活动中停止服务

这是代码停止服务:

stopservices() 
    { 
    CancelAlarm(getApplicationContext()); 
    Intent intent1 = new Intent(this, CrService.class);   
    stopService(intent1); 
    } 

// method Cancel alarm 
public void CancelAlarm(Context context) 
    { 
     Intent intent = new Intent(context, ReceiverPositioningAlarm.class); 
     PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, 0); 
     AlarmManager AvdhiCralarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
     AvdhiCralarm.cancel(sender); 
     sender.cancel(); 
     // stopService(new Intent(this, CrService.class)); 
    } 
+0

尝试改变这yourclassname.this,yourclass名称类的,你打电话给你的服务 – 2014-10-27 12:51:38

+0

让我知道这个名字,如果你这个工作,或者如果你有一个支持更多的代码和你的错误堆栈 – 2014-10-29 07:58:37

回答

0
stopservices() 
    { 
    CancelAlarm(getApplicationContext()); 

    } 

// method Cancel alarm 
public void CancelAlarm(Context context) 
    { 
     Intent intent = new Intent(context, ReceiverPositioningAlarm.class); 
     PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, 0); 
     AlarmManager AvdhiCralarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); 
     AvdhiCralarm.cancel(sender); 
     sender.cancel(); 
    // just write your context before call stop service & your name class before this 
     context.stopService(new Intent(Yourcalss.this, CrService.class)); 
     ^       ^
     |--------------------------------| 
    }