[CarPlay] Adds Xcode 10 Beta 1 Bindings (#4217)

* [CarPlay] Adds Xcode 10 Beta 1 Bindings

* Adds [DisableDefaultCtor] to CPVoiceControlTemplate

* Implement feedback
This commit is contained in:
Alex Soto 2018-06-12 12:12:20 -07:00 коммит произвёл GitHub
Родитель d2b8669113
Коммит 20f5d952a9
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
8 изменённых файлов: 752 добавлений и 164 удалений

Просмотреть файл

@ -34,6 +34,8 @@
/src/avkit.cs @spouliot @dalexsoto
/src/CallKit @dalexsoto
/src/callkit.cs @dalexsoto
/src/CarPlay @dalexsoto
/src/carplay.cs @dalexsoto
/src/CFNetwork @spouliot
/src/cfnetwork.cs @spouliot
/src/CloudKit @mandel-macaque

Просмотреть файл

@ -0,0 +1,22 @@
//
// CPNavigationAlert.cs
//
// Authors:
// Alex Soto <alexsoto@microsoft.com>
//
// Copyright 2018 Microsoft Corporation. All rights reserved.
//
using System;
using Foundation;
using ObjCRuntime;
#if XAMCORE_2_0
namespace CarPlay {
public partial class CPNavigationAlert {
// Defined inside CPNavigationAlert.h
// static NSTimeInterval const CPNavigationAlertMinimumDuration = 10;
public const double MinimumDuration = 10;
}
}
#endif // XAMCORE_2_0

Просмотреть файл

@ -122,5 +122,7 @@ namespace MonoTouch {
public const string BusinessChatLibrary = "/System/Library/Frameworks/BusinessChat.framework/BusinessChat";
// iOS 11.4
public const string ClassKitLibrary = "/System/Library/Frameworks/ClassKit.framework/ClassKit";
// iOS 12.0
public const string CarPlayLibrary = "/System/Library/Frameworks/CarPlay.framework/CarPlay";
}
}

714
src/carplay.cs Normal file
Просмотреть файл

@ -0,0 +1,714 @@
//
// CarPlay bindings
//
// Authors:
// Alex Soto <alexsoto@microsoft.com>
//
// Copyright 2018 Microsoft Corporation. All rights reserved.
//
#if XAMCORE_2_0
using System;
using Foundation;
using ObjCRuntime;
using UIKit;
using CoreGraphics;
using MapKit;
namespace CarPlay {
// Just to please the generator that at this point does not know the hierarchy
interface NSUnitLength : NSUnit { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
enum CPAlertStyle : ulong {
ActionSheet = 0,
FullScreen,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
enum CPAlertActionStyle : ulong {
Default = 0,
Cancel,
Destructive,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
enum CPBarButtonType : ulong {
Text,
Image,
}
[Flags, NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
enum CPPanDirection : ulong {
None = 0,
Left = 1uL << 0,
Right = 1uL << 1,
Up = 1uL << 2,
Down = 1uL << 3,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
enum CPNavigationAlertPriority : ulong {
Default = 0,
High,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
public enum CPNavigationAlertDismissalContext : ulong {
Timeout = 0,
UserDismissed,
SystemDismissed,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Native]
public enum CPTripPauseReason : ulong {
Arrived = 1,
Loading = 2,
Locating = 3,
Rerouting = 4,
ProceedToRoute = 5,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Flags]
[Native]
enum CPLimitableUserInterface : ulong {
Keyboard = 1uL << 0,
Lists = 1uL << 1,
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPAlert : NSSecureCoding {
[Export ("initWithTitleVariants:style:actions:")]
IntPtr Constructor (string [] title, CPAlertStyle style, CPAlertAction [] actions);
[Export ("titleVariants", ArgumentSemantic.Copy)]
string [] TitleVariants { get; }
[Export ("style")]
CPAlertStyle Style { get; }
[Export ("actions", ArgumentSemantic.Strong)]
CPAlertAction [] Actions { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPAlertAction : NSSecureCoding {
[Export ("initWithTitle:style:handler:")]
IntPtr Constructor (string title, CPAlertActionStyle style, Action<CPAlertAction> handler);
[Export ("title")]
string Title { get; }
[Export ("style", ArgumentSemantic.Assign)]
CPAlertActionStyle Style { get; }
[Export ("handler", ArgumentSemantic.Copy)]
Action<CPAlertAction> Handler { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPBarButton : NSSecureCoding {
[Export ("initWithType:handler:")]
[DesignatedInitializer]
IntPtr Constructor (CPBarButtonType type, [NullAllowed] Action<CPBarButton> handler);
[Export ("enabled")]
bool Enabled { [Bind ("isEnabled")] get; set; }
[Export ("buttonType", ArgumentSemantic.Assign)]
CPBarButtonType ButtonType { get; }
[NullAllowed, Export ("image", ArgumentSemantic.Strong)]
UIImage Image { get; set; }
[NullAllowed, Export ("title")]
string Title { get; set; }
}
interface ICPBarButtonProviding { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol]
interface CPBarButtonProviding {
[Abstract]
[Export ("leadingNavigationBarButtons", ArgumentSemantic.Strong)]
CPBarButton [] LeadingNavigationBarButtons { get; set; }
[Abstract]
[Export ("trailingNavigationBarButtons", ArgumentSemantic.Strong)]
CPBarButton [] TrailingNavigationBarButtons { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPGridButton : NSSecureCoding {
[Export ("initWithTitleVariants:image:handler:")]
[DesignatedInitializer]
IntPtr Constructor (string [] titleVariants, UIImage image, [NullAllowed] Action<CPGridButton> handler);
[Export ("enabled")]
bool Enabled { [Bind ("isEnabled")] get; set; }
[Export ("image")]
UIImage Image { get; }
[Export ("titleVariants")]
string [] TitleVariants { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (CPTemplate))]
[DisableDefaultCtor]
interface CPGridTemplate : CPBarButtonProviding{
[Export ("initWithTitle:gridButtons:")]
IntPtr Constructor ([NullAllowed] string title, CPGridButton [] gridButtons);
[Export ("gridButtons")]
CPGridButton [] GridButtons { get; }
[Export ("title")]
string Title { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPInterfaceController {
[Wrap ("WeakDelegate")]
[NullAllowed]
ICPInterfaceControllerDelegate Delegate { get; set; }
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
[Export ("setRootTemplate:animated:")]
void SetRootTemplate (CPTemplate rootTemplate, bool animated);
[Export ("pushTemplate:animated:")]
void PushTemplate (CPTemplate templateToPush, bool animated);
[Export ("popTemplateAnimated:")]
void PopTemplate (bool animated);
[Export ("popToRootTemplateAnimated:")]
void PopToRootTemplate (bool animated);
[Export ("popToTemplate:animated:")]
void PopToTemplate (CPTemplate targetTemplate, bool animated);
[Export ("rootTemplate")]
CPTemplate RootTemplate { get; }
[NullAllowed, Export ("topTemplate", ArgumentSemantic.Strong)]
CPTemplate TopTemplate { get; }
[Export ("templates", ArgumentSemantic.Strong)]
CPTemplate [] Templates { get; }
[Export ("presentAlert:")]
void PresentAlert (CPAlert alert);
[Export ("dismissAlertAnimated:")]
void DismissAlert (bool animated);
}
interface ICPInterfaceControllerDelegate { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPInterfaceControllerDelegate {
[Export ("templateWillAppear:animated:")]
void TemplateWillAppear (CPTemplate aTemplate, bool animated);
[Export ("templateDidAppear:animated:")]
void TemplateDidAppear (CPTemplate aTemplate, bool animated);
[Export ("templateWillDisappear:animated:")]
void TemplateWillDisappear (CPTemplate aTemplate, bool animated);
[Export ("templateDidDisappear:animated:")]
void TemplateDidDisappear (CPTemplate aTemplate, bool animated);
}
interface ICPApplicationDelegate { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPApplicationDelegate : UIApplicationDelegate {
[Abstract]
[Export ("application:didConnectCarInterfaceController:toWindow:")]
void DidConnectCarInterfaceController (UIApplication application, CPInterfaceController interfaceController, UIWindow window);
[Abstract]
[Export ("application:didDisconnectCarInterfaceController:fromWindow:")]
void DidDisconnectCarInterfaceController (UIApplication application, CPInterfaceController interfaceController, UIWindow window);
[Export ("application:didSelectNavigationAlert:")]
void DidSelectNavigationAlert (UIApplication application, CPNavigationAlert navigationAlert);
[Export ("application:didSelectManeuver:")]
void DidSelectManeuver (UIApplication application, CPManeuver maneuver);
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPListItem : NSSecureCoding {
[Field ("CPMaximumListItemImageSize")]
CGSize MaximumListItemImageSize { get; }
[Export ("initWithText:detailText:image:showsDisclosureIndicator:")]
IntPtr Constructor ([NullAllowed] string text, [NullAllowed] string detailText, [NullAllowed] UIImage image, bool showsDisclosureIndicator);
[Export ("initWithText:detailText:image:")]
IntPtr Constructor ([NullAllowed] string text, [NullAllowed] string detailText, [NullAllowed] UIImage image);
[Export ("initWithText:detailText:")]
IntPtr Constructor ([NullAllowed] string text, [NullAllowed] string detailText);
[NullAllowed, Export ("text")]
string Text { get; }
[NullAllowed, Export ("detailText")]
string DetailText { get; }
[NullAllowed, Export ("image", ArgumentSemantic.Strong)]
UIImage Image { get; }
[Export ("showsDisclosureIndicator")]
bool ShowsDisclosureIndicator { get; }
[NullAllowed, Export ("userInfo", ArgumentSemantic.Strong)]
NSObject UserInfo { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPListSection : NSSecureCoding {
[Export ("initWithItems:header:sectionIndexTitle:")]
IntPtr Constructor (CPListItem [] items, [NullAllowed] string header, [NullAllowed] string sectionIndexTitle);
[Export ("initWithItems:")]
IntPtr Constructor (CPListItem [] items);
[NullAllowed, Export ("header")]
string Header { get; }
[NullAllowed, Export ("sectionIndexTitle")]
string SectionIndexTitle { get; }
[Export ("items", ArgumentSemantic.Copy)]
CPListItem [] Items { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (CPTemplate))]
[DisableDefaultCtor]
interface CPListTemplate : CPBarButtonProviding {
[Export ("initWithSections:")]
IntPtr Constructor (CPListSection [] sections);
[Wrap ("WeakDelegate")]
[NullAllowed]
ICPListTemplateDelegate Delegate { get; set; }
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
[Export ("sections", ArgumentSemantic.Copy)]
CPListSection [] Sections { get; }
[NullAllowed, Export ("title")]
string Title { get; set; }
[Export ("updateSections:")]
void UpdateSections (CPListSection [] sections);
}
interface ICPListTemplateDelegate { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPListTemplateDelegate {
[Abstract]
[Export ("listTemplate:didSelectListItem:completionHandler:")]
void DidSelectListItem (CPListTemplate listTemplate, CPListItem item, Action completionHandler);
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
interface CPManeuver : NSCopying, NSSecureCoding {
[NullAllowed, Export ("symbol", ArgumentSemantic.Strong)]
UIImage Symbol { get; set; }
[Export ("instructionVariants", ArgumentSemantic.Copy)]
string [] InstructionVariants { get; set; }
[NullAllowed, Export ("distanceFromPreviousManeuver", ArgumentSemantic.Copy)]
NSMeasurement<NSUnitLength> DistanceFromPreviousManeuver { get; set; }
[NullAllowed, Export ("userInfo", ArgumentSemantic.Strong)]
NSObject UserInfo { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPMapButton : NSSecureCoding {
[Export ("initWithHandler:")]
[DesignatedInitializer]
IntPtr Constructor ([NullAllowed] Action<CPMapButton> handler);
[Export ("enabled")]
bool Enabled { [Bind ("isEnabled")] get; set; }
[Export ("hidden")]
bool Hidden { [Bind ("isHidden")] get; set; }
[NullAllowed, Export ("image", ArgumentSemantic.Strong)]
UIImage Image { get; set; }
[NullAllowed, Export ("focusedImage", ArgumentSemantic.Strong)]
UIImage FocusedImage { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (CPTemplate))]
interface CPMapTemplate : CPBarButtonProviding {
[Export ("mapButtons", ArgumentSemantic.Strong)]
CPMapButton [] MapButtons { get; set; }
[Export ("showTripPreviews:")]
void ShowTripPreviews (CPTrip [] tripPreviews);
[Export ("hideTripPreviews")]
void HideTripPreviews ();
[Export ("updateTravelEstimates:forTrip:")]
void UpdateTravelEstimates (CPTravelEstimates estimates, CPTrip trip);
[Export ("startNavigationSessionForTrip:")]
CPNavigationSession StartNavigationSession (CPTrip trip);
[Export ("automaticallyHidesNavigationBar")]
bool AutomaticallyHidesNavigationBar { get; set; }
[Export ("hidesButtonsWithNavigationBar")]
bool HidesButtonsWithNavigationBar { get; set; }
[Wrap ("WeakMapDelegate")]
[NullAllowed]
ICPMapTemplateDelegate MapDelegate { get; set; }
[NullAllowed, Export ("mapDelegate", ArgumentSemantic.Weak)]
NSObject WeakMapDelegate { get; set; }
[Export ("showPanningInterfaceAnimated:")]
void ShowPanningInterface (bool animated);
[Export ("dismissPanningInterfaceAnimated:")]
void DismissPanningInterface (bool animated);
[NullAllowed, Export ("currentNavigationAlert", ArgumentSemantic.Strong)]
CPNavigationAlert CurrentNavigationAlert { get; }
[Export ("presentNavigationAlert:animated:")]
void PresentNavigationAlert (CPNavigationAlert navigationAlert, bool animated);
[Async]
[Export ("dismissNavigationAlertAnimated:completion:")]
void DismissNavigationAlert (bool animated, Action<bool> completion);
}
interface ICPMapTemplateDelegate { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPMapTemplateDelegate {
[Export ("mapTemplate:shouldShowNotificationForManeuver:")]
bool ShouldShowNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver);
[Export ("mapTemplate:shouldUpdateNotificationForManeuver:withTravelEstimates:")]
bool ShouldUpdateNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver, CPTravelEstimates travelEstimates);
[Export ("mapTemplate:shouldShowNotificationForNavigationAlert:")]
bool ShouldShowNotificationForNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
[Export ("mapTemplateDidShowPanningInterface:")]
void DidShowPanningInterface (CPMapTemplate mapTemplate);
[Export ("mapTemplateWillDismissPanningInterface:")]
void WillDismissPanningInterface (CPMapTemplate mapTemplate);
[Export ("mapTemplateDidDismissPanningInterface:")]
void DidDismissPanningInterface (CPMapTemplate mapTemplate);
[Export ("mapTemplate:panBeganWithDirection:")]
void PanBegan (CPMapTemplate mapTemplate, CPPanDirection direction);
[Export ("mapTemplate:panEndedWithDirection:")]
void PanEnded (CPMapTemplate mapTemplate, CPPanDirection direction);
[Export ("mapTemplate:panWithDirection:")]
void Pan (CPMapTemplate mapTemplate, CPPanDirection direction);
[Export ("mapTemplate:willShowNavigationAlert:")]
void WillShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
[Export ("mapTemplate:didShowNavigationAlert:")]
void DidShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
[Export ("mapTemplate:willDismissNavigationAlert:dismissalContext:")]
void WillDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
[Export ("mapTemplate:didDismissNavigationAlert:dismissalContext:")]
void DidDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
[Export ("mapTemplate:selectedPreviewForTrip:usingRouteChoice:")]
void SelectedPreview (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
[Export ("mapTemplate:startedTrip:usingRouteChoice:")]
void StartedTrip (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
[Export ("mapTemplateDidCancelNavigation:")]
void DidCancelNavigation (CPMapTemplate mapTemplate);
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPNavigationAlert : NSSecureCoding {
[Export ("initWithTitleVariants:subtitleVariants:image:priority:primaryAction:secondaryAction:duration:")]
IntPtr Constructor (string [] titleVariants, [NullAllowed] string [] subtitleVariants, [NullAllowed] UIImage image, CPNavigationAlertPriority priority, CPAlertAction primaryAction, [NullAllowed] CPAlertAction secondaryAction, double duration);
[Export ("alertPriority")]
CPNavigationAlertPriority AlertPriority { get; }
[Export ("titleVariants", ArgumentSemantic.Copy)]
string [] TitleVariants { get; }
[Export ("subtitleVariants", ArgumentSemantic.Copy)]
string [] SubtitleVariants { get; }
[NullAllowed, Export ("image", ArgumentSemantic.Copy)]
UIImage Image { get; }
[Export ("primaryAction", ArgumentSemantic.Strong)]
CPAlertAction PrimaryAction { get; }
[NullAllowed, Export ("secondaryAction", ArgumentSemantic.Strong)]
CPAlertAction SecondaryAction { get; }
[Export ("duration")]
double Duration { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPTravelEstimates : NSSecureCoding {
[Export ("initWithDistanceRemaining:timeRemaining:")]
[DesignatedInitializer]
IntPtr Constructor (NSMeasurement<NSUnitLength> distance, double time);
[Export ("distanceRemaining", ArgumentSemantic.Copy)]
NSMeasurement<NSUnitLength> DistanceRemaining { get; }
[Export ("timeRemaining")]
double TimeRemaining { get; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPNavigationSession {
[Export ("pauseTripForReason:")]
void PauseTrip (CPTripPauseReason reason);
[Export ("finishTrip")]
void FinishTrip ();
[Export ("cancelTrip")]
void CancelTrip ();
[Export ("upcomingManeuvers", ArgumentSemantic.Copy)]
CPManeuver [] UpcomingManeuvers { get; set; }
[Export ("trip", ArgumentSemantic.Strong)]
CPTrip Trip { get; }
[Export ("updateTravelEstimates:forManeuver:")]
void UpdateTravelEstimates (CPTravelEstimates estimates, CPManeuver maneuver);
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (CPTemplate))]
interface CPSearchTemplate {
[Wrap ("WeakDelegate")]
[NullAllowed]
ICPSearchTemplateDelegate Delegate { get; set; }
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
}
interface ICPSearchTemplateDelegate { }
delegate void CPSearchTemplateDelegateUpdateHandler (CPListItem [] searchResults);
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model (AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPSearchTemplateDelegate {
[Abstract]
[Export ("searchTemplate:updatedSearchText:completionHandler:")]
void UpdatedSearchText (CPSearchTemplate searchTemplate, string searchText, CPSearchTemplateDelegateUpdateHandler completionHandler);
[Abstract]
[Export ("searchTemplate:selectedResult:completionHandler:")]
void SelectedResult (CPSearchTemplate searchTemplate, CPListItem item, Action completionHandler);
[Export ("searchTemplateSearchButtonPressed:")]
void SearchButtonPressed (CPSearchTemplate searchTemplate);
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPSessionConfiguration {
[Export ("initWithDelegate:")]
[DesignatedInitializer]
IntPtr Constructor (ICPSessionConfigurationDelegate @delegate);
[Export ("limitedUserInterfaces")]
CPLimitableUserInterface LimitedUserInterfaces { get; }
[Wrap ("WeakDelegate")]
[NullAllowed]
ICPSessionConfigurationDelegate Delegate { get; set; }
[NullAllowed, Export ("delegate", ArgumentSemantic.Weak)]
NSObject WeakDelegate { get; set; }
}
interface ICPSessionConfigurationDelegate { }
[NoWatch, NoTV, NoMac, iOS (12,0)]
[Protocol, Model ( AutoGeneratedName = true)]
[BaseType (typeof (NSObject))]
interface CPSessionConfigurationDelegate {
[Abstract]
[Export ("sessionConfiguration:limitedUserInterfacesChanged:")]
void LimitedUserInterfacesChanged (CPSessionConfiguration sessionConfiguration, CPLimitableUserInterface limitedUserInterfaces);
}
[Abstract]
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
interface CPTemplate : NSSecureCoding {
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPRouteChoice : NSCopying, NSSecureCoding {
[Export ("initWithSummaryVariants:additionalInformationVariants:")]
[DesignatedInitializer]
IntPtr Constructor (string [] summaryVariants, string [] additionalInformationVariants);
[Export ("summaryVariants", ArgumentSemantic.Copy)]
string [] SummaryVariants { get; }
[Export ("additionalInformationVariants", ArgumentSemantic.Copy)]
string [] AdditionalInformationVariants { get; }
[NullAllowed, Export ("userInfo", ArgumentSemantic.Strong)]
NSObject UserInfo { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (NSObject))]
[DisableDefaultCtor]
interface CPTrip : NSSecureCoding {
[Export ("initWithOrigin:destination:routeChoices:")]
[DesignatedInitializer]
IntPtr Constructor (MKMapItem origin, MKMapItem destination, CPRouteChoice [] routeChoices);
[Export ("origin", ArgumentSemantic.Strong)]
MKMapItem Origin { get; }
[Export ("destination", ArgumentSemantic.Strong)]
MKMapItem Destination { get; }
[Export ("routeChoices", ArgumentSemantic.Copy)]
CPRouteChoice [] RouteChoices { get; }
[NullAllowed, Export ("userInfo", ArgumentSemantic.Strong)]
NSObject UserInfo { get; set; }
}
[NoWatch, NoTV, NoMac, iOS (12,0)]
[BaseType (typeof (CPTemplate))]
[DisableDefaultCtor]
interface CPVoiceControlTemplate {
[Export ("initWithTitleVariants:animatedImage:")]
IntPtr Constructor (string [] titleVariants, UIImage animatedImage);
[Export ("titleVariants", ArgumentSemantic.Copy)]
string [] TitleVariants { get; }
[Export ("animatedImage", ArgumentSemantic.Strong)]
UIImage AnimatedImage { get; }
}
}
#endif // XAMCORE_2_0

Просмотреть файл

@ -294,6 +294,11 @@ BUSINESSCHAT_SOURCES = \
CALLKIT_SOURCES = \
CallKit/CXProvider.cs \
# CarPlay
CARPLAY_SOURCES = \
CarPlay/CPNavigationAlert.cs \
# ClassKit
CLASSKIT_SOURCES = \
@ -1723,6 +1728,7 @@ IOS_FRAMEWORKS = \
AudioUnit \
BusinessChat \
CallKit \
CarPlay \
CFNetwork \
ClassKit \
CloudKit \

Просмотреть файл

@ -1,163 +0,0 @@
!missing-enum! CPAlertActionStyle not bound
!missing-enum! CPAlertStyle not bound
!missing-enum! CPBarButtonType not bound
!missing-enum! CPLimitableUserInterface not bound
!missing-enum! CPNavigationAlertDismissalContext not bound
!missing-enum! CPNavigationAlertPriority not bound
!missing-enum! CPPanDirection not bound
!missing-enum! CPTripPauseReason not bound
!missing-field! CPMaximumListItemImageSize not bound
!missing-protocol! CPApplicationDelegate not bound
!missing-protocol! CPBarButtonProviding not bound
!missing-protocol! CPInterfaceControllerDelegate not bound
!missing-protocol! CPListTemplateDelegate not bound
!missing-protocol! CPMapTemplateDelegate not bound
!missing-protocol! CPSearchTemplateDelegate not bound
!missing-protocol! CPSessionConfigurationDelegate not bound
!missing-selector! CPAlert::actions not bound
!missing-selector! CPAlert::initWithTitleVariants:style:actions: not bound
!missing-selector! CPAlert::style not bound
!missing-selector! CPAlert::titleVariants not bound
!missing-selector! CPAlertAction::handler not bound
!missing-selector! CPAlertAction::initWithTitle:style:handler: not bound
!missing-selector! CPAlertAction::style not bound
!missing-selector! CPAlertAction::title not bound
!missing-selector! CPBarButton::buttonType not bound
!missing-selector! CPBarButton::image not bound
!missing-selector! CPBarButton::initWithType:handler: not bound
!missing-selector! CPBarButton::isEnabled not bound
!missing-selector! CPBarButton::setEnabled: not bound
!missing-selector! CPBarButton::setImage: not bound
!missing-selector! CPBarButton::setTitle: not bound
!missing-selector! CPBarButton::title not bound
!missing-selector! CPGridButton::image not bound
!missing-selector! CPGridButton::initWithTitleVariants:image:handler: not bound
!missing-selector! CPGridButton::isEnabled not bound
!missing-selector! CPGridButton::setEnabled: not bound
!missing-selector! CPGridButton::titleVariants not bound
!missing-selector! CPGridTemplate::gridButtons not bound
!missing-selector! CPGridTemplate::initWithTitle:gridButtons: not bound
!missing-selector! CPGridTemplate::title not bound
!missing-selector! CPInterfaceController::delegate not bound
!missing-selector! CPInterfaceController::dismissAlertAnimated: not bound
!missing-selector! CPInterfaceController::popTemplateAnimated: not bound
!missing-selector! CPInterfaceController::popToRootTemplateAnimated: not bound
!missing-selector! CPInterfaceController::popToTemplate:animated: not bound
!missing-selector! CPInterfaceController::presentAlert: not bound
!missing-selector! CPInterfaceController::pushTemplate:animated: not bound
!missing-selector! CPInterfaceController::rootTemplate not bound
!missing-selector! CPInterfaceController::setDelegate: not bound
!missing-selector! CPInterfaceController::setRootTemplate:animated: not bound
!missing-selector! CPInterfaceController::templates not bound
!missing-selector! CPInterfaceController::topTemplate not bound
!missing-selector! CPListItem::detailText not bound
!missing-selector! CPListItem::image not bound
!missing-selector! CPListItem::initWithText:detailText: not bound
!missing-selector! CPListItem::initWithText:detailText:image: not bound
!missing-selector! CPListItem::initWithText:detailText:image:showsDisclosureIndicator: not bound
!missing-selector! CPListItem::setUserInfo: not bound
!missing-selector! CPListItem::showsDisclosureIndicator not bound
!missing-selector! CPListItem::text not bound
!missing-selector! CPListItem::userInfo not bound
!missing-selector! CPListSection::header not bound
!missing-selector! CPListSection::initWithItems: not bound
!missing-selector! CPListSection::initWithItems:header:sectionIndexTitle: not bound
!missing-selector! CPListSection::items not bound
!missing-selector! CPListSection::sectionIndexTitle not bound
!missing-selector! CPListTemplate::delegate not bound
!missing-selector! CPListTemplate::initWithSections: not bound
!missing-selector! CPListTemplate::sections not bound
!missing-selector! CPListTemplate::setDelegate: not bound
!missing-selector! CPListTemplate::setTitle: not bound
!missing-selector! CPListTemplate::title not bound
!missing-selector! CPListTemplate::updateSections: not bound
!missing-selector! CPManeuver::distanceFromPreviousManeuver not bound
!missing-selector! CPManeuver::instructionVariants not bound
!missing-selector! CPManeuver::setDistanceFromPreviousManeuver: not bound
!missing-selector! CPManeuver::setInstructionVariants: not bound
!missing-selector! CPManeuver::setSymbol: not bound
!missing-selector! CPManeuver::setUserInfo: not bound
!missing-selector! CPManeuver::symbol not bound
!missing-selector! CPManeuver::userInfo not bound
!missing-selector! CPMapButton::focusedImage not bound
!missing-selector! CPMapButton::image not bound
!missing-selector! CPMapButton::initWithHandler: not bound
!missing-selector! CPMapButton::isEnabled not bound
!missing-selector! CPMapButton::isHidden not bound
!missing-selector! CPMapButton::setEnabled: not bound
!missing-selector! CPMapButton::setFocusedImage: not bound
!missing-selector! CPMapButton::setHidden: not bound
!missing-selector! CPMapButton::setImage: not bound
!missing-selector! CPMapTemplate::automaticallyHidesNavigationBar not bound
!missing-selector! CPMapTemplate::currentNavigationAlert not bound
!missing-selector! CPMapTemplate::dismissNavigationAlertAnimated:completion: not bound
!missing-selector! CPMapTemplate::dismissPanningInterfaceAnimated: not bound
!missing-selector! CPMapTemplate::hidesButtonsWithNavigationBar not bound
!missing-selector! CPMapTemplate::mapButtons not bound
!missing-selector! CPMapTemplate::mapDelegate not bound
!missing-selector! CPMapTemplate::presentNavigationAlert:animated: not bound
!missing-selector! CPMapTemplate::setAutomaticallyHidesNavigationBar: not bound
!missing-selector! CPMapTemplate::setHidesButtonsWithNavigationBar: not bound
!missing-selector! CPMapTemplate::setMapButtons: not bound
!missing-selector! CPMapTemplate::setMapDelegate: not bound
!missing-selector! CPMapTemplate::showPanningInterfaceAnimated: not bound
!missing-selector! CPMapTemplate::showTripPreviews: not bound
!missing-selector! CPMapTemplate::startNavigationSessionForTrip: not bound
!missing-selector! CPMapTemplate::updateTravelEstimates:forTrip: not bound
!missing-selector! CPNavigationAlert::alertPriority not bound
!missing-selector! CPNavigationAlert::duration not bound
!missing-selector! CPNavigationAlert::image not bound
!missing-selector! CPNavigationAlert::initWithTitleVariants:subtitleVariants:image:priority:primaryAction:secondaryAction:duration: not bound
!missing-selector! CPNavigationAlert::primaryAction not bound
!missing-selector! CPNavigationAlert::secondaryAction not bound
!missing-selector! CPNavigationAlert::subtitleVariants not bound
!missing-selector! CPNavigationAlert::titleVariants not bound
!missing-selector! CPNavigationSession::pauseTripForReason: not bound
!missing-selector! CPNavigationSession::setUpcomingManeuvers: not bound
!missing-selector! CPNavigationSession::trip not bound
!missing-selector! CPNavigationSession::upcomingManeuvers not bound
!missing-selector! CPNavigationSession::updateTravelEstimates:forManeuver: not bound
!missing-selector! CPRouteChoice::additionalInformationVariants not bound
!missing-selector! CPRouteChoice::initWithSummaryVariants:additionalInformationVariants: not bound
!missing-selector! CPRouteChoice::setUserInfo: not bound
!missing-selector! CPRouteChoice::summaryVariants not bound
!missing-selector! CPRouteChoice::userInfo not bound
!missing-selector! CPSearchTemplate::delegate not bound
!missing-selector! CPSearchTemplate::setDelegate: not bound
!missing-selector! CPSessionConfiguration::delegate not bound
!missing-selector! CPSessionConfiguration::initWithDelegate: not bound
!missing-selector! CPSessionConfiguration::limitedUserInterfaces not bound
!missing-selector! CPSessionConfiguration::setDelegate: not bound
!missing-selector! CPTravelEstimates::distanceRemaining not bound
!missing-selector! CPTravelEstimates::initWithDistanceRemaining:timeRemaining: not bound
!missing-selector! CPTravelEstimates::timeRemaining not bound
!missing-selector! CPTrip::destination not bound
!missing-selector! CPTrip::initWithOrigin:destination:routeChoices: not bound
!missing-selector! CPTrip::origin not bound
!missing-selector! CPTrip::routeChoices not bound
!missing-selector! CPTrip::setUserInfo: not bound
!missing-selector! CPTrip::userInfo not bound
!missing-selector! CPVoiceControlTemplate::animatedImage not bound
!missing-selector! CPVoiceControlTemplate::initWithTitleVariants:animatedImage: not bound
!missing-selector! CPVoiceControlTemplate::titleVariants not bound
!missing-type! CPAlert not bound
!missing-type! CPAlertAction not bound
!missing-type! CPBarButton not bound
!missing-type! CPGridButton not bound
!missing-type! CPGridTemplate not bound
!missing-type! CPInterfaceController not bound
!missing-type! CPListItem not bound
!missing-type! CPListSection not bound
!missing-type! CPListTemplate not bound
!missing-type! CPManeuver not bound
!missing-type! CPMapButton not bound
!missing-type! CPMapTemplate not bound
!missing-type! CPNavigationAlert not bound
!missing-type! CPNavigationSession not bound
!missing-type! CPRouteChoice not bound
!missing-type! CPSearchTemplate not bound
!missing-type! CPSessionConfiguration not bound
!missing-type! CPTemplate not bound
!missing-type! CPTravelEstimates not bound
!missing-type! CPTrip not bound
!missing-type! CPVoiceControlTemplate not bound

Просмотреть файл

@ -281,6 +281,8 @@ public class Frameworks : Dictionary <string, Framework>
{ "BusinessChat", "BusinessChat", 11, 3 },
{ "ClassKit", "ClassKit", 11,4 },
{ "CarPlay", "CarPlay", 12,0 },
};
}
return ios_frameworks;

Просмотреть файл

@ -301,7 +301,10 @@ SIMLAUNCHER_FRAMEWORKS = \
\
-weak_framework IdentityLookup \
-weak_framework BusinessChat \
-weak_framework ClassKit
-weak_framework ClassKit \
\
-weak_framework CarPlay \
# note: there _was_ no CoreAudioKit.framework or Metal.framework for the simulator (before recent iOS9 betas)
# note 2: there's no GameKit, in iOS 9 (beta 3 at least), you're supposed to reference GameCenter instead (looks fixed in beta 4)