Ein transport som berre brukar eit proxy-augneblinksbilete ved oppstart, kan bli utdatert etter ei endring i nettverk eller plassering. For eit macOS SystemConfiguration-abonnement bør denne livssyklusen vere eksplisitt:

  1. Opprett ein SCDynamicStore-økt med ein callback.
  2. Registrer nøyaktige nøklar eller mønster med SCDynamicStoreSetNotificationKeys. Dette er separate matriser. Den globale proxynøkkelen er State:/Network/Global/Proxies; legg berre til tenestespesifikke inndata der transporten brukar dei.
  3. Ordne callback-levering via SCDynamicStoreSetDispatchQueue eller den relevante run-loop-kjelda. Berre registrering av namn køyrer ikkje callbacken.
  4. Ved varsel, les den effektive konfigurasjonen på nytt og oppdater det vidare arbeidet. Lista over endra nøklar er ikkje i seg sjølv den fullstendige nye policyen.
  5. Ved avslutning, deaktiver levering med ein nullkø før du frigjer eigne ressursar. Hald lageret og callback-konteksten i live til då.

Apples header definerer ei tom liste over endra nøklar som ein omstart av dynamikklagertenaren. Oppdater også relevant tilstand i det tilfellet, og forkast antekingar baserte på det førre innhaldet.

Dette er ein offentleg macOS-API-tilnærming. Apples headarar markerer dei tilsvarande funksjonane som privat SPI for iOS, så det same abonnementet er ikkje eit offentleg iOS-applikasjonsgrensesnitt.

Relaterte artiklar