Поделиться через


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 и связанные классы являются предпочтительным способом передачи больших файлов в Интернет и из интернета.

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)

Конструктор, используемый при создании управляемых представлений неуправляемых объектов; Вызывается средой выполнения.

NSUrlSession(NSObjectFlag)

Конструктор для вызова производных классов для пропуска инициализации и просто выделения объекта.

Свойства

Class

Координирует набор задач передачи данных, включая большие фоновые задачи.

(Унаследовано от NSObject)
ClassHandle

Дескриптор для этого класса.

Configuration

Объект конфигурации для этого сеанса.

DebugDescription

Понятное для разработчика описание этого объекта.

(Унаследовано от NSObject)
Delegate

Экземпляр класса модели Foundation.INSUrlSessionDelegate, который выступает в качестве делегата класса.

DelegateQueue

Очередь операций, используемая при создании этой очереди. Только для чтения.

Description

Описание объекта , версия Objective-C ToString.

(Унаследовано от 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)

Регистрирует объект для наблюдения извне (с помощью string keyPath).   Наблюдаемые изменения отправляются в объектный ObserveValue(NSString, NSObject, NSDictionary, IntPtr) метод наблюдателя.

(Унаследовано от NSObject)
AddObserver(NSString, NSKeyValueObservingOptions, Action<NSObservedChange>)

Регистрирует объект для наблюдения извне с помощью произвольного метода.

(Унаследовано от NSObject)
AddObserver(String, NSKeyValueObservingOptions, Action<NSObservedChange>)

Регистрирует объект для наблюдения извне с помощью произвольного метода.

(Унаследовано от NSObject)
AwakeFromNib()

Вызывается после загрузки объекта из nib-файла. Переопределители должны вызывать base. AwakeFromNib().

(Унаследовано от NSObject)
BeginInvokeOnMainThread(Action)

Координирует набор задач передачи данных, включая большие фоновые задачи.

(Унаследовано от NSObject)
BeginInvokeOnMainThread(Selector, NSObject)

Асинхронно вызывает указанный код в основном потоке пользовательского интерфейса.

(Унаследовано от 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)

Создает HTTP-запрос на основе указанного URL-адреса.

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 из указанной конфигурации.

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)

Синхронно вызывает указанный код в основном потоке пользовательского интерфейса.

(Унаследовано от 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)

Конструктор, используемый при создании управляемых представлений неуправляемых объектов; Вызывается средой выполнения.

(Унаследовано от 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)

Возвращает значение свойства, доступ к которому можно получить с помощью пути к ключу.

(Унаследовано от 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)

Возвращает массив объектов, подходящих UIAccessibilityCustomRotor для this объекта .

SetAccessibilityCustomRotors(NSObject, UIAccessibilityCustomRotor[])

Задает массив объектов, подходящих UIAccessibilityCustomRotor для this объекта .

Применяется к

См. также раздел