CarPlay iOS 14.0 Beta 1 to Beta 2 API Differences

CPContact.h
Added CPContactMaximumImageSize
Added CPContact
Added -[CPContact initWithName:image:]
Added CPContact.name
Added CPContact.image
Added CPContact.actionButtons
Added CPContact.subtitle
Added CPContact.informativeText
CPContactEntity.h
CPContactTemplate.h
Declaration
From- (instancetype)initWithContact:(CPContactEntity *)contact
To- (instancetype)initWithContact:(CPContact *)contact

Declaration
From@property (nonatomic, strong) CPContactEntity *contact
To@property (nonatomic, strong) CPContact *contact

CPInterfaceController.h
Added CarPlayErrorDomain
Added -[CPInterfaceController setRootTemplate:animated:completion:]
Added -[CPInterfaceController pushTemplate:animated:completion:]
Added -[CPInterfaceController popTemplateAnimated:completion:]
Added -[CPInterfaceController popToRootTemplateAnimated:completion:]
Added -[CPInterfaceController popToTemplate:animated:completion:]
Added -[CPInterfaceController presentTemplate:animated:completion:]
Added -[CPInterfaceController dismissTemplateAnimated:completion:]
AvailabilityReplacement
FromAvailablenone
ToDeprecated-setRootTemplate:animated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-pushTemplate:animated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-popTemplateAnimated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-popToRootTemplateAnimated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-popToTemplate:animated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-presentTemplate:animated:completion:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-dismissTemplateAnimated:completion:

CPListImageRowItem.h
Added -[CPListImageRowItem initWithText:images:]
Added -[CPListImageRowItem updateImages:]
Declaration
From@property (nonatomic, copy) CPListImageRowHandler listImageRowHandler
To@property (nonatomic, copy) void (^)(CPListImageRowItem * _Nonnull, NSInteger, dispatch_block_t _Nonnull) listImageRowHandler

AvailabilityReplacement
FromAvailablenone
ToDeprecated-initWithText:images:

AvailabilityReplacement
FromAvailablenone
ToDeprecated-updateImages:

CPListItem.h
Added CPListItem.explicitContent
AvailabilityReplacement
FromAvailablenone
ToDeprecated-explicitContent

CPNowPlayingButton.h
Added -[CPNowPlayingButton initWithHandler:]
Added CPNowPlayingShuffleButton
Added CPNowPlayingAddToLibraryButton
Added CPNowPlayingMoreButton
Added CPNowPlayingPlaybackRateButton
Added CPNowPlayingRepeatButton
Added CPNowPlayingImageButton
Added -[CPNowPlayingImageButton initWithImage:handler:]
AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use -initWithHandler: in a concrete subclass of CPNowPlayingButton.

AvailabilityReplacement
FromAvailablenone
ToDeprecatedPlease use concrete subclasses of CPNowPlayingButton.

CPNowPlayingTemplate.h
Added CPNowPlayingTemplateObserver
Added -[CPNowPlayingTemplateObserver nowPlayingTemplateUpNextButtonTapped:]
Added -[CPNowPlayingTemplateObserver nowPlayingTemplateAlbumArtistButtonTapped:]
Added CPNowPlayingTemplate.sharedTemplate
Added -[CPNowPlayingTemplate addObserver:]
Added -[CPNowPlayingTemplate removeObserver:]
ProtocolsAvailabilityReplacement
FromNSObjectAvailablenone
ToCPNowPlayingTemplateObserverDeprecatedCPNowPlayingTemplateObserver

AvailabilityReplacement
FromAvailablenone
ToDeprecated+sharedTemplate

Declaration
From@property (nonatomic, readonly, strong) NSArray<CPNowPlayingButton *> *nowPlayingButtons
To@property (nonatomic, readonly, strong) NSArray<__kindof CPNowPlayingButton *> *nowPlayingButtons

Declaration
From- (void)updateNowPlayingButtons:(NSArray<CPNowPlayingButton *> *)nowPlayingButtons
To- (void)updateNowPlayingButtons:(NSArray<__kindof CPNowPlayingButton *> *)nowPlayingButtons

AvailabilityReplacement
FromAvailablenone
ToDeprecated-addObserver:

CPPointOfInterest.h
Added -[CPPointOfInterest initWithLocation:title:subtitle:summary:detailTitle:detailSubtitle:detailSummary:pinImage:]
Added CPPointOfInterest.summary
Added CPPointOfInterest.detailTitle
Added CPPointOfInterest.detailSubtitle
Added CPPointOfInterest.detailSummary
Added CPPointOfInterest.pinImage
SuperclassProtocols
FromCPEntitynone
ToNSObjectNSSecureCoding

Declaration
From@property (nonatomic, readonly) MKMapItem *location
To@property (nonatomic, strong) MKMapItem *location

Declaration
From@property (nonatomic, readonly) NSAttributedString *title
To@property (nonatomic, copy) NSString *title

Declaration
From@property (nonatomic, readonly) NSAttributedString *subtitle
To@property (nonatomic, copy) NSString *subtitle