1

1. Init CrossMediaManager on MainActivity

protected override void OnCreate(Bundle savedInstanceState)
{
    TabLayoutResource = Resource.Layout.Tabbar;
    ToolbarResource = Resource.Layout.Toolbar;

    base.OnCreate(savedInstanceState);

    Xamarin.Essentials.Platform.Init(this, savedInstanceState);
    global::Xamarin.Forms.Forms.Init(this, savedInstanceState);

    CrossMediaManager.Current.Init(this);

    LoadApplication(new App());
 }

2. Click on button to Execute the play function

var mediaItem = await CrossMediaManager.Current.Play("http://tasfiaradio.servemp3.com:8000/tasfia1");

Same with

IMediaItem mediaFile = await CrossMediaManager.Current.Extractor.CreateMediaItem("http://tasfiaradio.servemp3.com:8000/tasfia1"); 
var mediaItem = await CrossMediaManager.Current.Play(mediaFile);

Expected behavior

hearing sound

Configuration

Plugin.MediaManager: 0.9.7 Xamarin.Forms: 4.5.0.495

Sidali
  • 11
  • 2
  • 1
    Please make sure you can connect `http://tasfiaradio.servemp3.com:8000/tasfia1` in your Android device successfuly. I used your url, I cannot conect it as well, but I change another test link to play a audio file, it could running normally.(https://ia800806.us.archive.org/15/items/Mp3Playlist_555/AaronNeville-CrazyLove.mp3) – Leon Mar 30 '20 at 02:30
  • Thanks Leon, ** 1 ** : My url work fine with older version of Media Manager, you can also test the url in browser. ** 2 ** : With the url you provided I can retrieve file information but no sound is played, I missing some things ? – Sidali Mar 30 '20 at 20:56
  • I test his url in my browser, it not work.....,Access my test url is a bit slow, you need to wait a while – Leon Apr 01 '20 at 09:50

1 Answers1

0

By default, Android allows only https traffic, adding android:usesCleartextTraffic="true" to application tag worked for me. Below is the AndroidManifest configuration file content.

<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" package="com.testcrossmediaplayer" 
      android:installLocation="auto" android:versionName="1.0" >
<uses-sdk android:minSdkVersion="28" android:targetSdkVersion="29" />
<application android:label="Test Cross Media Player" android:usesCleartextTraffic="true"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />