Initializer

init(domain:type:name:port:)

Initializes the receiver for publishing a network service of type type at the socket location specified by domain, name, and port. レシーバを、型typeのネットワークサービスを出版するために、domainname、そしてportによって指定されたソケットロケーションで、初期化します。

Declaration 宣言

init(domain: String, 
type: String, 
name: String, 
port: Int32)

Parameters パラメータ

domain

The domain for the service. To use the default registration domains, pass in an empty string (@""). To limit registration to the local domain, use @"local.". サービスに対するドメイン。省略時の登録ドメインを使うには、空の文字列を渡してください(@"")。登録をローカルドメインに制限するには、@"local."を使ってください。

You can also use a NSNetServiceBrowser object to obtain a list of possible domains in which you can publish your service. あなたはまたNSNetServiceBrowserオブジェクトを使って、それにおいてあなたのサービスをあなたが出版することが可能なドメインのリストを取得できます。

type

The network service type. ネットワークサービス型。

type must contain both the service type and transport layer information. To ensure that the mDNS responder searches for services, as opposed to hosts, prefix both the service name and transport layer name with an underscore character (“_”). For example, to search for an HTTP service on TCP, you would use the type string "_http._tcp.". Note that the period character at the end of the string, which indicates that the domain name is an absolute name, is required. typeは、サービス型およびトランスポート層情報の両方を含まなければなりません。mDNSレスポンダがサービスを、ホストではなくて、検索するのを確実にするには、サービス名とトランスポート層名の両方にアンダースコア文字(“_”)で接頭辞をつけてください。例えば、HTTPサービスをTCP上で検索するには、あなたは型文字列 "_http._tcp." を使うでしょう。文字列の最後で、ドメイン名が完全名であるのを指し示す、ピリオド文字が必要であることに注意してください。

name

The name by which the service is identified to the network. The name must be unique. If you pass the empty string (@""), the system automatically advertises your service using the computer name as the service name. それによってサービスがネットワークに識別される名前。名前は特有でなければなりません。あなたが空文字列(@"")を渡すならば、システムは自動的にあなたのサービスをコンピュータ名をサービス名として使って宣伝します。

port

The port on which the service is published. それの上でサービスが出版されるポート。

If you specify the NSNetServiceListenForConnections flag, you may pass zero (0), in which case the service automatically allocates an arbitrary (ephemeral) port for your service. When the delegate’s netServiceDidPublish(_:) is called, you can determine the actual port chosen by calling the service object’s NetService method or accessing the corresponding property. あなたがNSNetServiceListenForConnectionsフラグを指定するならば、あなたはゼロ(0)を渡すかもしれません、その場合にはサービスは自動的に随意の(短期間使用の)ポートをあなたのサービスに対して割り当てます。委任先のnetServiceDidPublish(_:)が呼び出される場合、あなたは選択される実際のポートを決定することがサービスオブジェクトの持つNetServiceメソッドを呼び出すことまたは対応するプロパティにアクセスすることによって可能です。

If your app is listening for connections on its own, the value of port must be a port number acquired by your application for the service. あなたのアプリが独自に接続に対して聞き耳を立てているならば、portの値は、あなたのアプリケーションによってそのサービスに対して入手されるポート番号でなければなりません。

Discussion 議論

You use this method to create a service that you wish to publish on the network. Although you can also use this method to create a service you wish to resolve on the network, it is generally more appropriate to use the init(domain:type:name:) method instead. あなたはこのメソッドを使ってあなたがネットワーク上で出版することを願うサービスを作成します。あなたはまたこのメソッドを使ってあなたがネットワーク上で解決することを願うサービスを作成できるけれども、init(domain:type:name:)メソッドを代わりに使うのが大抵もっと適切です。

When publishing a service, you must provide valid arguments in order to advertise your service correctly. If the host computer has access to multiple registration domains, you must create separate NSNetService objects for each domain. If you attempt to publish in a domain for which you do not have registration authority, your request may be denied. サービスを出版する場合、あなたは有効な引数を、あなたのサービスを正しく宣伝する手段として提供しなければなりません。ホストコンピュータが複数の登録ドメインにアクセスを持つならば、あなたは別々のNSNetServiceオブジェクトを各ドメインに作成しなければなりません。あなたがそれに対して登録権限を持たないドメインに出版を試みる場合、あなたの要請は否定されるかもしれません。

It is acceptable to use an empty string for the domain argument when publishing or browsing a service, but do not rely on this for resolution. 空の文字列をdomain引数に対して使うことは、サービスを出版またはブラウズする、しかし解決のためにこれを当てにしない場合に、受け入れられます。

This method is the designated initializer. このメソッドは、指定イニシャライザです。

See Also 参照

Creating Network Services ネットワークサービスを作成する