最近我添加了Broadcast Upload Extension到Xamarin.Forms项目,但是我找不到一种方法来调用扩展并从容器应用程序中将其呈现给用户。如何调用扩展并将其呈现给用户?通过OpenUrl和它的包标识符?
0ejtzxu11#
需要像这样调用:
var bundle = NSBundle.MainBundle.GetUrlForResource("Foo.iOS.ScreenShareExtensionUI", "appex", "PlugIns"); RPScreenRecorder.SharedRecorder.StartRecording(true, error => { if (error != null) LogService.Log(error.LocalizedFailureReason, LogService.LogLevel.ERROR, "StartRecording"); }); RPBroadcastActivityViewController.LoadBroadcastActivityViewController(bundle.AbsoluteUrl.ToString(), (controller, error) => { UIApplication.SharedApplication.KeyWindow.RootViewController.PresentViewController(controller, true, null); RPBroadcastActivityViewController = controller; });
7bsow1i62#
我想这是重复的您需要仔细检查NSExtension密钥。默认情况下,BroadcastUploadExtension项目的NSExtensionPointIdentifier的值被写为com.apple.broadcast-services,并且应该是com.apple.broadcast-services-upload默认情况下,BroadcastUIExtension项目的NSExtensionPointIdentifier的值被写为com.apple.broadcast-services,并且应该是com.apple.broadcast-services-setupui参考
NSExtension
NSExtensionPointIdentifier
2条答案
按热度按时间0ejtzxu11#
需要像这样调用:
7bsow1i62#
我想这是重复的
您需要仔细检查
NSExtension
密钥。默认情况下,BroadcastUploadExtension项目的
NSExtensionPointIdentifier
的值被写为com.apple.broadcast-services,并且应该是com.apple.broadcast-services-upload默认情况下,BroadcastUIExtension项目的
NSExtensionPointIdentifier
的值被写为com.apple.broadcast-services,并且应该是com.apple.broadcast-services-setupui参考