WebView는 UI 구성 요소이기 때문에 활동에만있을 수 있습니다. 이 문제를 해결할 수있는 가장 좋은 방법은 자바 스크립트가 서비스 자체에 수행하는 통신을 오프로드하는 것입니다. 이것은 안드로이드가 작동하는 방법입니다. 유일한 해결책은 자바 스크립트/서버 통신이 언제든지 결점없는 연결을 견딜 수있을 정도로 내결함성이 있도록 만드는 것입니다. 이 작업을 수행하는 방법에 대한 아이디어는 REST 모델을 살펴 보겠습니다. 안드로이드와 함께 REST를 사용하는 것에 대해 더 잘 알고 싶다면 video from Google IO을 제안하십시오. 오늘까지, 그것은 나의 마음에 드는 것 중의 1 개다.
활동을 시작하기 위해 서버로부터 신호를 송신하는 한, 이것은 어느 정도 가능성이 있습니다. 기기를 청취 할 필요가 있습니다. 가장 가능성있는 서비스입니다. 당신은 당신의 서비스를 오래 설문 조사를 할 수 있으며 거기에 응답을 기다리고 앉아있을 수 있습니다. 서버에서 응답을 받으면
Context.startActivity(intent)
여기서 intent는 시작할 활동을 지정하는 명시적인 의도입니다. 즉, 리소스가 부족 해지면 서비스가 중단 될 수 있습니다. 게다가 인터넷 연결은 언제든지 잃어 버릴 수 있습니다 (이들은 휴대 전화이며 사람들은 종종 인터넷 연결이없는 휴대 전화 장소를 차지합니다).
결론은 장치가 연결성면에서 100 % 신뢰할 수 있도록 설계되지 않았다는 것입니다. 가장 현명한 일은 앱 사양을 변경하여 내결함성을 강화하는 것입니다.
소리가 날 수도 있지만 "하지 마세요. 지금까지하지 마세요." 더 건설적으로, 나는 당신이 일을 제대로한다면, 당신은 당신의 물건을 배경으로 밀어 넣을 수 있고 그것으로 사용자를 괴롭히지 않아야한다고 말할 것입니다. 기억하십시오, 키스, 그것은 군대를 가진 밴드가 아닙니다. 그것은 아름다운 철학입니다. 그것을 간단하게 어리 석다. 이 video을 살펴보고 싶을 수도 있습니다. 내 마음에 드는 것 중 하나이며, 마음의 상태가 달라 지도록 도와 줄 수 있습니다. 도움이 되었습니까?
좋습니다. 내 앱을 앞으로 가져 오는 문제에 대해 설명해 주시겠습니까? – TomBomb
질문에 대한 답변을 추가했습니다. –
고마워 커티스, 큰 도움이됩니다. 저는 항상 활동/서비스에 전적으로 의존하지 않는 방법을 찾고 있습니다. 나는 위에서 설명한대로 활동을 시작하지만 의도가 시작되면 내 앱에 다시 집중해야합니다. startActivity()를 호출 할 때 사용자가 다른 응용 프로그램에 있으면 응용 프로그램이 백그라운드에 남아 있습니다. 이견있는 사람? – TomBomb