我有以下代码:
Intent serviceIntent = new Intent(this, ServiceClass.class);
startService(serviceIntent);
我有两个班级:
我从StartActivity类启动服务,但是当我使用“startService()”方法启动服务时,屏幕发生变化,当服务处理“onCreate”内的内容时,我无法做任何事情。 )“方法。
与“活动”方式相比,“服务”方式是否意味着没有UI干扰?
答案 0 :(得分:1)
你不是在ServiceClass中的某个地方有不定式(或长时间运行)循环吗?您在相同的上下文(线程)中运行服务,因此如果您有不定式循环,则线程被占用,而Activity无法执行任何操作。
答案 1 :(得分:0)
在ServiceClass中创建一个新的Thread并执行其中的所有代码。像现在一样从活动开始服务,但Service#onStartCommand中的代码需要在另一个线程中。
答案 2 :(得分:0)
试试这个
Intent serviceIntent = new Intent();
serviceIntent.setAction("com.testApp.service.MY_SERVICE");
startService(serviceIntent);