diff --git a/detekt-baseline.xml b/detekt-baseline.xml index e1cb4ed7..856dc92d 100644 --- a/detekt-baseline.xml +++ b/detekt-baseline.xml @@ -5,7 +5,6 @@ ComplexCondition:DownloadHandler.kt$DownloadHandler.<no name provided>$!append && !playNext && !unpin && !background ComplexCondition:FilePickerAdapter.kt$FilePickerAdapter$currentDirectory.absolutePath == "/" || currentDirectory.absolutePath == "/storage" || currentDirectory.absolutePath == "/storage/emulated" || currentDirectory.absolutePath == "/mnt" ComplexCondition:LocalMediaPlayer.kt$LocalMediaPlayer$Util.getGaplessPlaybackPreference() && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN && ( playerState === PlayerState.STARTED || playerState === PlayerState.PAUSED ) - ComplexCondition:SongView.kt$SongView$TextUtils.isEmpty(transcodedSuffix) || transcodedSuffix == suffix || song.isVideo && Util.getVideoPlayerType() !== VideoPlayerType.FLASH ComplexMethod:DownloadFile.kt$DownloadFile.DownloadTask$override fun execute() ComplexMethod:FilePickerAdapter.kt$FilePickerAdapter$private fun fileLister(currentDirectory: File) ComplexMethod:SongView.kt$SongView$fun setSong(song: MusicDirectory.Entry, checkable: Boolean, draggable: Boolean) diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SettingsFragment.java b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SettingsFragment.java index 66da521d..5a6cfdd8 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SettingsFragment.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SettingsFragment.java @@ -55,7 +55,6 @@ public class SettingsFragment extends PreferenceFragmentCompat private Preference addServerPreference; private ListPreference theme; - private ListPreference videoPlayer; private ListPreference maxBitrateWifi; private ListPreference maxBitrateMobile; private ListPreference cacheSize; @@ -110,7 +109,6 @@ public class SettingsFragment extends PreferenceFragmentCompat addServerPreference = findPreference(Constants.PREFERENCES_KEY_SERVERS_EDIT); theme = findPreference(Constants.PREFERENCES_KEY_THEME); - videoPlayer = findPreference(Constants.PREFERENCES_KEY_VIDEO_PLAYER); maxBitrateWifi = findPreference(Constants.PREFERENCES_KEY_MAX_BITRATE_WIFI); maxBitrateMobile = findPreference(Constants.PREFERENCES_KEY_MAX_BITRATE_MOBILE); cacheSize = findPreference(Constants.PREFERENCES_KEY_CACHE_SIZE); @@ -411,7 +409,6 @@ public class SettingsFragment extends PreferenceFragmentCompat private void update() { theme.setSummary(theme.getEntry()); - videoPlayer.setSummary(videoPlayer.getEntry()); maxBitrateWifi.setSummary(maxBitrateWifi.getEntry()); maxBitrateMobile.setSummary(maxBitrateMobile.getEntry()); cacheSize.setSummary(cacheSize.getEntry()); diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/Constants.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/Constants.java index 14806a76..880564d8 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/Constants.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/util/Constants.java @@ -117,7 +117,6 @@ public final class Constants public static final String PREFERENCES_KEY_CLEAR_PLAYLIST = "clearPlaylist"; public static final String PREFERENCES_KEY_CLEAR_BOOKMARK = "clearBookmark"; public static final String PREFERENCES_KEY_DISC_SORT = "discAndTrackSort"; - public static final String PREFERENCES_KEY_VIDEO_PLAYER = "videoPlayer"; public static final String PREFERENCES_KEY_SEND_BLUETOOTH_NOTIFICATIONS = "sendBluetoothNotifications"; public static final String PREFERENCES_KEY_SEND_BLUETOOTH_ALBUM_ART = "sendBluetoothAlbumArt"; public static final String PREFERENCES_KEY_VIEW_REFRESH = "viewRefresh"; diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/Util.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/Util.java index 82366ed6..e93d7cc4 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/Util.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/util/Util.java @@ -21,8 +21,9 @@ package org.moire.ultrasonic.util; import android.annotation.SuppressLint; import android.app.Activity; import android.app.AlertDialog; -import android.content.*; -import android.content.pm.ApplicationInfo; +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; import android.content.pm.PackageManager; import android.content.res.Resources; import android.content.res.TypedArray; @@ -39,7 +40,6 @@ import android.os.Build; import android.os.Environment; import android.os.Parcelable; import android.util.DisplayMetrics; -import timber.log.Timber; import android.util.TypedValue; import android.view.Gravity; import android.view.View; @@ -51,19 +51,32 @@ import androidx.preference.PreferenceManager; import org.moire.ultrasonic.R; import org.moire.ultrasonic.app.UApp; import org.moire.ultrasonic.data.ActiveServerProvider; -import org.moire.ultrasonic.domain.*; +import org.moire.ultrasonic.domain.Bookmark; +import org.moire.ultrasonic.domain.MusicDirectory; import org.moire.ultrasonic.domain.MusicDirectory.Entry; +import org.moire.ultrasonic.domain.PlayerState; +import org.moire.ultrasonic.domain.RepeatMode; +import org.moire.ultrasonic.domain.SearchResult; import org.moire.ultrasonic.service.DownloadFile; import org.moire.ultrasonic.service.MediaPlayerService; -import java.io.*; +import java.io.ByteArrayOutputStream; +import java.io.Closeable; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.text.DecimalFormat; -import java.util.List; import java.util.Locale; import java.util.concurrent.TimeUnit; import java.util.regex.Pattern; +import timber.log.Timber; + /** * @author Sindre Mehus * @version $Id$ @@ -1148,36 +1161,6 @@ public class Util else return minutes > 0 ? String.format(Locale.getDefault(), "%d:%02d", minutes, seconds) : String.format(Locale.getDefault(), "0:%02d", seconds); } - public static VideoPlayerType getVideoPlayerType() - { - SharedPreferences preferences = getPreferences(); - return VideoPlayerType.forKey(preferences.getString(Constants.PREFERENCES_KEY_VIDEO_PLAYER, VideoPlayerType.MX.getKey())); - } - - public static boolean isPackageInstalled(Context context, String packageName) - { - PackageManager pm = context.getPackageManager(); - List packages = null; - - if (pm != null) - { - packages = pm.getInstalledApplications(0); - } - - if (packages != null) - { - for (ApplicationInfo packageInfo : packages) - { - if (packageInfo.packageName.equals(packageName)) - { - return true; - } - } - } - - return false; - } - public static String getVersionName(Context context) { String versionName = null; diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/util/VideoPlayerType.java b/ultrasonic/src/main/java/org/moire/ultrasonic/util/VideoPlayerType.java deleted file mode 100644 index ff005e73..00000000 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/util/VideoPlayerType.java +++ /dev/null @@ -1,139 +0,0 @@ -/* - This file is part of Subsonic. - - Subsonic is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Subsonic is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with Subsonic. If not, see . - - Copyright 2013 (C) Sindre Mehus - */ -package org.moire.ultrasonic.util; - -import android.app.AlertDialog; -import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; -import android.net.Uri; - -import org.moire.ultrasonic.R; -import org.moire.ultrasonic.domain.MusicDirectory; -import org.moire.ultrasonic.service.MusicServiceFactory; - -/** - * @author Sindre Mehus - * @version $Id: VideoPlayerType.java 3473 2013-05-23 16:42:49Z sindre_mehus $ - */ -public enum VideoPlayerType -{ - - MX("mx") - { - @Override - public void playVideo(final Context context, MusicDirectory.Entry entry) throws Exception - { - - // Check if MX Player is installed. - boolean installedAd = Util.isPackageInstalled(context, PACKAGE_NAME_MX_AD); - boolean installedPro = Util.isPackageInstalled(context, PACKAGE_NAME_MX_PRO); - - if (!installedAd && !installedPro) - { - new AlertDialog.Builder(context).setMessage(R.string.video_get_mx_player_text).setPositiveButton(R.string.video_get_mx_player_button, new DialogInterface.OnClickListener() - { - @Override - public void onClick(DialogInterface dialog, int i) - { - try - { - context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("market://details?id=%s", PACKAGE_NAME_MX_AD)))); - } - catch (android.content.ActivityNotFoundException x) - { - context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(String.format("http://play.google.com/store/apps/details?id=%s", PACKAGE_NAME_MX_AD)))); - } - - dialog.dismiss(); - } - }).setNegativeButton(R.string.common_cancel, new DialogInterface.OnClickListener() - { - @Override - public void onClick(DialogInterface dialog, int i) - { - dialog.dismiss(); - } - }).show(); - - } - else - { - // See documentation on https://sites.google.com/site/mxvpen/api - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.setPackage(installedPro ? PACKAGE_NAME_MX_PRO : PACKAGE_NAME_MX_AD); - intent.putExtra("title", entry.getTitle()); - intent.setDataAndType(Uri.parse(MusicServiceFactory.getMusicService().getVideoUrl(entry.getId(), false)), "video/*"); - context.startActivity(intent); - } - } - }, - - FLASH("flash") - { - @Override - public void playVideo(Context context, MusicDirectory.Entry entry) throws Exception - { - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.setData(Uri.parse(MusicServiceFactory.getMusicService().getVideoUrl(entry.getId(), true))); - context.startActivity(intent); - } - }, - - DEFAULT("default") - { - @Override - public void playVideo(Context context, MusicDirectory.Entry entry) throws Exception - { - Intent intent = new Intent(Intent.ACTION_VIEW); - intent.setDataAndType(Uri.parse(MusicServiceFactory.getMusicService().getVideoUrl(entry.getId(), false)), "video/*"); - context.startActivity(intent); - } - }; - - private final String key; - - VideoPlayerType(String key) - { - this.key = key; - } - - public String getKey() - { - return key; - } - - public static VideoPlayerType forKey(String key) - { - for (VideoPlayerType type : VideoPlayerType.values()) - { - if (type.key.equals(key)) - { - return type; - } - } - return null; - } - - public abstract void playVideo(Context context, MusicDirectory.Entry entry) throws Exception; - - private static final String PACKAGE_NAME_MX_AD = "com.mxtech.videoplayer.ad"; - private static final String PACKAGE_NAME_MX_PRO = "com.mxtech.videoplayer.pro"; - -} diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/CachedMusicService.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/CachedMusicService.kt index 30e5ff10..6e329d39 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/CachedMusicService.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/CachedMusicService.kt @@ -264,8 +264,8 @@ class CachedMusicService(private val musicService: MusicService) : MusicService, } @Throws(Exception::class) - override fun getVideoUrl(id: String, useFlash: Boolean): String? { - return musicService.getVideoUrl(id, useFlash) + override fun getVideoUrl(id: String): String? { + return musicService.getVideoUrl(id) } @Throws(Exception::class) diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MusicService.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MusicService.kt index b9e5f5f3..cce41209 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MusicService.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/MusicService.kt @@ -123,7 +123,7 @@ interface MusicService { // TODO: Refactor and remove this call (see RestMusicService implementation) @Throws(Exception::class) - fun getVideoUrl(id: String, useFlash: Boolean): String? + fun getVideoUrl(id: String): String? @Throws(Exception::class) fun updateJukeboxPlaylist(ids: List?): JukeboxStatus diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/OfflineMusicService.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/OfflineMusicService.kt index a4ad2ca9..f8519561 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/OfflineMusicService.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/OfflineMusicService.kt @@ -396,7 +396,7 @@ class OfflineMusicService : MusicService, KoinComponent { } @Throws(OfflineException::class) - override fun getVideoUrl(id: String, useFlash: Boolean): String? { + override fun getVideoUrl(id: String): String? { throw OfflineException("getVideoUrl isn't available in offline mode") } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/RESTMusicService.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/RESTMusicService.kt index 684dc84b..6d3a531c 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/RESTMusicService.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/service/RESTMusicService.kt @@ -481,8 +481,7 @@ open class RESTMusicService( @Throws(Exception::class) override fun getVideoUrl( - id: String, - useFlash: Boolean + id: String ): String { // TODO This method should not exists as video should be loaded using stream method // Previous method implementation uses assumption that video will be available diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt index fb03a627..152aa89a 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt @@ -1,22 +1,30 @@ package org.moire.ultrasonic.subsonic import android.content.Context +import android.content.Intent +import android.net.Uri import org.moire.ultrasonic.R import org.moire.ultrasonic.domain.MusicDirectory +import org.moire.ultrasonic.service.MusicServiceFactory import org.moire.ultrasonic.util.Util /** * This utility class helps starting video playback */ -class VideoPlayer() { +class VideoPlayer { fun playVideo(context: Context, entry: MusicDirectory.Entry?) { - if (!Util.isNetworkConnected()) { + if (!Util.isNetworkConnected() || entry == null) { Util.toast(context, R.string.select_album_no_network) return } - val player = Util.getVideoPlayerType() try { - player.playVideo(context, entry) + val intent = Intent(Intent.ACTION_VIEW) + val url = MusicServiceFactory.getMusicService().getVideoUrl(entry.id) + intent.setDataAndType( + Uri.parse(url), + "video/*" + ) + context.startActivity(intent) } catch (e: Exception) { Util.toast(context, e.toString(), false) } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/view/SongView.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/view/SongView.kt index 3a4638c7..54fcf3a1 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/view/SongView.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/view/SongView.kt @@ -36,7 +36,6 @@ import org.moire.ultrasonic.service.DownloadFile import org.moire.ultrasonic.service.MediaPlayerController import org.moire.ultrasonic.service.MusicServiceFactory.getMusicService import org.moire.ultrasonic.util.Util -import org.moire.ultrasonic.util.VideoPlayerType import org.moire.ultrasonic.view.EntryAdapter.SongViewHolder import timber.log.Timber @@ -111,8 +110,7 @@ class SongView(context: Context) : UpdateView(context), Checkable, KoinComponent val transcodedSuffix = song.transcodedSuffix fileFormat = if ( - TextUtils.isEmpty(transcodedSuffix) || transcodedSuffix == suffix || - song.isVideo && Util.getVideoPlayerType() !== VideoPlayerType.FLASH + TextUtils.isEmpty(transcodedSuffix) || transcodedSuffix == suffix || song.isVideo ) suffix else String.format("%s > %s", suffix, transcodedSuffix) val artistName = song.artist diff --git a/ultrasonic/src/main/res/values-cs/strings.xml b/ultrasonic/src/main/res/values-cs/strings.xml index 55ba92ac..12d0b6ae 100644 --- a/ultrasonic/src/main/res/values-cs/strings.xml +++ b/ultrasonic/src/main/res/values-cs/strings.xml @@ -311,7 +311,7 @@ Očekává jména hlavních adresářů obsahující jména umělců Procházet za použití ID3 tagů Používat metodu ID3 tagů místo jmen na základě adresářové struktury - Video + Video Videopřehrávač Obnovení náhledu .5 sekundy @@ -371,9 +371,6 @@ Výchozí pozdrav sdílení Mrkni na hudbu sdílenou z %s Sdílet skladby přes - MX Player - Výchozí - Flash Sdílení Všechny skladby od %s Zobrazit všechny skladby umělce diff --git a/ultrasonic/src/main/res/values-de/strings.xml b/ultrasonic/src/main/res/values-de/strings.xml index aab075fe..1e522845 100644 --- a/ultrasonic/src/main/res/values-de/strings.xml +++ b/ultrasonic/src/main/res/values-de/strings.xml @@ -308,7 +308,7 @@ Annehmen, dass der Ordner der obersten Ebene der Name des Albumkünstlers ist Durchsuchen von ID3-Tags Nutze ID3 Tag Methode anstatt Dateisystem-Methode - Film + Film Filmwiedergabe Aktualisierungsinterval .5 Sekunden @@ -368,9 +368,6 @@ Standard Begrüßung beim Teilen Hör dir mal die Musik an, die ich mit dir über %s geteilt habe. Titel teilen über - MX Player - Standard - Flash Freigabe Alle Titel von %s Alle Titel nach Künstler sortieren diff --git a/ultrasonic/src/main/res/values-es/strings.xml b/ultrasonic/src/main/res/values-es/strings.xml index 35192166..3d3fcc1a 100644 --- a/ultrasonic/src/main/res/values-es/strings.xml +++ b/ultrasonic/src/main/res/values-es/strings.xml @@ -325,7 +325,7 @@ Usar el método de etiquetas ID3 en lugar del método basado en el sistema de ficheros Mostrar la imagen del artista en la lista de artistas Muestra la imagen del artista en la lista de artistas si está disponible - Vídeo + Vídeo Reproductor de vídeo Refresco de la vista .5 segundos @@ -385,9 +385,6 @@ Saludo predeterminado para los compartidos Echa un vistazo a esta música que te comparto desde %s Compartir canciones vía - MX Player - Por defecto - Flash Compartir Todas las canciones por %s Mostrar todas las canciones por artista diff --git a/ultrasonic/src/main/res/values-fr/strings.xml b/ultrasonic/src/main/res/values-fr/strings.xml index 5bc3b7b7..ba9fdc91 100644 --- a/ultrasonic/src/main/res/values-fr/strings.xml +++ b/ultrasonic/src/main/res/values-fr/strings.xml @@ -313,7 +313,7 @@ Utiliser ID3 Tags à la place du système de fichier basique Afficher l’image de l’artiste dans la liste Affiche l’image de l’artiste dans la liste des artistes si celle-ci est disponible - Vidéo + Vidéo Lecteur vidéo Actualisation de la vue 0,5 secondes @@ -373,9 +373,6 @@ Texte par défaut lors d\'un partage Regardez cette musique que j\'ai partagée depuis %s Partager des titres via - MX Player - Défaut - Flash Partager Tous les titres de %s Voir tous les titres par artiste diff --git a/ultrasonic/src/main/res/values-hu/strings.xml b/ultrasonic/src/main/res/values-hu/strings.xml index 5476f2c3..4493ba59 100644 --- a/ultrasonic/src/main/res/values-hu/strings.xml +++ b/ultrasonic/src/main/res/values-hu/strings.xml @@ -325,7 +325,7 @@ ID3 Tag módszer használata a fájlredszer alapú mód helyett. Előadó képének megjelenítése Az előadó listában megjeleníti a képeket, amennyiben elérhetőek - Videó + Videó Videólejátszó Nézet frissítési gyakorisága .5 másodperc @@ -385,9 +385,6 @@ Alapértelmezett megosztási üzenet Hallgasd meg ezt a zenét, megosztottam innen: %s Dalok megosztása ezzel - MX Player - Alapértelmezett - Flash Megosztás %s minden dala Az előadó összes dalának megjelenítése diff --git a/ultrasonic/src/main/res/values-it/strings.xml b/ultrasonic/src/main/res/values-it/strings.xml index f7031d63..c2820f9b 100644 --- a/ultrasonic/src/main/res/values-it/strings.xml +++ b/ultrasonic/src/main/res/values-it/strings.xml @@ -299,7 +299,7 @@ Presumi che la cartella superiore sia il nome dell\'artista dell\'album Sfoglia Utilizzando Tag ID3 Usa metodi tag ID3 invece dei metodi basati sul filesystem - Video + Video Riproduttore video .5 secondo 1 secondo @@ -336,8 +336,6 @@ Commenta \"%s\" è stato rimosso dalla playlist Condividi canzoni via - MX Player - Predefinito 1 canzone %d canzoni diff --git a/ultrasonic/src/main/res/values-nl/strings.xml b/ultrasonic/src/main/res/values-nl/strings.xml index 9cd9fd00..337185ee 100644 --- a/ultrasonic/src/main/res/values-nl/strings.xml +++ b/ultrasonic/src/main/res/values-nl/strings.xml @@ -325,7 +325,7 @@ ID3-labels gebruiken in plaats van systeemlabels Artiestfoto tonen op artiestenlijst Toont de artiestfoto op de artiestenlijst (indien beschikbaar) - Video + Video Videospeler Verversen 0,5 seconden @@ -385,9 +385,6 @@ Standaard deelbericht Hé, luister eens naar de muziek die ik heb gedeeld via %s Nummers delen via - MX Player - Standaard - Flash Delen Alle nummers van %s Alle nummers van artiest tonen diff --git a/ultrasonic/src/main/res/values-pl/strings.xml b/ultrasonic/src/main/res/values-pl/strings.xml index 4f7b15d1..4e84645d 100644 --- a/ultrasonic/src/main/res/values-pl/strings.xml +++ b/ultrasonic/src/main/res/values-pl/strings.xml @@ -308,7 +308,7 @@ ponieważ api Subsonic nie wspiera nowego sposobu autoryzacji dla użytkowników Zakłada, że folder najwyższego poziomu jest nazwą artysty albumu Przeglądaj używając tagów ID3 Używa metod z tagów ID3 zamiast metod opartych na systemie plików - Wideo + Wideo Odtwarzacz wideo Odświeżanie widoku co pół sekundy @@ -368,9 +368,6 @@ ponieważ api Subsonic nie wspiera nowego sposobu autoryzacji dla użytkowników Domyślny tekst podczas udostępniania Sprawdź muzykę, którą udostępniam na %s Udostępnij utwory za pomocą - MX Player - Domyślny - Flash Udostępnianie Wszystkie utwory %s Wyświetlaj wszystkie utwory artysty diff --git a/ultrasonic/src/main/res/values-pt-rBR/strings.xml b/ultrasonic/src/main/res/values-pt-rBR/strings.xml index 903d7b6a..4127bfdd 100644 --- a/ultrasonic/src/main/res/values-pt-rBR/strings.xml +++ b/ultrasonic/src/main/res/values-pt-rBR/strings.xml @@ -313,7 +313,7 @@ Usar as etiquetas ID3 ao invés do sistema de arquivos Mostrar Foto do Artista na Lista Mostrar a imagem do artista na lista de artistas, se disponível - Vídeo + Vídeo Player de Vídeo Atualização da Tela .5 segundos @@ -373,9 +373,6 @@ Saudação Padrão do Compartilhamento Confira esta música que compartilhei do %s Compartilhar músicas via - MX Player - Padrão - Flash Compartilhar Todas as Músicas de %s Mostrar Todas as Músicas por Artista diff --git a/ultrasonic/src/main/res/values-pt/strings.xml b/ultrasonic/src/main/res/values-pt/strings.xml index 8fb5bb12..9525264a 100644 --- a/ultrasonic/src/main/res/values-pt/strings.xml +++ b/ultrasonic/src/main/res/values-pt/strings.xml @@ -308,7 +308,7 @@ Assumir que a pasta mais acima é o nome do artista Navegar Usando Etiquetas ID3 Usa as etiquetas ID3 ao invés do sistema de ficheiros - Vídeo + Vídeo Player de Vídeo Atualização do Ecrã .5 segundos @@ -368,9 +368,6 @@ Saudação Padrão Confira esta música que compartilhei do %s Compartilhar músicas via - MX Player - Padrão - Flash Compartilhar Todas as Músicas de %s Todas as Músicas do Artista diff --git a/ultrasonic/src/main/res/values-ru/strings.xml b/ultrasonic/src/main/res/values-ru/strings.xml index 0897075f..a1a8edbc 100644 --- a/ultrasonic/src/main/res/values-ru/strings.xml +++ b/ultrasonic/src/main/res/values-ru/strings.xml @@ -300,7 +300,7 @@ Предположим, папка верхнего уровня - это имя исполнителя альбома Обзор с использованием тегов ID3 Используйте методы тегов ID3 ​​вместо методов на основе файловой системы - Видео + Видео Видеоплеер Посмотреть Обновить .5 секунд @@ -360,9 +360,6 @@ Поделиться приветствием по умолчанию Проверьте эту музыку, с которой я поделился %s Поделиться треками через - MX Player - По умолчанию - Flash Поделиться Все треки %s Показать все треки исполнителя diff --git a/ultrasonic/src/main/res/values-zh-rCN/strings.xml b/ultrasonic/src/main/res/values-zh-rCN/strings.xml index 60067c12..42b39e4d 100644 --- a/ultrasonic/src/main/res/values-zh-rCN/strings.xml +++ b/ultrasonic/src/main/res/values-zh-rCN/strings.xml @@ -224,7 +224,7 @@ 连接正常, 服务器未授权。 主题 允许自签名 HTTPS 证书 - 视频 + 视频 视频播放器 刷新视图 .5 秒 @@ -261,8 +261,6 @@ 评论 %s已从播放列表中移除 分享播放列表 - MX Player - 默认 分享 已禁用 删除文件 diff --git a/ultrasonic/src/main/res/values/arrays.xml b/ultrasonic/src/main/res/values/arrays.xml index d18959e9..22b3cdff 100644 --- a/ultrasonic/src/main/res/values/arrays.xml +++ b/ultrasonic/src/main/res/values/arrays.xml @@ -224,16 +224,6 @@ @string/settings.search_250 @string/settings.search_500 - - mx - default - flash - - - @string/settings.video_mx_player - @string/settings.video_default - @string/settings.video_flash - @string/settings.view_refresh_500 @string/settings.view_refresh_1000 diff --git a/ultrasonic/src/main/res/values/strings.xml b/ultrasonic/src/main/res/values/strings.xml index 62556828..07d54971 100644 --- a/ultrasonic/src/main/res/values/strings.xml +++ b/ultrasonic/src/main/res/values/strings.xml @@ -327,7 +327,7 @@ Use ID3 tag methods instead of file system based methods Show artist picture in artist list Displays the artist picture in the artist list if available - Video + Video Video player View Refresh .5 seconds @@ -387,9 +387,6 @@ Default Share Greeting Check out this music I shared from %s Share songs via - MX Player - Default - Flash Share All Songs by %s Show All Songs By Artist diff --git a/ultrasonic/src/main/res/xml/settings.xml b/ultrasonic/src/main/res/xml/settings.xml index ce724706..c1da757a 100644 --- a/ultrasonic/src/main/res/xml/settings.xml +++ b/ultrasonic/src/main/res/xml/settings.xml @@ -180,17 +180,6 @@ a:title="@string/settings.send_bluetooth_album_art" app:iconSpaceReserved="false"/> - - -