这里是我的一个启动后自动停止的service startBrew();
// 创建Intent
intent = new Intent();
// 设置Action属性
intent.setAction("com.qin.appsize.MY_SERVICE");
//执行service
// 执行定时器
mTimer = new Timer();
mTimerTask = new TimerTask() {
String timeLimit=(String)brewTimeLabel.getText().toString();
int i = Integer.parseInt(timeLimit.substring(0,timeLimit.length()-1))*60;
public void run() {
// 打印时间
Log.d("AndroidTimerDemo", "timer:" + formatDate());
// 设置一个自己停止的功能
// 启动该Service
startService(intent);
if (i < 1) {
stopService(intent);
System.out.println("服务线程自动停止");
mTimer.cancel();
}
System.out.println("服务线程倒计时:" + i);
i--;
}
};
mTimer.schedule(mTimerTask, 0, 1*1000);
BrewClockActivity.this.finish();
}
} 这里是我的servicepackage com.qin.appsize;import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
public class TimerService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
} @Override
public void onCreate() {
super.onCreate();
}
public void onStart(Intent intent, int startId) {
Log.v("=========", "***** DaemonService *****: onStart");
// 这里可以做Service该做的事
System.out.println("我在做事!");
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
}
}
现在运行后是每一秒就执行一次onStart()方法 打印“我在做事!”
我想在 “我在做事!”那里做结束指定进程的功能 应该怎么做 也就是每一秒都在结束这个我指定的(例如指定一个闹钟程序)进程。
求大神指教 如何做结束进程serviceandroid
// 创建Intent
intent = new Intent();
// 设置Action属性
intent.setAction("com.qin.appsize.MY_SERVICE");
//执行service
// 执行定时器
mTimer = new Timer();
mTimerTask = new TimerTask() {
String timeLimit=(String)brewTimeLabel.getText().toString();
int i = Integer.parseInt(timeLimit.substring(0,timeLimit.length()-1))*60;
public void run() {
// 打印时间
Log.d("AndroidTimerDemo", "timer:" + formatDate());
// 设置一个自己停止的功能
// 启动该Service
startService(intent);
if (i < 1) {
stopService(intent);
System.out.println("服务线程自动停止");
mTimer.cancel();
}
System.out.println("服务线程倒计时:" + i);
i--;
}
};
mTimer.schedule(mTimerTask, 0, 1*1000);
BrewClockActivity.this.finish();
}
} 这里是我的servicepackage com.qin.appsize;import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
public class TimerService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
} @Override
public void onCreate() {
super.onCreate();
}
public void onStart(Intent intent, int startId) {
Log.v("=========", "***** DaemonService *****: onStart");
// 这里可以做Service该做的事
System.out.println("我在做事!");
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
}
}
现在运行后是每一秒就执行一次onStart()方法 打印“我在做事!”
我想在 “我在做事!”那里做结束指定进程的功能 应该怎么做 也就是每一秒都在结束这个我指定的(例如指定一个闹钟程序)进程。
求大神指教 如何做结束进程serviceandroid
解决方案 »
- android4.0编译问题Fatal error: invalid -march= option: `armv7-a'
- 关于Fragment的切换状态保存问题
- Android
- 小白求教!!艺龙旅行网的那个界面什么实现的?
- 显示图像
- 请教个初级问题,环境搭建
- 请问用registerReceiver注册的BroadcastReceiver的有效期是怎样的?
- android屏幕录制
- Expandablelistview 2层item嵌套一个type=decimal的edittetxt 点击软键盘的完成总是拉起一个26键的软键盘
- 我做的原生长连接,为什么老是会导致其它的部分端口不稳定
- 开启新的Activity后旧的继续运行
- 百度地图行车路线的颜色怎么更换掉?
你直接写代码不就行了,想做什么需要写自己的逻辑,比如启动另外一个程序,或者关闭另外一个程序。】】是否理解正确?
所以我主要是想问 1:在那个onStart方法中可以写结束指定进程的方法么
2:有没有一些结束进程的例子 。谢谢
结束的话 在上面那个定时器里有 他自己到时间会结束的
我前面试了几个方法 例如用这个 actManager.restartPackage("com.commonsware.Now");
指定结束com.commonsware.Now包的进程 每一秒执行一次 但是运行不了 报错了
我是新手刚学android 大神指教啊
1、杀死进程自己
System.exit(0);
android.os.Process.killProcess(android.os.Process.myPid());
2、根据包名,杀死别的进程
ActivityManager am = (ActivityManager) mContext.getSystemService(Context.ACTIVITY_SERVICE);
am.forceStopPackage("指定包名");
需要在androidmanifest.xml中添加权限:
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
楼主应该是需要第二种。
感谢各位 搞定了 补充下6楼第二种方法的forceStopPackage是一个隐藏的方法无法直接调用
所以需要用到反射 actManager = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
Method method;
try {
method = Class.forName("android.app.ActivityManager").getMethod("forceStopPackage", String.class);
method.invoke ( actManager.getClass(), "com.android.camera");
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}