0

LocalBroadcastManager를 사용하여 브로드 캐스트 할 수있는 서비스가 있습니다.LocalBroadcast의 수신자가 시스템 브로드 캐스트에 대해 작동하지 않습니다.

Intent downloadIntent = new Intent(); 
downloadIntent.setAction(BroadcastActions.DOWNLOAD_APPOINTMENTS.toString()); 
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(downloadIntent); 

테스트 활동에서 다음과 같이이 브로드 캐스트를 수신합니다.

IntentFilter filter = new IntentFilter(); 
filter.addAction(String.valueOf(BroadcastActions.DOWNLOAD_APPOINTMENTS)); 
filter.addAction(BluetoothDevice.ACTION_FOUND); 
LocalBroadcastManager.getInstance(getActivity()).registerReceiver(receiver, filter); 

동일한 테스트 활동에서 나는 블루투스 지원 장치를 얻기 위해 ACTION_FOUND라는 또 다른 조치를 추가했습니다. LocalBroadCast Manager를 사용하기 때문에 블루투스 장치를 발견하면 시스템 브로드 캐스트를 수신 할 수 없습니다. 아무도 시스템 및 지역 방송을 수신 할 수 있도록이 문제를 해결할 수 있습니까?

답변

1

누구나 시스템 및 로컬 방송을 수신 할 수 있습니까?

LocalBroadcastReceiver은 자신의 앱에서만 유용하므로 "로컬"이라는 용어를 사용하는 것이 좋습니다.

두 개 이상의 BroadcastReceiver을 사용하는 것을 막을 수있는 방법은 없습니다. 시스템 브로드 캐스트를 수신하기 위해 다른 하나를 만드십시오.

관련 문제