수신기에서 android : process =“: remote”를 사용해야합니까?
나는 자주 호출되는 BroadcastReceiver를 가지고 있으며 많은 사람들이
android: process =":remote"
수신기에서. 광산은 몇 가지 사항을 확인하고 조건이 일치하면 알람을 활성화하는 데 사용됩니다. 내 질문은 매니페스트에서 위에 게시 한 줄을 사용해야합니까? 그렇다면 그렇게하면 어떤 이점이 있습니까?
수신기를 정의 android:process=":remote"하면 기본적으로 다른 프로세스 (= VM)에서 수신기를 실행합니다. 일반적인 사용 사례의 경우 다른 프로세스에서 실행할 필요가 없으며 수행하려는 모든 작업이 로컬에서 (APK 프로세스에서) 잘 실행될 수 있습니다.
사용의 단점은 android:process=":remote"실행하려면 추가 리소스가 필요하다는 것입니다 (이 경우 별도의 프로세스). 이렇게하면 기본적으로 2 개의 VM을 처리하고 싱글 톤, 정적 필드와 같은 일부 패턴을 더 이상 앱과 원격 서비스간에 공유 할 수 없습니다.
사용의 이점은 android:process=":remote"일부 사용 사례의 경우 애플리케이션을 종료 한 후에도 계속 실행되는 서비스를 시작하는 것이 편리 할 수 있습니다 (자체 프로세스에서) 또는 원격 클라이언트가 바인딩 할 수 있도록하려는 경우 당신의 서비스에. 브로드 캐스트 수신기는 onReceive()메서드 를 호출 할 때 별도의 프로세스에서 실행될 때 애플리케이션 기본 스레드를 차단하지 않습니다 (그러나이를 구현하는 다른 방법이 있습니다).
대부분의 경우 대부분의 일반적인 사용 사례에서 android:process=":remote".
참고 URL : https://stackoverflow.com/questions/4311069/should-i-use-android-process-remote-in-my-receiver
'program story' 카테고리의 다른 글
| Java, 현재 디렉토리에서 파일을 읽습니까? (0) | 2020.11.07 |
|---|---|
| 하위 디렉토리에서 .gitignore 규칙을 무시할 수 있습니까? (0) | 2020.11.07 |
| 저장된 텍스트 영역에서 표시 줄 바꿈 반응 (0) | 2020.11.06 |
| 5 씩 증가하는 UISlider (0) | 2020.11.06 |
| DBNull의 요점은 무엇입니까? (0) | 2020.11.06 |