2016-10-22 2 views
0

원격으로 전송 된 명령으로 패키지 및 활동을 시작할 수있는 서비스를 수행하고 있습니다 (아니요, 바이러스가 아닙니다. 회사에서 장치를 원격으로 제어해야하는 업무용입니다). 있다). 이러한 명령을 바탕으로, 내가 사용하여 활동을 시작 할 수 있어요 : 그러나포 그라운드 활동이 CLOSE_SYSTEM_DIALOGS 일 때 서비스 시작 활동

context.startActivity(new Intent(context, Activity.class).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); 

, 전경 활동 행동 (난이 원인이라고 생각)와 같은 CLOSE_SYSTEM_DIALOGS을 가지고, 내가 시작하려는 활동이 아니다 시작되었습니다. 나는 장치가 뿌리를 가지고

, 나는 또한 "스와 -c 오전 -n < myActivity을 시작하려고 노력했습니다 ... 어떤 메시지 로그를 볼 수 없습니다>하지만이 역시 작동하지 않습니다.

어떤 생각?

+0

유용성의 관점에서 사용자가 대신 알림을 보는 것이 좋지 않습니까? – muratgu

+0

원격으로 크롬을 열거 나 무언가를 구성하기 위해 서비스 활동을하고 싶다고 상상해보십시오. 나는 왜 그런지 모르지만 포어 그라운드 활동에이 "행동"이 있다면, 제공된 장치가 루팅 된 것 외에는 아무 것도 할 수 없다 (또는 더 잘 말했어, 어떻게 해야할지 모르겠다). 이 작업이없는 다른 전경 활동에서 활동을 시작하거나 패키지를 시작할 수 있습니다. – jevora

+0

어떤 활동이라도 "시스템 대화 상자"를 차단하고 닫을 수 있습니다. – muratgu

답변

0

을 문제가되지는 시스템 대화 상자를 닫 것을 ... 그것은 내가 한 나쁜 진단했다. 문제는이 활동이 재정렬 작업입니다이며이 일시 중지 될 때마다, 그것은 작업 관리자를 취하고 다른 활동은 위에있을 것입니다.) onPause가 호출 될 때 내 서비스에 의해 던져지는 활동을 "존중"하도록 다른 활동을 수정합니다. 일시 중지를 유발 한 활동 및 그것이 서비스에서 오는 경우에, 다시 정상에있는 것을 시도하지 않을 것이다.

+0

서비스에서 "일시 중지"의 이유를 알 수 없기 때문에 다른 활동에서 취한 브로드 캐스트 메시지를 보내면 다음 onpause가 활동에 의해 만들어 질 것임을 알 수 있습니다 – jevora

관련 문제