GCKMediaMetadata 类

GCKMediaMetadata 类参考文档

概览

媒体元数据的容器。

元数据有媒体类型、可选图片列表和一组元数据字段。常见元数据字段的键已预定义为常量,但应用可以随意定义和使用它自己的其他字段。

预定义字段的值具有预定义的类型。例如,曲目编号为 NSInteger,而创建日期为 NSString,其中包含 ISO-8601 格式的日期和时间。如果尝试在某个字段中存储错误类型的值,则会引发 NSInvalidArgumentException

请注意,Cast 协议会限制指定媒体类型可以使用哪些元数据字段。当 MediaMetadata 对象被序列化为 JSON 以传送到 Cast 接收器时,指定媒体类型不支持的所有预定义字段都不会包含在序列化表单中,但任何应用定义的字段将始终包含在内。预定义字段的完整列表如下所示:

字段值类型有效的元数据类型
kGCKMetadataKeyCreationDate NSDateGCKMediaMetadataTypePhoto
kGCKMetadataKeyReleaseDate NSDateGCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyBroadcastDate NSDateGCKMediaMetadataTypeTVShow
kGCKMetadataKeyTitle NSStringGCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypePhoto
kGCKMetadataKeySubtitle NSStringGCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovie
kGCKMetadataKeyArtist NSStringGCKMediaMetadataTypeGenericGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypePhoto
kGCKMetadataKeyAlbumArtist NSStringGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyAlbumTitle NSStringGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyComposer NSStringGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyDiscNumber NSIntegerGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyTrackNumber NSIntegerGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeySeasonNumber NSIntegerGCKMediaMetadataTypeTVShow
kGCKMetadataKeyEpisodeNumber NSIntegerGCKMediaMetadataTypeTVShow
kGCKMetadataKeySeriesTitle NSStringGCKMediaMetadataTypeTVShow
kGCKMetadataKeyStudio NSStringGCKMediaMetadataTypeMovie
kGCKMetadataKeyWidth NSIntegerGCKMediaMetadataTypePhoto
kGCKMetadataKeyHeight NSIntegerGCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationName NSStringGCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLatitude 双精度GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLongitude 双精度GCKMediaMetadataTypePhoto

继承 NSObject。实现 <NSDuplicate>。

实例方法摘要

(instancetype) - initWithMetadataType:
 初始化具有指定媒体类型的新空 MediaMetadata。更多...
 
(instancetype) - init
 使用通用元数据类型进行初始化。更多...
 
(GCKMediaMetadataType- metadataType
 元数据类型。更多...
 
(NSArray *) - images
 获取图片列表。更多...
 
(void) - removeAllMediaImages
 移除当前的所有图片。更多...
 
(void) - addImage:
 将图片添加到图片列表中。更多...
 
(BOOL) - containsKey:
 测试对象是否包含具有指定键的字段。更多...
 
(NSArray< NSString * > *) - allKeys
 返回对象中存在的所有字段的一组键。更多...
 
(id __nullable) - objectForKey:
 读取字段的值。更多...
 
(void) - setString:forKey:
 将值存储在字符串字段中。更多...
 
(NSString *__nullable) - stringForKey:
 读取字符串字段的值。更多...
 
(void) - setInteger:forKey:
 将值存储在整数字段中。更多...
 
(NSInteger) - integerForKey:
 读取整数字段的值。更多...
 
(NSInteger) - integerForKey:defaultValue:
 读取整数字段的值。更多...
 
(void) - setDouble:forKey:
 将值存储在 double 字段中。更多...
 
(double) - doubleForKey:
 读取 double 字段的值。更多...
 
(double) - doubleForKey:defaultValue:
 读取 double 字段的值。更多...
 
(void) - setDate:forKey:
 将日期值存储为日期的受限 ISO-8601 表示形式。更多...
 
(NSDate *__nullable) - dateForKey:
 从日期的受限 ISO-8601 表示中读取日期字段的值。更多...
 
(NSString *__nullable) - dateAsStringForKey:
 以字符串形式读取日期字段的值。更多...
 

公共属性

NSString *const kGCKMetadataKeyCreationDate
 字符串键:创建日期。更多...
 
NSString *const kGCKMetadataKeyReleaseDate
 字符串键:发布日期。更多...
 
NSString *const kGCKMetadataKeyBroadcastDate
 字符串键:广播日期。更多...
 
NSString *const kGCKMetadataKeyTitle
 字符串键:Title。更多...
 
NSString *const kGCKMetadataKeySubtitle
 字符串键:Subtitle。更多...
 
NSString *const kGCKMetadataKeyArtist
 字符串键:艺术家。更多...
 
NSString *const kGCKMetadataKeyAlbumArtist
 字符串键:专辑音乐人。更多...
 
NSString *const kGCKMetadataKeyAlbumTitle
 字符串键:影集标题。更多...
 
NSString *const kGCKMetadataKeyComposer
 字符串键:Composer。更多...
 
NSString *const kGCKMetadataKeyDiscNumber
 整数键:磁盘编号。更多...
 
NSString *const kGCKMetadataKeyTrackNumber
 整数键:轨道编号。更多...
 
NSString *const kGCKMetadataKeySeasonNumber
 整数键:剧季编号。更多...
 
NSString *const kGCKMetadataKeyEpisodeNumber
 整数键:剧集号。更多...
 
NSString *const kGCKMetadataKeySeriesTitle
 字符串键:系列标题。更多...
 
NSString *const kGCKMetadataKeyStudio
 字符串键:Studio。更多...
 
NSString *const kGCKMetadataKeyWidth
 整数键:宽度。更多...
 
NSString *const kGCKMetadataKeyHeight
 整数键:Height。更多...
 
NSString *const kGCKMetadataKeyLocationName
 字符串键:位置名称。更多...
 
NSString *const kGCKMetadataKeyLocationLatitude
 双键:位置纬度。更多...
 
NSString *const kGCKMetadataKeyLocationLongitude
 双键:位置经度。更多...
 

属性摘要

GCKMediaMetadataType metadataType
 元数据类型。更多...
 

方法详细信息

- (instancetype) initWithMetadataType: (GCKMediaMetadataType metadataType

初始化具有指定媒体类型的新空 MediaMetadata。

指定的初始化程序。

Parameters
metadataTypeThe media type; one of the GCKMediaMetadataType constants, or a value greater than or equal to GCKMediaMetadataTypeUser for custom media types.
- (instancetype) init

使用通用元数据类型进行初始化。

- (GCKMediaMetadataType) metadataType

元数据类型。

- (NSArray *) images

获取图片列表。

- (void) removeAllMediaImages

移除当前的所有图片。

- (void) addImage: (GCKImage *)  image

将图片添加到图片列表中。

Parameters
imageThe image to add.
- (BOOL) containsKey: (NSString *)  key

测试对象是否包含具有指定键的字段。

Parameters
keyThe key.
返回
如果该字段存在,则为
YES,否则为 NO
- (NSArray<NSString *> *) allKeys

返回对象中存在的所有字段的一组键。

- (id __nullable) objectForKey: (NSString *)  key

读取字段的值。

Parameters
keyThe key for the field.
返回
字段的值,如果未设置字段,则为 nil
- (void) setString: (NSString *)  value
forKey: (NSString *)  key 

将值存储在字符串字段中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外情况
NSInvalidArgumentException
- (NSString *__nullable) stringForKey: (NSString *)  key

读取字符串字段的值。

Parameters
keyThe key for the field.
返回
字段的值,如果未设置字段,则为 nil
例外情况
NSInvalidArgumentException
- (void) setInteger: (NSInteger)  value
forKey: (NSString *)  key 

将值存储在整数字段中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外情况
NSInvalidArgumentException
- (NSInteger) integerForKey: (NSString *)  key

读取整数字段的值。

Parameters
keyThe key for the field.
返回
字段的值,如果未设置字段,则为 0。
例外情况
NSInvalidArgumentException
- (NSInteger) integerForKey: (NSString *)  key
defaultValue: (NSInteger)  defaultValue 

读取整数字段的值。

Parameters
keyThe key for the field.
defaultValueThe value to return if the field has not been set.
返回
字段的值,如果未设置字段,则为给定默认值。
例外情况
NSInvalidArgumentException
- (void) setDouble: (double)  value
forKey: (NSString *)  key 

将值存储在 double 字段中。

Parameters
valueThe new value for the field.
keyThe key for the field.
例外情况
NSInvalidArgumentException键不是 double 字段。
- (double) doubleForKey: (NSString *)  key

读取 double 字段的值。

Parameters
keyThe key for the field.
返回
字段的值,如果未设置字段,则为 0。
例外情况
NSInvalidArgumentException键不是 double 字段。
- (double) doubleForKey: (NSString *)  key
defaultValue: (double)  defaultValue 

读取 double 字段的值。

Parameters
defaultValueThe value to return if the field has not been set.
keyThe key for the field.
返回
字段的值,如果未设置字段,则为给定默认值。
例外情况
NSInvalidArgumentException键不是 double 字段。
- (void) setDate: (NSDate *)  date
forKey: (NSString *)  key 

将日期值存储为日期的受限 ISO-8601 表示形式。

Parameters
dateThe new value for the field.
keyThe key for the field.
例外情况
NSInvalidArgumentException
- (NSDate *__nullable) dateForKey: (NSString *)  key

从日期的受限 ISO-8601 表示中读取日期字段的值。

Parameters
keyThe field name.
返回
日期或 nil(如果尚未设置此字段)。
例外情况
NSInvalidArgumentException
- (NSString *__nullable) dateAsStringForKey: (NSString *)  key

以字符串形式读取日期字段的值。

Parameters
keyThe field name.
返回
以字符串形式表示的日期,其中包含日期的受限 ISO-8601 表示形式。如果未设置此字段,则为 nil
例外情况
NSInvalidArgumentException

成员数据文档

- (NSString* const) kGCKMetadataKeyCreationDate

字符串键:创建日期。

该值为创建媒体的日期和/或时间,采用 ISO-8601 格式。例如,可以是拍照或音乐片段的日期和时间。

- (NSString* const) kGCKMetadataKeyReleaseDate

字符串键:发布日期。

该值为媒体的发布日期和/或时间,采用 ISO-8601 格式。例如,这可能是电影或音乐专辑的发布日期。

- (NSString* const) kGCKMetadataKeyBroadcastDate

字符串键:广播日期。

该值为媒体首次广播的日期和/或时间,采用 ISO-8601 格式。例如,该日期可以是电视节目剧集首次播出的日期。

- (NSString* const) kGCKMetadataKeyTitle

字符串键:Title。

媒体的标题。例如,歌曲、电影或电视节目剧集的名称。此值适合显示。

- (NSString* const) kGCKMetadataKeySubtitle

字符串键:Subtitle。

媒体的副标题。此值适合显示。

- (NSString* const) kGCKMetadataKeyArtist

字符串键:艺术家。

创建媒体内容的音乐人的姓名。例如,您可以输入音乐人、表演者或摄影师的名字。此值适合显示。

- (NSString* const) kGCKMetadataKeyAlbumArtist

字符串键:专辑音乐人。

制作专辑的音乐人的姓名。例如,在 DJ 合辑等合辑中,专辑的音乐人不一定与专辑中单曲的音乐人相同。此值适合显示。

- (NSString* const) kGCKMetadataKeyAlbumTitle

字符串键:影集标题。

音乐曲目所属的专辑的标题。此值适合显示。

- (NSString* const) kGCKMetadataKeyComposer

字符串键:Composer。

音乐曲目的作曲者的名字。此值适合显示。

- (NSString* const) kGCKMetadataKeyDiscNumber

整数键:磁盘编号。

1 首曲目所属的多张专辑的光盘编号(从 1 开始)。

- (NSString* const) kGCKMetadataKeyTrackNumber

整数键:轨道编号。

专辑光盘中的曲目曲目编号。通常从 1 开始统计曲目编号,但如果它是专辑开头处的“隐藏曲目”,则此值可能为 0。

- (NSString* const) kGCKMetadataKeySeasonNumber

整数键:剧季编号。

电视节目剧集所属的剧季编号。通常从 1 开始统计剧季编号,但如果这是电视连续剧正式开始前的“试看”剧集,则此值可能会为 0。

- (NSString* const) kGCKMetadataKeyEpisodeNumber

整数键:剧集号。

指定剧季中某个剧集的数量。通常,从 1 开始统计剧集,但如果不是“第一”季的官方剧集,则此值可能会为 0。

- (NSString* const) kGCKMetadataKeySeriesTitle

字符串键:系列标题。

系列的名称。例如,此名称可能是某个电视节目或一系列相关音乐专辑的名称。此值适合显示。

- (NSString* const) kGCKMetadataKeyStudio

字符串键:Studio。

制作某种媒体的录音棚的名称。例如,这可能是电影工作室或唱片公司的名称。此值适合显示。

- (NSString* const) kGCKMetadataKeyWidth

整数键:宽度。

媒体的宽度(以像素为单位)。这通常用于提供照片的尺寸。

- (NSString* const) kGCKMetadataKeyHeight

整数键:Height。

媒体的高度,以像素为单位。这通常用于提供照片的尺寸。

- (NSString* const) kGCKMetadataKeyLocationName

字符串键:位置名称。

创建媒体的位置的名称。例如,这可能是照片拍摄地点或电影主要拍摄地点。此值适合显示。

- (NSString* const) kGCKMetadataKeyLocationLatitude

双键:位置纬度。

创建媒体的地理区域的纬度组成部分。例如,这可能是照片拍摄地点或电影主要拍摄地点。

- (NSString* const) kGCKMetadataKeyLocationLongitude

双键:位置经度。

创建媒体的地理区域的经度组件。例如,这可能是照片拍摄地点或电影主要拍摄地点。

属性详情

- (GCKMediaMetadataType) metadataType
readnonatomicassign

元数据类型。