NSUrlSession 類別

定義

協調一組資料傳輸工作,包括大型背景工作。

[Foundation.Register("NSURLSession", true)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.iOS, 7, 0, ObjCRuntime.PlatformArchitecture.All, null)]
[ObjCRuntime.Introduced(ObjCRuntime.PlatformName.MacOSX, 10, 9, ObjCRuntime.PlatformArchitecture.All, null)]
public class NSUrlSession : Foundation.NSObject
type NSUrlSession = class
    inherit NSObject
繼承
NSUrlSession
衍生
屬性

備註

在 iOS 7 和更新版本中, NSUrlSession 和相關類別是將較大型檔案傳送至 Web 和從 Web 傳送的慣用方式。

NSUrlSession 當應用程式位於背景時,下載即可運作。

不同于一般工作,背景傳輸不會限制為 10 分鐘,而是會在傳輸完成之前執行。 由於背景傳輸不會受限於任意時間限制,因此可用來上傳或下載大型檔案、在背景中自動更新內容等等。

下列範例顯示可非同步下載大型檔案的下載要求:

var config = NSUrlSessionConfiguration.BackgroundSessionConfiguration(Guid.NewGuid().ToString());
var session = NSUrlSession.FromConfiguration(config, new SimpleSessionDelegate(), new NSOperationQueue());
var downloadTask = session.CreateDownloadTask(NSUrlRequest.FromUrl(url));
//Begin download, asynchronously
downloadTask.Resume();
 ... 
class SimpleSessionDelegate : NSUrlSessionDownloadDelegate
{
  public override void DidFinishDownloading(NSUrlSession session, NSUrlSessionDownloadTask downloadTask, NSUrl location)
	{
		var file = File.OpenRead(location.Path);
     ...
	}
}

建構函式

NSUrlSession(IntPtr)

建立 Unmanaged 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。

NSUrlSession(NSObjectFlag)

呼叫衍生類別的建構函式,以略過初始化,並只配置 物件。

屬性

Class

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
ClassHandle

這個類別的控制碼。

Configuration

此會話的組態物件。

DebugDescription

此物件的開發人員有意義描述。

(繼承來源 NSObject)
Delegate

Foundation.INSUrlSessionDelegate 模型類別的實例,做為類別委派。

DelegateQueue

建立此作業時所使用的作業佇列。 唯讀。

Description

物件的描述,ToString 的 Objective-C 版本。

(繼承來源 NSObject)
Handle

處理非受控物件標記法) (指標。

(繼承來源 NSObject)
IsDirectBinding

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
IsProxy

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
RetainCount

傳回物件的目前 Objective-C 保留計數。

(繼承來源 NSObject)
Self

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
SessionDescription

會話的人類可讀描述。

SharedSession

共用單一物件。

Superclass

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
SuperHandle

用來表示這個 NSObject 基類中方法的控制碼。

(繼承來源 NSObject)
WeakDelegate

物件,可回應此類型的委派通訊協定

Zone

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)

方法

AddObserver(NSObject, NSString, NSKeyValueObservingOptions, IntPtr)

使用 NSString keyPath) 在外部 (註冊要觀察的物件。   觀察到的變更會分派至觀察者的 物件 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(繼承來源 NSObject)
AddObserver(NSObject, String, NSKeyValueObservingOptions, IntPtr)

使用字串 keyPath) 在外部 (註冊要觀察的物件。   觀察到的變更會分派至觀察者的 物件 ObserveValue(NSString, NSObject, NSDictionary, IntPtr) 方法。

(繼承來源 NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

使用任意方法註冊要從外部觀察到的物件。

(繼承來源 NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

使用任意方法註冊要從外部觀察到的物件。

(繼承來源 NSObject)
AwakeFromNib()

從 nib 檔案載入物件之後呼叫。 覆寫程式必須呼叫基底。AwakeFromNib () 。

(繼承來源 NSObject)
BeginInvokeOnMainThread(Action)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

在主要 UI 執行緒上以非同步方式叫用指定的程式碼。

(繼承來源 NSObject)
Bind(NSString, NSObject, String, NSDictionary)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
Bind(String, NSObject, String, NSDictionary)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
BindingInfo(String)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
BindingOptionDescriptions(String)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
BindingValueClass(String)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
CommitEditing()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
CommitEditing(NSObject, Selector, IntPtr)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
ConformsToProtocol(IntPtr)

叫用 以判斷這個物件是否實作指定的通訊協定。

(繼承來源 NSObject)
Copy()

執行基礎 Objective-C 物件的複本。

(繼承來源 NSObject)
CreateBidirectionalStream(NSNetService)

協調一組資料傳輸工作,包括大型背景工作。

CreateBidirectionalStream(String, nint)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTask(NSUrl)

根據指定的 URL 建立 HTTP 要求。

CreateDataTask(NSUrl, NSUrlSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTask(NSUrlRequest)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTask(NSUrlRequest, NSUrlSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTaskAsync(NSUrl)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTaskAsync(NSUrl, NSUrlSessionDataTask)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTaskAsync(NSUrlRequest)

協調一組資料傳輸工作,包括大型背景工作。

CreateDataTaskAsync(NSUrlRequest, NSUrlSessionDataTask)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTask(NSData)

建立先前已取消或失敗下載的下載工作。

CreateDownloadTask(NSUrl)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTask(NSUrl, NSUrlDownloadSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTask(NSUrlRequest)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTask(NSUrlRequest, NSUrlDownloadSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTaskAsync(NSUrl)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTaskAsync(NSUrl, NSUrlSessionDownloadTask)

以非同步方式將 URL 資源下載至暫存檔案。

CreateDownloadTaskAsync(NSUrlRequest)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTaskAsync(NSUrlRequest, NSUrlSessionDownloadTask)

以非同步方式將 URL 資源下載至暫存檔案。

CreateDownloadTaskFromResumeData(NSData, NSUrlDownloadSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTaskFromResumeDataAsync(NSData)

協調一組資料傳輸工作,包括大型背景工作。

CreateDownloadTaskFromResumeDataAsync(NSData, NSUrlSessionDownloadTask)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTask(NSUrlRequest)

建立上傳工作。

CreateUploadTask(NSUrlRequest, NSData)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTask(NSUrlRequest, NSData, NSUrlSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTask(NSUrlRequest, NSUrl)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTask(NSUrlRequest, NSUrl, NSUrlSessionResponse)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTaskAsync(NSUrlRequest, NSData)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTaskAsync(NSUrlRequest, NSData, NSUrlSessionUploadTask)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTaskAsync(NSUrlRequest, NSUrl)

協調一組資料傳輸工作,包括大型背景工作。

CreateUploadTaskAsync(NSUrlRequest, NSUrl, NSUrlSessionUploadTask)

協調一組資料傳輸工作,包括大型背景工作。

DangerousAutorelease()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
DangerousRelease()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
DangerousRetain()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
DidChange(NSKeyValueChange, NSIndexSet, NSString)

指出對多關聯性的索引發生變更。

(繼承來源 NSObject)
DidChange(NSString, NSKeyValueSetMutationKind, NSSet)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
DidChangeValue(String)

表示在指定的索引鍵上發生變更。

(繼承來源 NSObject)
Dispose()

釋放 NSObject 物件所使用的資源。

(繼承來源 NSObject)
Dispose(Boolean)

釋放 NSObject 物件所使用的資源。

(繼承來源 NSObject)
DoesNotRecognizeSelector(Selector)

表示這個物件無法辨識指定的選取器。

(繼承來源 NSObject)
Equals(NSObject)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
Equals(Object)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
ExposedBindings()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
FinishTasksAndInvalidate()

允許任何未完成的工作完成之後,使 物件失效。

Flush(Action)

協調一組資料傳輸工作,包括大型背景工作。

FlushAsync()

協調一組資料傳輸工作,包括大型背景工作。

FromConfiguration(NSUrlSessionConfiguration)

從指定的組態建立 NSUrlSession 的 Factory 方法。

FromConfiguration(NSUrlSessionConfiguration, INSUrlSessionDelegate, NSOperationQueue)

協調一組資料傳輸工作,包括大型背景工作。

FromConfiguration(NSUrlSessionConfiguration, NSUrlSessionDelegate, NSOperationQueue)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

FromWeakConfiguration(NSUrlSessionConfiguration, NSObject, NSOperationQueue)

協調一組資料傳輸工作,包括大型背景工作。

GetAllTasks(NSUrlSessionAllPendingTasks)

協調一組資料傳輸工作,包括大型背景工作。

GetAllTasksAsync()

協調一組資料傳輸工作,包括大型背景工作。

GetBindingInfo(NSString)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetBindingOptionDescriptions(NSString)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetBindingValueClass(NSString)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetDictionaryOfValuesFromKeys(NSString[])

擷取指定索引鍵的值。

(繼承來源 NSObject)
GetHashCode()

產生目前實例的雜湊碼。

(繼承來源 NSObject)
GetMethodForSelector(Selector)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetNativeField(String)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetNativeHash()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
GetTasks(NSUrlSessionPendingTasks)
已淘汰.

要求暫止工作群組 (資料、上傳和下載) 。

GetTasks2(NSUrlSessionPendingTasks2)

協調一組資料傳輸工作,包括大型背景工作。

GetTasks2Async()

要求暫止工作群組 (資料、上傳和下載) 。

GetTasksAsync()
已淘汰.

要求暫止工作群組 (資料、上傳和下載) 。

Init()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
InitializeHandle(IntPtr)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
InitializeHandle(IntPtr, String)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
InvalidateAndCancel()

取消所有未處理的工作,並使會話物件失效。

Invoke(Action, Double)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
Invoke(Action, TimeSpan)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
InvokeOnMainThread(Action)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
InvokeOnMainThread(Selector, NSObject)

在主要 UI 執行緒上,以同步方式叫用指定的程式碼。

(繼承來源 NSObject)
IsEqual(NSObject)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
IsKindOfClass(Class)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
IsMemberOfClass(Class)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
MarkDirty()

將一般對等物件升階 (IsDirectBinding 為 true) 為 toggleref 物件。

(繼承來源 NSObject)
MutableCopy()

建立指定之 NSObject 的可變動複本。

(繼承來源 NSObject)
ObjectDidEndEditing(NSObject)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
ObserveValue(NSString, NSObject, NSDictionary, IntPtr)

表示相對於這個物件的指定 keyPath 的值已變更。

(繼承來源 NSObject)
PerformSelector(Selector)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PerformSelector(Selector, NSObject)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PerformSelector(Selector, NSObject, Double)

叫用目前實例上的選取器,如果 obj 不是 Null,它會傳遞這個做為其單一參數。

(繼承來源 NSObject)
PerformSelector(Selector, NSObject, Double, NSString[])

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PerformSelector(Selector, NSObject, NSObject)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PerformSelector(Selector, NSThread, NSObject, Boolean, NSString[])

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
PrepareForInterfaceBuilder()

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
RemoveObserver(NSObject, NSString)

停止指定的觀察者接收指定 keyPath 變更值的進一步通知。

(繼承來源 NSObject)
RemoveObserver(NSObject, NSString, IntPtr)

停止指定的觀察者接收指定 keyPath 和內容的變更值進一步通知。

(繼承來源 NSObject)
RemoveObserver(NSObject, String)

停止指定的觀察者接收指定 keyPath 變更值的進一步通知。

(繼承來源 NSObject)
RemoveObserver(NSObject, String, IntPtr)

停止指定的觀察者接收指定 keyPath 和內容的變更值進一步通知。

(繼承來源 NSObject)
Reset(Action)

協調一組資料傳輸工作,包括大型背景工作。

ResetAsync()

協調一組資料傳輸工作,包括大型背景工作。

RespondsToSelector(Selector)

這個物件是否辨識指定的選取器。

(繼承來源 NSObject)
SetNativeField(String, NSObject)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
SetNilValueForKey(NSString)

將指定索引鍵的值設定為 null。

(繼承來源 NSObject)
SetValueForKey(NSObject, NSString)

將索引鍵所指定的屬性值設定為指定的值。

(繼承來源 NSObject)
SetValueForKeyPath(IntPtr, NSString)

建立 Unmanaged 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。

(繼承來源 NSObject)
SetValueForKeyPath(NSObject, NSString)

設定可以使用索引鍵路徑到達的屬性值。

(繼承來源 NSObject)
SetValueForUndefinedKey(NSObject, NSString)

表示嘗試將值寫入未定義的索引鍵。 如果未覆寫,會引發 NSUndefinedKeyException。

(繼承來源 NSObject)
SetValuesForKeysWithDictionary(NSDictionary)

將這個 NSObject 的值設定為指定字典中的值。

(繼承來源 NSObject)
ToString()

傳回目前實例值的字串表示。

(繼承來源 NSObject)
Unbind(NSString)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
Unbind(String)
已淘汰.

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
ValueForKey(NSString)

傳回與指定索引鍵相關聯的屬性值。

(繼承來源 NSObject)
ValueForKeyPath(NSString)

傳回可以使用 keypath 到達的屬性值。

(繼承來源 NSObject)
ValueForUndefinedKey(NSString)

表示嘗試讀取未定義索引鍵的值。 如果未覆寫,會引發 NSUndefinedKeyException。

(繼承來源 NSObject)
WillChange(NSKeyValueChange, NSIndexSet, NSString)

表示指定索引鍵中指定索引的值即將變更。

(繼承來源 NSObject)
WillChange(NSString, NSKeyValueSetMutationKind, NSSet)

協調一組資料傳輸工作,包括大型背景工作。

(繼承來源 NSObject)
WillChangeValue(String)

表示指定索引鍵的值即將變更。

(繼承來源 NSObject)

擴充方法

ObjectDidBeginEditing(NSObject, INSEditor)

協調一組資料傳輸工作,包括大型背景工作。

ObjectDidEndEditing(NSObject, INSEditor)

協調一組資料傳輸工作,包括大型背景工作。

GetValidModes(NSObject, NSFontPanel)

協調一組資料傳輸工作,包括大型背景工作。

ValidateToolbarItem(NSObject, NSToolbarItem)

協調一組資料傳輸工作,包括大型背景工作。

GetDebugDescription(INSObjectProtocol)

協調一組資料傳輸工作,包括大型背景工作。

AcceptsPreviewPanelControl(NSObject, QLPreviewPanel)

協調一組資料傳輸工作,包括大型背景工作。

BeginPreviewPanelControl(NSObject, QLPreviewPanel)

協調一組資料傳輸工作,包括大型背景工作。

EndPreviewPanelControl(NSObject, QLPreviewPanel)

協調一組資料傳輸工作,包括大型背景工作。

GetAccessibilityCustomRotors(NSObject)

取得物件適用的 this 物件陣列 UIAccessibilityCustomRotor

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

設定適用于 this 物件的陣列 UIAccessibilityCustomRotor

適用於

另請參閱