Iemand installeer die iPhone-weergawe van 'n VPN-kliënt op 'n Mac uit die M-reeks, dit maak oop, dit verbind, en die span besluit die platformvraagstuk is afgehandel. Dit is nie afgehandel nie. Wat afgehandel van bloot werkend skei, is die verskil tussen 'n programuitbreiding binne 'n gebruiker se sessie en 'n stelseluitbreiding met 'n globale konteks. Apple ondersteun wel pakkettonnel-verskaffers in die iOS-programme-op-Mac-model, en lys daardie reëling apart van inheemse macOS en Mac Catalyst. Wat daardie ondersteuning beteken, is smaller as wat dit klink. Dit sê die reëling word toegelaat, nie dat 'n gegewe program dit goed doen nie, of dat die tonnel dek wat jy aanneem nie.

Drie reëlings, een tabel

Drie reëlings is op 'n Mac ter sake, en hulle is nie onderling verwisselbaar nie. 'n Inheemse macOS-kliënt lewer 'n stelseluitbreiding, wat in 'n globale konteks loop en teenwoordig kan wees voordat iemand aanmeld. 'n iPhone-program op Apple Silicon lewer 'n programuitbreiding, wat binne die gebruiker se sessie loop en daarmee eindig. Mac Catalyst sit in dieselfde verpakkingsfamilie as die telefoonweergawe, maar is 'n ander teiken met sy eie ontplooiingsry.

Die vergelyking hieronder is die deel van Apple se ontplooiingsleiding wat werd is om te memoriseer, want dit beantwoord die meeste ontwerpvrae voordat 'n verskaffer gebel word.

ArrangementProvider packagingSession contextTypical distribution
iOS app on Apple SiliconApp extensionUser session onlyMac App Store
Native macOS clientSystem extensionGlobal, pre-login possibleDeveloper ID, notarised
Mac CatalystApp extensionUser session onlyMac App Store

Lees die verpakkingskolom voor die bemarkingsblad: dit voorspel wat by uitteken gebeur baie betroubaarder as enige kenmerke-lys.

Wat een suksesvolle versoek bewys

Die ry iOS-programme op Mac is 'n werklike ondersteunde reëling eerder as 'n simulator-truuk, en dit is hoekom die vraag bly terugkom. Dit erf ook verspreiding via die Mac App Store, so 'n program wie se uitgewer nooit vir Mac-beskikbaarheid ingetree het nie, sal nie verskyn nie, hoe toeskietlik die ontwikkelaardokumentasie ook al is.

'n Werkende verbinding bewys dat een versoek van een program sy bestemming bereik het. Dit inventariseer nie die blaaier se oplosser, die programme wat uitgesluit is, die tweede adresfamilie, of die plaaslike toestelle wat die gebruiker nog verwag om te bereik nie. 'n Pakkettonnel dra wat sy roetes en omvang sê dit dra, en daardie omvang kom uit die program se konfigurasie eerder as uit die tonnel se bestaan.

Die gaping is gewoonlik dekking per program

'n Kliënt wat alles routeer is maklik om te beskryf en maklik om te toets. Een wat 'n gedefinieerde lys programme insluit, het daardie reëls nodig om in hierdie ontplooiing geëerbiedig te word, nie net in die inheemse Mac-weergawe nie. Toegang tot plaaslike toestelle, uitsonderings vir gesplete tonnelering en enigiets wat afhang van 'n kieslysbalk-item wat die telefoonweergawe nooit gehad het nie, loop teen dieselfde muur vas.

Vra die omvang skriftelik, en toets dan die tweede geval eerder as die eerste. Enigiemand kan 'n blaaier demonstreer wat die internet deur die tonnel bereik.

Waar die twee in werking uiteenloop

Sessieleeftyd is die skerpste verskil en die mins sigbare in 'n demo. Apple dokumenteer programuitbreidings as sou hulle in 'n gebruiker-konteks loop en eindig wanneer die gebruiker uitteken, so 'n Mac wat na 'n aanmeldvenster herbegin, het geen tonnel tot iemand aanmeld nie. As die vereiste 'n masjien dek wat voor verifikasie beskerm moet wees, kan die telefoonweergawe dit nie bevredig nie, hoe die profiel ook al geskryf is.

Alles anders is betreklik kosmeties: 'n kieslysbalk-teenwoordigheid, hoe DNS vertoon word, of die program mag afsluit terwyl die tonnel bly staan. Dit is werklike bruikbaarheidsverskille, en dit is nie argitektuur-besluite nie, so rangskik hulle ná die sessie-vraag.

Besluit in 'n vaste volgorde

Orden die vrae doelbewus: onbewaakte dekking eerste, omvang per program tweede, verspreiding derde, koppelvlak-afwerking laaste. Net 'n inheemse kliënt met 'n stelseluitbreiding beantwoord die eerste een, en MDM plus 'n bestuurde profiel is hoe dit die toestel bereik. 'n iOS-program op Apple Silicon is 'n redelike antwoord wanneer iemand by die masjien sit, aanmeld en die tonnel vir daardie sessie wil hê.

Vra die uitgewer voor jy toewys drie konkrete vrae. Word die pakkettonnel-verskaffer in die iOS-programme-op-Mac-ontplooiing ondersteun, geld reëls per program daar, en wat gebeur by uitteken. 'n Verskaffer wat al drie in een boodskap beantwoord, ken sy ontplooiingsoppervlak; een wat net die eerste beantwoord, beskryf 'n program wat op 'n Mac oopmaak.

Verifieer dan op die masjien wat jy gaan ondersteun, met die rekening en poort wat jy werklik gaan gebruik. 'n Telefoonweergawe wat aan 'n toetspoort op een skootrekenaar koppel, is bewyse, nie 'n ontplooiing nie.

Verwante artikels