Xamarin-ios共享和接收audio文件

如何将我的应用程序中的audio文件共享到其他应用程序并从其他应用程序接收audio文件?

我想要这样的function: IMG

我无法附加audio文件。 这里是代码片段:

var fileData = NSUrl.FromFilename(path); var item = UIActivity.FromObject(@"<html><body><b>URL</b>: <a href='" + url + "'>" + url + "</a></body></html>");// NSObject.FromObject(uiImage); var activityItems = new[] { fileData }; NSString message = (NSString)"Test"; var activityController = new UIActivityViewController(activityItems, null); activityController.SetValueForKey(NSObject.FromObject("The subject value"), new NSString("subject")); var topController = UIApplication.SharedApplication.KeyWindow.RootViewController; while (topController.PresentedViewController != null) { topController = topController.PresentedViewController; } topController.PresentViewController(activityController, true, () => { }); 

如果文件附加为邮件,我还想添加主题和正文。

试过这个,但没有运气,得到一个错误:

 activityController.SetValueForKey(NSObject.FromObject("The subject value"), new NSString("subject")); activityController.SetValueForKey(NSObject.FromObject("The body value"), new NSString("body")); 

另外我想接收其他应用程序共享的audio文件。 我已经在Android中使用依赖项服务和意图filter完成了function。 对于android代码已被添加到mainactivity.cs我使用意图filter接受来自其他应用程序的audio文件。 如何在iOS中做到这一点?

您可以通过在主应用程序和扩展程序之间共享数据来共享和接收文件。 请注意,您的应用和附加应用应属于同一个应用组。

  1. 应用程序扩展要点https://developer.apple.com/library/ios/documentation/General/Conceptual/ExtensibilityPG/index.html#//apple_ref/doc/uid/TP40014214-CH20-SW1
  2. 扩展介绍https://developer.xamarin.com/guides/ios/platform_features/introduction_to_extensions/#Overview
  3. 通过示例共享概述http://www.technetexperts.com/mobile/share-extension-in-ios-application-overview-with-example/