GCKMediaMetadata 類別

GCKMediaMetadata 類別參照

總覽

媒體中繼資料的容器。

中繼資料包含媒體類型、選用的圖片清單,以及中繼資料欄位集合。常見中繼資料欄位的鍵會預先定義為常數,但應用程式可自行定義及使用其他欄位。

預先定義欄位的值具有預先定義的類型。舉例來說,曲目編號是 NSInteger,建立日期則是 NSString,其中包含日期和時間的 ISO-8601 表示法。如果嘗試在欄位中儲存錯誤類型的值,系統會引發 NSInvalidArgumentException

請注意,Cast 協定會限制特定媒體類型可用的中繼資料欄位。將 MediaMetadata 物件序列化為 JSON,並傳送至 Cast 接收器時,系統不會在序列化表單中加入特定媒體類型不支援的任何預先定義欄位,但一律會加入應用程式定義的欄位。預先定義的欄位完整清單如下:

欄位值類型有效的中繼資料類型
kGCKMetadataKeyCreationDate NSDate GCKMediaMetadataTypePhoto
kGCKMetadataKeyReleaseDate NSDate GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyBroadcastDate NSDate GCKMediaMetadataTypeTVShow
kGCKMetadataKeyTitle NSString GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovieGCKMediaMetadataTypeTVShowGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypePhoto
kGCKMetadataKeySubtitle NSString GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMovie
kGCKMetadataKeyArtist NSString GCKMediaMetadataTypeGenericGCKMediaMetadataTypeMusicTrackGCKMediaMetadataTypePhoto
kGCKMetadataKeyAlbumArtist NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyAlbumTitle NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyComposer NSString GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyDiscNumber NSInteger GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeyTrackNumber NSInteger GCKMediaMetadataTypeMusicTrack
kGCKMetadataKeySeasonNumber NSInteger GCKMediaMetadataTypeTVShow
kGCKMetadataKeyEpisodeNumber NSInteger GCKMediaMetadataTypeTVShow
kGCKMetadataKeySeriesTitle NSString GCKMediaMetadataTypeTVShow
kGCKMetadataKeyStudio NSString GCKMediaMetadataTypeMovie
kGCKMetadataKeyWidth NSInteger GCKMediaMetadataTypePhoto
kGCKMetadataKeyHeight NSInteger GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationName NSString GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLatitude double GCKMediaMetadataTypePhoto
kGCKMetadataKeyLocationLongitude double GCKMediaMetadataTypePhoto

繼承 NSObject。實作 <NSCopying>。

執行個體方法摘要

(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
 字串鍵:標題。更多...
 
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
 整數鍵:高度。更多...
 
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

字串鍵:標題。

媒體標題。例如歌曲、電影或電視節目集數的名稱。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeySubtitle

字串鍵:Subtitle。

媒體的子標題。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyArtist

字串鍵:藝人。

媒體的創作者名稱。例如音樂家、表演者或攝影師的姓名。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyAlbumArtist

字串鍵:專輯藝人。

製作專輯的藝人名稱。舉例來說,在 DJ 混音等合輯中,專輯藝人未必與專輯中個別歌曲的藝人相同。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyAlbumTitle

字串鍵:專輯名稱。

音樂曲目所屬的專輯名稱。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyComposer

字串鍵:Composer。

音樂曲目的作曲者名稱。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyDiscNumber

整數鍵:光碟號碼。

音樂曲目所屬的唱片編號 (從 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

整數鍵:高度。

媒體的高度 (以像素為單位)。這通常用於提供相片的尺寸。

- (NSString* const) kGCKMetadataKeyLocationName

字串鍵:地點名稱。

媒體建立地點的名稱。例如相片拍攝地點或電影的主要拍攝地點。這個值適合用於顯示。

- (NSString* const) kGCKMetadataKeyLocationLatitude

雙鍵:位置緯度。

媒體建立所在地理位置的緯度。例如相片拍攝地點或電影的主要拍攝地點。

- (NSString* const) kGCKMetadataKeyLocationLongitude

Double 鍵:位置經度。

媒體建立所在地理位置的經度。例如相片拍攝地點或電影的主要拍攝地點。

資源詳細資料

- (GCKMediaMetadataType) metadataType
readnonatomicassign

中繼資料類型。