우선, 서비스를 정의하는 lib 라이브러리가 있습니다.
으아악이제 이 라이브러리를 도입한 두 개의 앱을 추가한 다음 해당 코드에서 호출했습니다.
으아악지금 생각하는 것은 시스템에 하나만 SharedService
的实例,在进程com.lib.aidl.SharedService
있어야 한다는 것입니다.
그런데 실제 상황은 2개의 SharedService
的实例,它们都在进程名为com.lib.aidl.SharedService
프로세스가 있는데 프로세스 ID가 다릅니다. 왜 그런 겁니까?
이제 시스템에 단 하나의 SharedService
的实例,当第二次调用startService
时回调onStartCommand
메소드만 표시하고 싶습니다. 가능합니까?
PHP中文网2017-05-16 13:23:35
将
으아악替换成
으아악试试
注意,加了个 ':'
서비스가 실행될 프로세스의 이름입니다. 일반적으로 애플리케이션의 모든 구성 요소는 해당 애플리케이션에 대해 생성된 기본 프로세스에서 실행됩니다. 애플리케이션 패키지와 이름이 동일합니다. <애플리케이션> 요소의 프로세스 속성은 모든 구성요소에 대해 서로 다른 기본값을 설정할 수 있습니다. 그러나 구성 요소는 자체 프로세스 속성으로 기본값을 재정의할 수 있으므로 애플리케이션을 여러 프로세스에 걸쳐 분산시킬 수 있습니다.
이 속성에 할당된 이름이 콜론(':')으로 시작하는 경우 애플리케이션 전용 새 프로세스는 다음과 같습니다. 필요할 때 생성되고 해당 프로세스에서 서비스가 실행됩니다. 프로세스 이름이 소문자로 시작하는 경우 서비스는 해당 권한이 있는 경우 해당 이름의 전역 프로세스에서 실행됩니다. 이를 통해 다양한 애플리케이션의 구성 요소가 프로세스를 공유하여 리소스 사용량을 줄일 수 있습니다.