From 905edce2b8ef2d714cfa740b50d3e6f80d7d3a1c Mon Sep 17 00:00:00 2001 From: Samuel Vermeulen Date: Sat, 11 Jun 2022 23:51:56 +0200 Subject: [PATCH] Ajout MediaPlayer class --- .idea/deploymentTargetDropDown.xml | 17 ---------- .idea/misc.xml | 2 +- .../fr/svpro/radiomercure/MainActivity.java | 31 +++++++++++++++++-- .../fr/svpro/radiomercure/MediaWebView.java | 27 ---------------- app/src/main/res/layout/activity_main.xml | 5 ++- app/src/main/res/menu/option.xml | 7 +++++ app/src/main/res/values/strings.xml | 1 + 7 files changed, 41 insertions(+), 49 deletions(-) delete mode 100644 .idea/deploymentTargetDropDown.xml delete mode 100644 app/src/main/java/fr/svpro/radiomercure/MediaWebView.java diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml deleted file mode 100644 index d89236d..0000000 --- a/.idea/deploymentTargetDropDown.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 759dcab..8e6f6d5 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -5,7 +5,7 @@ - + diff --git a/app/src/main/java/fr/svpro/radiomercure/MainActivity.java b/app/src/main/java/fr/svpro/radiomercure/MainActivity.java index 3078547..fa8fe59 100644 --- a/app/src/main/java/fr/svpro/radiomercure/MainActivity.java +++ b/app/src/main/java/fr/svpro/radiomercure/MainActivity.java @@ -6,16 +6,22 @@ import android.app.Dialog; import android.app.DownloadManager; import android.content.Intent; import android.content.pm.PackageManager; +import android.media.MediaPlayer; import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.os.Environment; +import android.util.Log; import android.view.Menu; import android.view.MenuItem; +import android.view.WindowManager; import android.webkit.CookieManager; +import android.webkit.JavascriptInterface; import android.webkit.URLUtil; +import android.webkit.WebChromeClient; import android.webkit.WebSettings; import android.webkit.WebView; +import android.webkit.WebViewClient; import android.widget.TextView; import android.widget.Toast; @@ -23,6 +29,8 @@ import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.core.app.ActivityCompat; +import java.io.IOException; + public class MainActivity extends AppCompatActivity { private static final int WRITE_EXTERNAL_STORAGE_RC = 100; @@ -39,16 +47,17 @@ public class MainActivity extends AppCompatActivity { versionName = BuildConfig.VERSION_NAME; } - @SuppressLint("SetJavaScriptEnabled") + @SuppressLint({"SetJavaScriptEnabled", "WrongViewCast", "JavascriptInterface"}) @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //-------------A revoir-----------// - // getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); + getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); //--------------------------------// web = findViewById(R.id.wv); + web.setWebViewClient(new WebViewClient()); web.getSettings().setUserAgentString("Mozilla/5.0 "+ getApplicationInfo().packageName); web.getSettings().setJavaScriptEnabled(true); web.getSettings().setAllowFileAccess(true); @@ -62,11 +71,12 @@ public class MainActivity extends AppCompatActivity { web.getSettings().setUseWideViewPort(true); web.getSettings().setLoadWithOverviewMode(true); web.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN); + //Log.w("AGENT", web.getSettings().getUserAgentString()); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { web.getSettings().setAllowFileAccessFromFileURLs(true); } - web.loadUrl("https://www.radiomercure.fr"); + web.loadUrl("https://www.radiomercure.fr/?playerbar-pageinicial"); web.setDownloadListener((url, userAgent, contentDisposition, mimeType, contentLength) -> { MainActivity.this.url = url; @@ -165,6 +175,21 @@ public class MainActivity extends AppCompatActivity { startActivity(intent); return true; + case R.id.live: + MediaPlayer mediaPlayer = new MediaPlayer(); + try { + mediaPlayer.setDataSource("https://live.radiomercure.fr/on-air/live"); + } catch (IOException e) { + e.printStackTrace(); + } + try { + mediaPlayer.prepare(); + } catch (IOException e) { + e.printStackTrace(); + } + mediaPlayer.start(); + return true; + default: return super.onOptionsItemSelected(item); } diff --git a/app/src/main/java/fr/svpro/radiomercure/MediaWebView.java b/app/src/main/java/fr/svpro/radiomercure/MediaWebView.java deleted file mode 100644 index c2f74cc..0000000 --- a/app/src/main/java/fr/svpro/radiomercure/MediaWebView.java +++ /dev/null @@ -1,27 +0,0 @@ -package fr.svpro.radiomercure; - -import android.content.Context; -import android.util.AttributeSet; -import android.webkit.WebView; - -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; - -public class MediaWebView extends WebView { - - public MediaWebView(@NonNull Context context) { - super(context); - } - - public MediaWebView(@NonNull Context context, @Nullable AttributeSet attrs) { - super(context, attrs); - } - - public MediaWebView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - } - - public MediaWebView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr, int defStyleRes) { - super(context, attrs, defStyleAttr, defStyleRes); - } -} diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index c2fcf6a..7880b8a 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -9,5 +9,8 @@ + android:layout_height="match_parent"> + + + \ No newline at end of file diff --git a/app/src/main/res/menu/option.xml b/app/src/main/res/menu/option.xml index 64e858c..d58771f 100644 --- a/app/src/main/res/menu/option.xml +++ b/app/src/main/res/menu/option.xml @@ -10,11 +10,18 @@ android:id="@+id/refresh" android:title="@string/menu_reload" /> + + + Radio Mercure Quitter Appeler la Radio + Ecouter en direct Relancer... A Propos... Fermer