---
title: AVExternalStorageDevice
framework: avfoundation
role: symbol
role_heading: Class
path: avfoundation/avexternalstoragedevice
---

# AVExternalStorageDevice

Represents a physical external storage device that stores media assets.

## Declaration

```swift
class AVExternalStorageDevice
```

## Overview

Overview Each storage device instance corresponds to a physical external storage device where the system can media assets. You can access all of the currently available external storage devices with the AVExternalStorageDeviceDiscoverySession object’s externalStorageDevices property.

## Topics

### Checking permission to generate URLs

- [authorizationStatus](avfoundation/avexternalstoragedevice/authorizationstatus.md)

### Requesting permission to generate URLs

- [requestAccess(completionHandler:)](avfoundation/avexternalstoragedevice/requestaccess(completionhandler:).md)

### Generating URLs for image assets

- [nextAvailableURLs(withPathExtensions:)](avfoundation/avexternalstoragedevice/nextavailableurls(withpathextensions:).md)

### Inspecting a storage device

- [isConnected](avfoundation/avexternalstoragedevice/isconnected.md)
- [displayName](avfoundation/avexternalstoragedevice/displayname.md)
- [uuid](avfoundation/avexternalstoragedevice/uuid.md)
- [freeSize](avfoundation/avexternalstoragedevice/freesize.md)
- [totalSize](avfoundation/avexternalstoragedevice/totalsize.md)
- [isNotRecommendedForCaptureUse](avfoundation/avexternalstoragedevice/isnotrecommendedforcaptureuse.md)
- [reasonsNotRecommendedForCaptureUse](avfoundation/avexternalstoragedevice/reasonsnotrecommendedforcaptureuse.md)
- [AVExternalStorageDevice.ReasonNotRecommendedForCaptureUse](avfoundation/avexternalstoragedevice/reasonnotrecommendedforcaptureuse.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Capture devices

- [Choosing a capture device](avfoundation/choosing-a-capture-device.md)
- [Adopting smart framing in your camera app](avfoundation/adopting-smart-framing-in-your-camera-app.md)
- [AVCaptureDevice](avfoundation/avcapturedevice.md)
- [AVCaptureDeviceInput](avfoundation/avcapturedeviceinput.md)
- [AVContinuityDevice](avfoundation/avcontinuitydevice.md)
- [AVExternalStorageDeviceDiscoverySession](avfoundation/avexternalstoragedevicediscoverysession.md)
