總覽
媒體中繼資料的容器。
中繼資料具有媒體類型、選用圖片清單和一系列中繼資料欄位。常見中繼資料欄位的鍵會預先定義為常數,但應用程式可自由定義並使用其他欄位。
預先定義欄位的值有預先定義的類型。舉例來說,軌道編號是 NSInteger
,建立日期則是 NSString,其中包含 ISO-8601 日期和時間的表示法。如果您嘗試在欄位中儲存錯誤類型的值,會引發 NSInvalidArgumentException。
請注意,Cast 通訊協定會限制特定媒體類型可使用哪些中繼資料欄位。當 MediaMetadata 物件序列化為 JSON 以傳送至 Cast 接收器時,序列化格式就不會包含特定媒體類型不支援的任何預先定義欄位,但一律會納入任何應用程式定義的欄位。預先定義的欄位完整清單如下:
沿用 NSObject。實作 <NSCopy>。
執行個體方法摘要 | |
(instancetype) | - initWithMetadataType: |
使用指定的媒體類型初始化新的空白媒體中繼資料。更多... | |
(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: |
讀取日期欄位的值 (字串)。更多... | |
屬性摘要 | |
GCKMediaMetadataType | metadataType |
中繼資料類型。更多... | |
方法說明
- (instancetype) initWithMetadataType: | (GCKMediaMetadataType) | metadataType |
使用指定的媒體類型初始化新的空白媒體中繼資料。
指定初始化器。
- Parameters
-
metadataType The 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
-
image The image to add.
- (BOOL) containsKey: | (NSString *) | key |
測試物件是否包含具有指定鍵的欄位。
- Parameters
-
key The key.
- 傳回
- 如果欄位存在,則為
YES
,否則傳回NO
。
- (NSArray<NSString *> *) allKeys |
傳回物件中所有欄位的一組鍵。
- (id __nullable) objectForKey: | (NSString *) | key |
讀取欄位的值。
- Parameters
-
key The key for the field.
- 傳回
- 欄位值,若未設定欄位則為
nil
。
- (void) setString: | (NSString *) | value | |
forKey: | (NSString *) | key | |
將值儲存在字串欄位中。
- Parameters
-
value The new value for the field. key The key for the field.
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰參照的是非欄位欄位的預先定義欄位。
- (NSString *__nullable) stringForKey: | (NSString *) | key |
讀取字串欄位的值。
- Parameters
-
key The key for the field.
- 傳回
- 欄位值,若未設定欄位則為
nil
。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰參照的是非欄位欄位的預先定義欄位。
- (void) setInteger: | (NSInteger) | value | |
forKey: | (NSString *) | key | |
將值儲存在整數欄位中。
- Parameters
-
value The new value for the field. key The key for the field.
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是整數欄位。
- (NSInteger) integerForKey: | (NSString *) | key |
讀取整數欄位的值。
- Parameters
-
key The key for the field.
- 傳回
- 該欄位值,如未設定欄位時,則為 0。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是整數欄位。
- (NSInteger) integerForKey: | (NSString *) | key | |
defaultValue: | (NSInteger) | defaultValue | |
讀取整數欄位的值。
- Parameters
-
key The key for the field. defaultValue The value to return if the field has not been set.
- 傳回
- 該欄位值,或未設定預設值時的指定預設值。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是整數欄位。
- (void) setDouble: | (double) | value | |
forKey: | (NSString *) | key | |
將值儲存在 double 欄位中。
- Parameters
-
value The new value for the field. key The key for the field.
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是 double 欄位。
- (double) doubleForKey: | (NSString *) | key |
讀取 double 欄位的值。
- Parameters
-
key The key for the field.
- 傳回
- 該欄位值,如未設定欄位時,則為 0。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是 double 欄位。
- (double) doubleForKey: | (NSString *) | key | |
defaultValue: | (double) | defaultValue | |
讀取 double 欄位的值。
- Parameters
-
defaultValue The value to return if the field has not been set. key The key for the field.
- 傳回
- 該欄位值,或未設定預設值時的指定預設值。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰所參照的預先定義欄位不是 double 欄位。
- (void) setDate: | (NSDate *) | date | |
forKey: | (NSString *) | key | |
將日期值儲存為受限的 ISO-8601 日期表示法。
- Parameters
-
date The new value for the field. key The key for the field.
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰參照的是非欄位的欄位。
- (NSDate *__nullable) dateForKey: | (NSString *) | key |
從日期受限的 ISO-8601 表示法讀取日期欄位的值。
- Parameters
-
key The field name.
- 傳回
- 日期 (如果未設定這個欄位,則為
nil
)。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰參照的是非欄位的欄位。
- (NSString *__nullable) dateAsStringForKey: | (NSString *) | key |
讀取日期欄位的值 (字串)。
- Parameters
-
key The field name.
- 傳回
- 日期,字串形式包含日期受限的 ISO-8601 表示法;若未設定這個欄位,則為
nil
。
- 例外狀況
-
NSInvalidArgument 例外狀況 表示金鑰參照的是非欄位的欄位。
成員資料說明文件
- (NSString* const) kGCKMetadataKeyCreationDate |
字串鍵:建立日期。
這個值為媒體建立日期和/或時間,採 ISO-8601 格式。舉例來說,這可能是某張相片或某張相片的拍攝日期和時間,
- (NSString* const) kGCKMetadataKeyReleaseDate |
字串鍵:推出日期。
這個值為媒體發布的日期和/或時間,採 ISO-8601 格式。例如電影或音樂專輯的發行日期。
- (NSString* const) kGCKMetadataKeyBroadcastDate |
字串鍵:播送日期。
這個值為媒體首次播送的日期和/或時間,採用 ISO-8601 格式。舉例來說,這可能是電視節目劇集的首映日期。
- (NSString* const) kGCKMetadataKeyTitle |
字串鍵:標題。
媒體標題。例如歌曲、電影或電視節目劇集的標題。這個值適用於顯示用途。
- (NSString* const) kGCKMetadataKeySubtitle |
字串鍵:字幕。
媒體的副標題。這個值適用於顯示用途。
- (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 前的劇集,且該電視劇集的電視劇劇集尚未開始,則可能為 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 |
雙鍵:位置經度。
建立媒體時所在地理位置的經度元件。例如相片的拍攝地點或電影的拍攝地點。
資源詳細資料
|
readnonatomicassign |
中繼資料類型。