我正在用xamarin做一个项目。
我确实需要一个弹出窗口,单击一下按钮即可显示手机中安装的所有音乐应用程序,以便用户可以选择其中任何一个并独立播放音乐。
我可以在具有音乐意图的android中做到这一点。
这就像我要播放mp3文件,然后点击一个按钮。 iOS系统会在工作表中显示所有可用的音乐,通过选择其中一种,我可以播放该mp3文件。
答案 0 :(得分:0)
首先,您声明一个与openApp的接口:
public interface IOpenAppService
{
Task<bool> Launch(string stringUri);
}
然后,在您的customRenderer中:
[assembly: Xamarin.Forms.Dependency(typeof(OpenAppService))]
namespace OpenAppLaunch.iOS
{
public class OpenAppService : IOpenAppService
{
public Task<bool> Launch(string stringUri)
{
try
{
NSUrl request = new NSUrl(stringUrl);
bool isOpened = UIApplication.SharedApplication.OpenUrl(stringUrl);
if (isOpened == false)
UIApplication.SharedApplication.OpenUrl(new NSUrl(stringUrl));
return Task.FromResult(true);
}
catch (Exception ex)
{
Debug.WriteLine("Cannot open url: {0}, Error: {1}", request.AbsoluteString, ex.Message);
var alertView = new UIAlertView("Error", ex.Message, null, "OK", null);
alertView.Show();
return Task.FromResult(false);
}
}
}
您可以通过致电OpenAppService.Launch("skype://");