让系统处理崩溃,然后把错误日志上传到服务器并且服务只能运行2秒钟,如果2秒钟错误日志没有上传到服务器,那么这个错误信息就不要了。然后再停止服务,在服务销毁的时候同时销毁进程。
核心代码:
public int onStartCommand(Intent intent, int flags, int startId) { stopDelayed = intent.getLongExtra("Delayed", 2000); PackageName = intent.getStringExtra("PackageName"); expection = intent.getStringExtra("exception"); try { //这里上传崩溃日志 } catch (java.lang.Exception e) { e.printStackTrace(); } handler.postDelayed(new Runnable() { @Override public void run() {/* Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage(PackageName); startActivity(LaunchIntent);*/ KillSelfService.this.stopSelf(); //android.os.Process.killProcess(android.os.Process.myPid()); } }, stopDelayed); return super.onStartCommand(intent, flags, startId);}
@Overridepublic void onDestroy() { super.onDestroy(); Log.i(TAG, "onDestroy: "); android.os.Process.killProcess(android.os.Process.myPid());}