2013-04-22 13 views
5

dokowania W intencyjny, nie jest stałym imieniem ACTION_DOCK_EVENTW Androidzie co masz na myśli stan

Dodane w API level 5
Broadcast Działanie: lepkie broadcast zmian w stanie fizycznym dokującą urządzenia.

Co masz na myśli przez dokowanie?

+0

android doc o "statusie dokowania" => http://developer.android.com/training/monitoring-device-state/docking-monitoring.html –

Odpowiedz

1

co masz na myśli przez dokowania stan

stan dokująca oznacza zazwyczaj swój stan ładowania, może to być car, home dock, digital lub analog docks, urządzenia z Androidem mogą być zadokowany na kilka różnych rodzajów doków .

określić aktualny stan dokującej

W dock-state szczegóły zawarte są jako dodatkowy w lepkiej emisji akcji ACTION_DOCK_EVENT. Ponieważ jest to sticky, nie musisz rejestrować BroadcastReceiver. Możesz po prostu wywołać registerReceiver() przekazując null jako odbiornik transmisji, jak pokazano w następnym fragmencie.

IntentFilter ifilter = new IntentFilter(Intent.ACTION_DOCK_EVENT); 
Intent dockStatus = context.registerReceiver(null, ifilter); 
2

Urządzenia z systemem Android można zadokować na kilka różnych urządzeń dokowania. Należą do nich doki samochodowe lub do domu oraz doki cyfrowe i analogowe. Więc kiedy dok urządzenia zostanie zmieniona następnie zgłasza intencję ACTION_DOCK_EVENT

Jeśli urządzenie jest zadokowany, to może być kopiowany w dowolnym jednym z czterech różnych typów stacji dokującej:

  • Car
  • biuro
  • Low-End (analogowe) biuro
  • High-End (Digital) biuro

zasób here

0

Szczegóły stanu dokowania są uwzględniane jako dodatkowe w przyklejanej transmisji akcji ACTION_DOCK_EVENT. Ponieważ jest lepka, nie musisz rejestrować BroadcastReceiver. Możesz po prostu wywołać registerReceiver() przekazując null jako odbiornik, jak pokazano w następnym fragmencie.

 mContext = getApplicationContext(); 
     IntentFilter ifilter = new IntentFilter(Intent.ACTION_DOCK_EVENT); 
     Intent dockStatus = registerReceiver(null, ifilter); 

Można wyodrębnić bieżący stan dokującą z EXTRA_DOCK_STATE dodatkowo:

 int dockState = (dockStatus == null ? 
      Intent.EXTRA_DOCK_STATE_UNDOCKED : 
      dockStatus.getIntExtra(Intent.EXTRA_DOCK_STATE, -1)); 
     boolean isDocked = dockState != Intent.EXTRA_DOCK_STATE_UNDOCKED; 
     boolean isCar = dockState == Intent.EXTRA_DOCK_STATE_CAR; 

Gdy urządzenie jest zadokowany lub odłączony, akcja ACTION_DOCK_EVENT jest nadawany. Aby monitorować zmiany w stanie stacji dokującej urządzenia, po prostu zarejestruj odbiornik transmisji w manifeście aplikacji, jak pokazano w poniższym fragmencie: akcja android: name = "android.intent.action.ACTION_DOCK_EVENT"

Mam nadzieję, że to pomoże.

+0

Witaj w SO!Powinieneś dodać nieco więcej wyjaśnień w odpowiedzi, jako osobny akapit, krótko mówiąc, co robi kod lub jako komentarze w kodzie. Innymi słowy, "działający kod" w jakim celu, co robi? – hyde

+0

To nie odpowiada na pytanie. W Androidzie, co masz na myśli przez dokowanie? Nie wymaga to pisania kodów – user3144836

Powiązane problemy