-
Notifications
You must be signed in to change notification settings - Fork 507
CarPlay iOS xcode15.3 b1
Alex Soto edited this page May 21, 2024
·
2 revisions
#CarPlay.framework https://github.com/xamarin/xamarin-macios/pull/20097
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLane.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLane.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLane.h 1969-12-31 19:00:00
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLane.h 2024-01-19 03:46:55
@@ -0,0 +1,41 @@
+//
+// CPLane.h
+// CarPlay
+//
+// Copyright © 2023 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+typedef NS_ENUM(NSInteger, CPLaneStatus)
+{
+ CPLaneStatusNotGood = 0,
+ CPLaneStatusGood,
+ CPLaneStatusPreferred
+} API_AVAILABLE(ios(17.4));
+
+NS_ASSUME_NONNULL_BEGIN
+
+/**
+ @c CPLane represents information about a single lane.
+ */
+API_AVAILABLE(ios(17.4))
+@interface CPLane : NSObject <NSCopying, NSSecureCoding>
+
+/**
+ status is a @c CPLaneStatus representing the status of this lane.
+ */
+@property (nonatomic, assign) CPLaneStatus status API_AVAILABLE(ios(17.4));
+
+/**
+ primaryAngle is the angle to be highlighted if this lane is preferred or good. If primaryAngle is present it can not be included in secondaryAngles.
+ */
+@property (nonatomic, strong) NSMeasurement<NSUnitAngle *> *primaryAngle API_AVAILABLE(ios(17.4));
+
+/**
+ secondaryAngles is a list of the remaining angles of this lane guidance.
+ */
+@property (nonatomic, strong) NSArray<NSMeasurement<NSUnitAngle *> *> *secondaryAngles API_AVAILABLE(ios(17.4));
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLaneGuidance.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLaneGuidance.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLaneGuidance.h 1969-12-31 19:00:00
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPLaneGuidance.h 2024-01-19 03:46:56
@@ -0,0 +1,31 @@
+//
+// CPLaneGuidance.h
+// CarPlay
+//
+// Copyright © 2023 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <CarPlay/CPLane.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/**
+ @c CPLaneGuidance represents guidance to give the user which lane or lanes are preferred.
+ */
+API_AVAILABLE(ios(17.4))
+@interface CPLaneGuidance : NSObject <NSCopying, NSSecureCoding>
+
+/**
+ lanes is an array of @c CPLane objects, each describes a single lane.
+*/
+@property (nonatomic, copy) NSArray<CPLane *> *lanes API_AVAILABLE(ios(17.4));
+
+/**
+ instructionVariants is an array of @c NSString representing the instruction for this lane guidance, arranged from most to least preferred. You must provide at least one variant.
+ The variant strings should be provided as localized, displayable content.
+*/
+@property (nonatomic, copy) NSArray<NSString *> *instructionVariants API_AVAILABLE(ios(17.4));
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h 2023-11-12 13:13:28
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPListImageRowItem.h 2024-01-19 03:46:55
@@ -37,9 +37,34 @@
@discussion To properly size your images, your app should size them to the display scale of the car screen.
See -[CPInterfaceController carTraitCollection].
*/
-- (instancetype)initWithText:(NSString *)text images:(NSArray<UIImage *> *)images;
+- (instancetype)initWithText:(NSString *)text
+ images:(NSArray<UIImage *> *)images;
/**
+ Initialize a list image row item with a text string, an array of @c UIImage
+ for the grid of images, and an array of @c NSString titles, one displayed below each image.
+
+ The number of titles in the @c imageTitles list should be equal to the number of images in the
+ @c images list.
+
+ When providing an image, your app should provide a @c UIImage that is display-ready. If necessary for the image, provide
+ light and dark styles by using an asset from your asset catalog, prepared with light and dark styles
+ or by using @c UIImageAsset to combine two @c UIImage instances into a single image with
+ both styles.
+
+ UIImageAsset is used to combine multiple UIImages with different trait collections into a single UIImage.
+
+ @note The expected image size is given by +[CPListImageRowItem maximumImageSize]. Images provided
+ will be resized to this size if necessary.
+
+ @discussion To properly size your images, your app should size them to the display scale of the car screen.
+ See -[CPInterfaceController carTraitCollection].
+ */
+- (instancetype)initWithText:(NSString *)text
+ images:(NSArray<UIImage *> *)images
+ imageTitles:(NSArray<NSString *> *)imageTitles API_AVAILABLE(ios(17.4));
+
+/**
The primary text shown in a cell displaying this list item.
*/
@property (nonatomic, copy, nullable) NSString *text;
@@ -84,8 +109,20 @@
@see To update/reload the title of the image row item, assign to
the @c text property of the image row item.
+ @see To update/reload the title labels displayed below each image, assign to
+ the @c imageTitles property of the image row item.
*/
- (void)updateImages:(NSArray <UIImage *> *)gridImages;
+
+/**
+ Update the titles displayed each image in this image row item. If this image row
+ item is already displayed in a list template, then it will be automatically
+ reloaded.
+
+ @see To update/reload the title of the image row item, assign to
+ the @c text property of the image row item.
+ */
+@property (nonatomic, copy) NSArray <NSString *> *imageTitles API_AVAILABLE(ios(17.4));
/**
A block that is called when the user selects one of the images in this image row item.
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h 2023-11-12 13:42:02
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPManeuver.h 2024-01-10 02:39:21
@@ -7,9 +7,85 @@
#import <CarPlay/CPImageSet.h>
#import <Foundation/Foundation.h>
+#import <CarPlay/CPLaneGuidance.h>
#import <CarPlay/CPTravelEstimates.h>
#import <UIKit/UIKit.h>
+typedef NS_ENUM(NSUInteger, CPManeuverType) {
+ CPManeuverTypeNoTurn = 0,
+ CPManeuverTypeLeftTurn = 1,
+ CPManeuverTypeRightTurn = 2,
+ CPManeuverTypeStraightAhead = 3,
+ CPManeuverTypeUTurn = 4,
+ CPManeuverTypeFollowRoad = 5,
+ CPManeuverTypeEnterRoundabout = 6,
+ CPManeuverTypeExitRoundabout = 7,
+ CPManeuverTypeOffRamp = 8,
+ CPManeuverTypeOnRamp = 9,
+ CPManeuverTypeArriveEndOfNavigation = 10,
+ CPManeuverTypeStartRoute = 11,
+ CPManeuverTypeArriveAtDestination = 12,
+ CPManeuverTypeKeepLeft = 13,
+ CPManeuverTypeKeepRight = 14,
+ CPManeuverTypeEnter_Ferry = 15,
+ CPManeuverTypeExitFerry = 16,
+ CPManeuverTypeChangeFerry = 17,
+ CPManeuverTypeStartRouteWithUTurn = 18,
+ CPManeuverTypeUTurnAtRoundabout = 19,
+ CPManeuverTypeLeftTurnAtEnd = 20,
+ CPManeuverTypeRightTurnAtEnd = 21,
+ CPManeuverTypeHighwayOffRampLeft = 22,
+ CPManeuverTypeHighwayOffRampRight = 23,
+ CPManeuverTypeArriveAtDestinationLeft = 24,
+ CPManeuverTypeArriveAtDestinationRight = 25,
+ CPManeuverTypeUTurnWhenPossible = 26,
+ CPManeuverTypeArriveEndOfDirections = 27,
+ CPManeuverTypeRoundaboutExit1 = 28,
+ CPManeuverTypeRoundaboutExit2 = 29,
+ CPManeuverTypeRoundaboutExit3 = 30,
+ CPManeuverTypeRoundaboutExit4 = 31,
+ CPManeuverTypeRoundaboutExit5 = 32,
+ CPManeuverTypeRoundaboutExit6 = 33,
+ CPManeuverTypeRoundaboutExit7 = 34,
+ CPManeuverTypeRoundaboutExit8 = 35,
+ CPManeuverTypeRoundaboutExit9 = 36,
+ CPManeuverTypeRoundaboutExit10 = 37,
+ CPManeuverTypeRoundaboutExit11 = 38,
+ CPManeuverTypeRoundaboutExit12 = 39,
+ CPManeuverTypeRoundaboutExit13 = 40,
+ CPManeuverTypeRoundaboutExit14 = 41,
+ CPManeuverTypeRoundaboutExit15 = 42,
+ CPManeuverTypeRoundaboutExit16 = 43,
+ CPManeuverTypeRoundaboutExit17 = 44,
+ CPManeuverTypeRoundaboutExit18 = 45,
+ CPManeuverTypeRoundaboutExit19 = 46,
+ CPManeuverTypeSharpLeftTurn = 47,
+ CPManeuverTypeSharpRightTurn = 48,
+ CPManeuverTypeSlightLeftTurn = 49,
+ CPManeuverTypeSlightRightTurn = 50,
+ CPManeuverTypeChangeHighway = 51,
+ CPManeuverTypeChangeHighwayLeft = 52,
+ CPManeuverTypeChangeHighwayRight = 53,
+} API_AVAILABLE(ios(17.4));
+
+typedef NS_ENUM(NSUInteger, CPJunctionType) {
+ CPJunctionTypeIntersection = 0, // single intersection with roads coming to a common point
+ CPJunctionTypeRoundabout = 1, // roundabout, junction elements represent roads exiting the roundabout
+} API_AVAILABLE(ios(17.4));
+
+typedef NS_ENUM(NSUInteger, CPTrafficSide) {
+ CPTrafficSideRight = 0, // counterclockwise for roundabouts
+ CPTrafficSideLeft = 1, // clockwise for roundabouts
+} API_AVAILABLE(ios(17.4));
+
+typedef NS_ENUM(NSInteger, CPManeuverState)
+{
+ CPManeuverStateContinue = 0,
+ CPManeuverStateInitial,
+ CPManeuverStatePrepare,
+ CPManeuverStateExecute
+} API_AVAILABLE(ios(17.4));
+
NS_ASSUME_NONNULL_BEGIN
/**
@@ -126,6 +202,47 @@
@see +[NSAttributedString attributedStringWithAttachment:], -[NSTextAttachment image]
*/
@property (nonatomic, copy) NSArray<NSAttributedString *> *notificationAttributedInstructionVariants API_AVAILABLE(ios(14.0));
+
+/**
+ maneuverType is a @c CPManeuverType representing the type of maneuver.
+ */
+@property (nonatomic, assign) CPManeuverType maneuverType API_AVAILABLE(ios(17.4));
+
+/**
+ roadFollowingManeuverVariants is an array of @c NSString representing the name of the road following this maneuver,
+ arranged from most to least preferred. (arranged by space)
+ */
+@property (nonatomic, copy, nullable) NSArray<NSString *> *roadFollowingManeuverVariants API_AVAILABLE(ios(17.4));
+
+/**
+ trafficSide is a @c CPTrafficSide representing which side of the road the traffic drives on.
+ */
+@property (nonatomic, assign) CPTrafficSide trafficSide API_AVAILABLE(ios(17.4));
+
+/**
+ junctionType is a @c CPJunctionType representing the type of the junction associated with this maneuver
+ */
+@property (nonatomic, assign) CPJunctionType junctionType API_AVAILABLE(ios(17.4));
+
+/**
+ junctionExitAngle is the angle of the exit road of this junction.
+ */
+@property (nonatomic, copy, nullable) NSMeasurement<NSUnitAngle *> *junctionExitAngle API_AVAILABLE(ios(17.4));
+
+/**
+ junctionElementAngles is a set of angles of the rest of the roads of this junction. This must not include @c junctionExitAngle .
+ */
+@property (nonatomic, copy, nullable) NSSet<NSMeasurement<NSUnitAngle *> *> *junctionElementAngles API_AVAILABLE(ios(17.4));
+
+/**
+ linkedLaneGuidance is the optional @c CPLaneGuidance associated with this maneuver // conditional - must be there if there is a corresponding lane guidance
+ */
+@property (nonatomic, assign) CPLaneGuidance *linkedLaneGuidance API_AVAILABLE(ios(17.4));
+
+/**
+ highwayExitLabel is a @c NSString describing a highway exit. Exit 123 for example.
+ */
+@property (nonatomic, copy) NSString *highwayExitLabel API_AVAILABLE(ios(17.4));
/**
Any custom user info related to this maneuver.
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMapTemplate.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMapTemplate.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMapTemplate.h 2023-11-12 13:13:29
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPMapTemplate.h 2024-01-19 03:46:56
@@ -183,6 +183,13 @@
@protocol CPMapTemplateDelegate <NSObject>
@optional
+#pragma mark - Navigation Metadata
+/**
+ Determines if the template should provide navigation metadata.
+ @return YES if the template should provide navigation metadata, otherwise NO
+ */
+- (BOOL)mapTemplateShouldProvideNavigationMetadata:(CPMapTemplate *)mapTemplate;
+
#pragma mark - Notification Policy
/**
Determines if the maneuver should be presented as a notification when the app is in the background.
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationEnum.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationEnum.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationEnum.h 1969-12-31 19:00:00
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationEnum.h 2024-01-19 03:46:54
@@ -0,0 +1,23 @@
+//
+// CPNavigationEnum.h
+// CarPlay
+//
+// Copyright © 2023 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+#import <CarPlay/CPLane.h>
+#import <CarPlay/CPManeuver.h>
+#import <CarPlay/CPRouteInfo.h>
+
+#pragma mark - Maneuver
+NSString *NSStringFromCPManeuverType(CPManeuverType maneuverType);
+NSString *NSStringFromCPJunctionType(CPJunctionType junctionType);
+NSString *NSStringFromCPTrafficSide(CPTrafficSide trafficSide);
+
+#pragma mark - Lane
+NSString *NSStringFromCPLaneStatus(CPLaneStatus laneStatus);
+
+#pragma mark - ReRouting
+NSString *NSStringFromCPRerouteReason(CPRerouteReason reason);
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationSession.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationSession.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationSession.h 2023-11-12 13:42:02
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPNavigationSession.h 2024-01-19 03:46:55
@@ -64,6 +64,35 @@
@property (nonatomic, readwrite, copy) NSArray<CPManeuver *> *upcomingManeuvers;
/**
+ The current lane guidance to be used for navigation metdata.
+ Must be set to nil if there is no current lane guidance. CPLaneGuidances set here must first be added to the session using addLaneGuidances:
+ */
+@property (nullable, nonatomic, readwrite, copy) CPLaneGuidance *currentLaneGuidance;
+
+/**
+ Use this method to add CPManeuvers in chronological order to the navigation session.
+ The application must provide as many maneuvers as possible, as soon as they are available. All
+ maneuvers set in upcomingManeuvers must be first added using this method.
+ */
+- (void)addManeuvers:(NSArray<CPManeuver *> *)maneuvers;
+
+/**
+ Use this method to add CPLaneGuidances in chronological order to the navigation session.
+ CPLaneGuidance objects must be added as soon as they are available.
+ */
+- (void)addLaneGuidances:(NSArray<CPLaneGuidance *> *)laneGuidances;
+
+/**
+ Set this property with variants of the current road name. From most to least verbose.
+ */
+@property (nonatomic, copy) NSArray<NSString *> *currentRoadNameVariants;
+
+/**
+ Set this property with the current maneuver state based on how close the maneuver is.
+ */
+@property (nonatomic) CPManeuverState maneuverState;
+
+/**
The trip associated with this navigation session.
*/
@property (nonatomic, readonly, strong) CPTrip *trip;
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPRouteInfo.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPRouteInfo.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPRouteInfo.h 1969-12-31 19:00:00
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPRouteInfo.h 2024-01-19 03:46:53
@@ -0,0 +1,30 @@
+//
+// CPRouteInfo.h
+// CarPlayFrameworks
+//
+// Created by Evan Murphy on 9/12/23.
+// Copyright © 2023 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+typedef NS_ENUM(uint8_t, CPRerouteReason)
+{
+ CPRerouteReasonMissedTurn = 0,
+ CPRerouteReasonOffline,
+ CPRerouteReasonAlternateRoute,
+ CPRerouteReasonWaypointAdded
+};
+
+@class CPRouteGuidance, CPManeuver, CPLaneGuidance;
+
+@interface CPRouteInfo : NSObject
+
+@property (readonly, nonatomic, copy) NSArray<CPManeuver *> *maneuvers;
+@property (readonly, nonatomic, copy) NSArray<CPLaneGuidance *> *laneGuidances;
+@property (readonly, nonatomic, copy) CPRouteGuidance *routeGuidance;
+
+- (instancetype)initWithRouteGuidance:(CPRouteGuidance *) routeGuidance maneuvers:(NSArray<CPManeuver *> *) maneuvers laneGuidances:(NSArray<CPLaneGuidance *> *) laneGuidances;
+
+@end
+
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTravelEstimates.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTravelEstimates.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTravelEstimates.h 2023-11-12 13:42:01
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTravelEstimates.h 2024-01-19 03:46:55
@@ -29,6 +29,13 @@
- (instancetype)init NS_UNAVAILABLE;
+ (instancetype)new NS_UNAVAILABLE;
+- (instancetype)initWithDistanceRemaining:(NSMeasurement<NSUnitLength *> *)distanceRemaining distanceRemainingToDisplay:(NSMeasurement<NSUnitLength *> *)distanceRemainingToDisplay timeRemaining:(NSTimeInterval)time NS_DESIGNATED_INITIALIZER;
+
+/**
+ Distance remaining for displaying to the user. If not set falls back to distanceRemaining;
+ */
+@property (nonatomic, readonly, copy) NSMeasurement<NSUnitLength *> *distanceRemainingToDisplay;
+
/**
Distance remaining.
*/
diff -ruN /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTrip.h /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTrip.h
--- /Applications/Xcode_15.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTrip.h 2023-11-12 13:42:02
+++ /Applications/Xcode_15.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/CarPlay.framework/Headers/CPTrip.h 2024-01-19 03:46:55
@@ -85,6 +85,13 @@
*/
@property (nullable, nonatomic, strong) id userInfo;
+/**
+ destinationNameVariants is an array of @c NSString representing the name of the destination for
+ this trip, arranged from most to least preferred. You must provide at least one variant.
+ The variant strings should be provided as localized, displayable content.
+ */
+@property (nonatomic, copy, nullable) NSArray<NSString *> *destinationNameVariants;
+
@end
NS_ASSUME_NONNULL_END
- README
- xcode13.0 Binding Status
- xcode13.1 Binding Status
- xcode13.2 Binding Status
- xcode13.3 Binding Status
- xcode13.4 Binding Status
- xcode14.0 Binding Status
- xcode14.1 Binding Status
- xcode14.2 Binding Status
- xcode14.3 Binding Status
- xcode15.0 Binding Status
- xcode15.1 Binding Status
- xcode15.3 Binding Status
- xcode15.4 Binding Status
- xcode16.0 Binding Status