即使App崩溃在Android中,服务概念仍然有效吗?

时间:2015-11-04 15:54:11

标签: android android-service

我正在开发一个应用程序来收集应用程序中的崩溃报告,因此我创建了一个扩展Application的类来处理未捕获的异常,并创建了用于与服务器通信的服务类。 我在按钮单击中做了一个简单的除零异常,它产生了异常但我的服务类没有被调用。我确定已在清单文件中注册了服务类。

我的问题是即使应用程序在Android中崩溃(强制关闭),Will Service概念仍然有效吗?

代码:

before_script:
  - npm install

server_tests:
  script: mocha

client_tests:
  script: karma start karma.conf.js

服务类:

public class MyApp extends Application {
    public void onCreate() {
        Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
            @Override
            public void uncaughtException(Thread thread, Throwable e) {
                handleUncaughtException(thread, e);
            }
        });
    }
    public void handleUncaughtException(Thread thread, Throwable e) {
        e.printStackTrace();
        Intent i = new Intent(MyApp.this, ServiceClass.class);
        startService(i);
    }
}

清单xml文件:

public class ServiceClass extends Service {

    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
    }

    @Override
    public void onLowMemory() {
        super.onLowMemory();
    }

    @Override
    public void onStart(Intent intent, int startId) {
        super.onStart(intent, startId);
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.e("onStartCommand", "onStartCommand  called");
        // server communication code.
        return Service.START_STICKY;
    }
}

0 个答案:

没有答案