1
mirror of https://github.com/TeamNewPipe/NewPipe synced 2025-09-24 08:40:51 +02:00

Compare commits

...

27 Commits

Author SHA1 Message Date
Christian Schabesberger
aa06e3490d Merge branch 'master' of github.com:theScrabi/NewPipe 2016-01-08 22:22:55 +01:00
Christian Schabesberger
ece889b36b moved on to 0.7.3 2016-01-08 22:22:39 +01:00
Christian Schabesberger
9848f19ce6 Merge github.com:k3b/NewPipe into k3bMaster 2016-01-08 22:04:42 +01:00
Weblate
e59b087057 Merge remote-tracking branch 'origin/master' 2016-01-08 22:00:27 +01:00
Greg
5b451d1ac7 Translated using Weblate (Spanish)
Currently translated at 64.2% (36 of 56 strings)
2016-01-08 22:00:27 +01:00
Greg
f050c05b3c Translated using Weblate (Russian)
Currently translated at 98.2% (55 of 56 strings)
2016-01-08 22:00:27 +01:00
Sérgio Marques
06b8edefbf Translated using Weblate (Portuguese)
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 22:00:26 +01:00
Greg
f3a2a28398 Translated using Weblate (German)
Currently translated at 91.0% (51 of 56 strings)
2016-01-08 22:00:26 +01:00
Greg
9b0a1fc2ec Translated using Weblate (English)
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 22:00:26 +01:00
riotism
c87ab234eb Translated using Weblate (Chinese (Taiwan))
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 22:00:25 +01:00
riotism
68468756a8 Translated using Weblate (Chinese (Hong Kong))
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 22:00:24 +01:00
riotism
9016df0195 Translated using Weblate (Chinese (China))
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 22:00:24 +01:00
Christian Schabesberger
7acece9705 Merge pull request #145 from 42SK/master
Fixed #143
2016-01-08 22:00:21 +01:00
red
d1896c23c0 Translated using Weblate (French)
Currently translated at 100.0% (56 of 56 strings)
2016-01-08 14:04:29 +01:00
riotism
dae19f03e0 Translated using Weblate (Chinese (China))
Currently translated at 100.0% (56 of 56 strings)
2016-01-07 23:07:42 +01:00
riotism
9dafccf0f7 Translated using Weblate (Chinese (China))
Currently translated at 100% (0 of 0 strings)

Created new translation.
2016-01-07 22:46:44 +01:00
riotism
5f270c41ae Translated using Weblate (Chinese (Taiwan))
Currently translated at 100.0% (56 of 56 strings)
2016-01-07 22:46:12 +01:00
riotism
f9f80e9003 Translated using Weblate (Chinese (Taiwan))
Currently translated at 100% (0 of 0 strings)

Created new translation.
2016-01-07 22:08:02 +01:00
riotism
c5063d4269 Translated using Weblate (Chinese (Hong Kong))
Currently translated at 100.0% (56 of 56 strings)
2016-01-07 22:06:57 +01:00
riotism
ccbe18ec1c Translated using Weblate (Chinese (Hong Kong))
Currently translated at 100% (0 of 0 strings)

Created new translation.
2016-01-07 21:21:58 +01:00
k3b
321a8a8b25 Translated using Weblate (German)
Currently translated at 91.0% (51 of 56 strings)
2016-01-07 20:20:57 +01:00
k3b
77a9560376 #143 #44 #42 #22: Fixed some download problems with invalid directories or filenames. Added user Feedback. Different settings for audio and video download dir. 2016-01-07 14:32:16 +01:00
k3b
058a039a82 #143 #44 #42 #22: Fixed some download problems with invalid directories or filenames. Added user Feedback. Different settings for audio and video download dir. 2016-01-07 14:22:55 +01:00
naofum
7c744703e4 Translated using Weblate (Japanese)
Currently translated at 100.0% (56 of 56 strings)
2016-01-07 14:15:56 +01:00
42SK
a934cbb085 Fixed #143 2016-01-07 13:28:17 +01:00
Sérgio Marques
cf4158c0d0 Translated using Weblate (Portuguese)
Currently translated at 100.0% (56 of 56 strings)
2016-01-07 00:48:13 +01:00
M2ck
dc56eab9b6 Translated using Weblate (French)
Currently translated at 100.0% (56 of 56 strings)
2016-01-06 16:47:54 +01:00
17 changed files with 522 additions and 137 deletions

View File

@@ -8,8 +8,8 @@ android {
applicationId "org.schabi.newpipe"
minSdkVersion 15
targetSdkVersion 23
versionCode 11
versionName "0.7.2"
versionCode 12
versionName "0.7.3"
}
buildTypes {
release {

View File

@@ -1,20 +1,29 @@
package org.schabi.newpipe;
import android.Manifest;
import android.app.Activity;
import android.app.Dialog;
import android.app.DownloadManager;
import android.app.Notification;
import android.content.Context;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.DialogFragment;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AlertDialog;
import android.util.Log;
import android.widget.Toast;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
* Created by Christian Schabesberger on 21.09.15.
@@ -51,6 +60,8 @@ public class DownloadDialog extends DialogFragment {
public Dialog onCreateDialog(Bundle savedInstanceState) {
arguments = getArguments();
super.onCreateDialog(savedInstanceState);
if(ContextCompat.checkSelfPermission(this.getContext(),Manifest.permission.WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED)
ActivityCompat.requestPermissions(getActivity(),new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},0);
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.download_dialog_title)
.setItems(R.array.download_options, new DialogInterface.OnClickListener() {
@@ -61,53 +72,83 @@ public class DownloadDialog extends DialogFragment {
String suffix = "";
String title = arguments.getString(TITLE);
String url = "";
String downloadFolder = Environment.DIRECTORY_DOWNLOADS;
File downloadDir = NewPipeSettings.getDownloadFolder();
switch(which) {
case 0: // Video
suffix = arguments.getString(FILE_SUFFIX_VIDEO);
url = arguments.getString(VIDEO_URL);
downloadFolder = Environment.DIRECTORY_MOVIES;
downloadDir = NewPipeSettings.getVideoDownloadFolder(context);
break;
case 1:
suffix = arguments.getString(FILE_SUFFIX_AUDIO);
url = arguments.getString(AUDIO_URL);
downloadFolder = Environment.DIRECTORY_MUSIC;
downloadDir = NewPipeSettings.getAudioDownloadFolder(context);
break;
default:
Log.d(TAG, "lolz");
}
//to avoid hard-coded string like "/storage/emulated/0/Movies"
String downloadPath = prefs.getString(getString(R.string.download_path_key),
Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + downloadFolder);
final File dir = new File(downloadPath);
if(!dir.exists()) {
if(!downloadDir.exists()) {
//attempt to create directory
boolean mkdir = dir.mkdir();
if(!mkdir && !dir.isDirectory()) {
Log.e(TAG, "Cant' create directory named " + dir.toString());
//TODO notify user "download directory should be changed" ?
boolean mkdir = downloadDir.mkdirs();
if(!mkdir && !downloadDir.isDirectory()) {
String message = context.getString(R.string.err_dir_create,downloadDir.toString());
Log.e(TAG, message);
Toast.makeText(context,message , Toast.LENGTH_LONG).show();
return;
}
String message = context.getString(R.string.info_dir_created,downloadDir.toString());
Log.e(TAG, message);
Toast.makeText(context,message , Toast.LENGTH_LONG).show();
}
String saveFilePath = dir + "/" + title + suffix;
File saveFilePath = new File(downloadDir,createFileName(title) + suffix);
long id = 0;
if (App.isUsingTor()) {
// if using Tor, do not use DownloadManager because the proxy cannot be set
Downloader.downloadFile(getContext(), url, saveFilePath);
Downloader.downloadFile(getContext(), url, saveFilePath, title);
} else {
DownloadManager dm = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(
Uri.parse(url));
request.setDestinationUri(Uri.fromFile(new File(saveFilePath)));
request.setDestinationUri(Uri.fromFile(saveFilePath));
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setTitle(title);
request.setDescription("'" + url +
"' => '" + saveFilePath + "'");
request.allowScanningByMediaScanner();
try {
dm.enqueue(request);
id = dm.enqueue(request);
} catch (Exception e) {
e.printStackTrace();
}
}
Log.i(TAG,"Started downloading '" + url +
"' => '" + saveFilePath + "' #" + id);
}
});
return builder.create();
}
/**
* #143 #44 #42 #22: make shure that the filename does not contain illegal chars.
* This should fix some of the "cannot download" problems.
* */
private String createFileName(String fName) {
// from http://eng-przemelek.blogspot.de/2009/07/how-to-create-valid-file-name.html
List<String> forbiddenCharsPatterns = new ArrayList<String> ();
forbiddenCharsPatterns.add("[:]+"); // Mac OS, but it looks that also Windows XP
forbiddenCharsPatterns.add("[\\*\"/\\\\\\[\\]\\:\\;\\|\\=\\,]+"); // Windows
forbiddenCharsPatterns.add("[^\\w\\d\\.]+"); // last chance... only latin letters and digits
String nameToTest = fName;
for (String pattern : forbiddenCharsPatterns) {
nameToTest = nameToTest.replaceAll(pattern, "_");
}
return nameToTest;
}
}

View File

@@ -13,6 +13,7 @@ import android.util.Log;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -45,10 +46,32 @@ import info.guardianproject.netcipher.NetCipher;
* along with NewPipe. If not, see <http://www.gnu.org/licenses/>.
*/
public class Downloader {
public class Downloader extends AsyncTask<Void, Integer, Void> {
public static final String TAG = "Downloader";
private static final String USER_AGENT = "Mozilla/5.0";
private NotificationManager nm;
private NotificationCompat.Builder builder;
private int notifyId = 0x1234;
private int fileSize = 0xffffffff;
private final Context context;
private final String fileURL;
private final File saveFilePath;
private final String title;
private final String debugContext;
public Downloader(Context context, String fileURL, File saveFilePath, String title) {
this.context = context;
this.fileURL = fileURL;
this.saveFilePath = saveFilePath;
this.title = title;
this.debugContext = "'" + fileURL +
"' => '" + saveFilePath + "'";
}
/**Download the text file at the supplied URL as in download(String),
* but set the HTTP header field "Accept-Language" to the supplied string.
* @param siteUrl the URL of the text file to return the contents of
@@ -118,86 +141,96 @@ public class Downloader {
*
* @param fileURL HTTP URL of the file to be downloaded
* @param saveFilePath path of the directory to save the file
* @param title
* @throws IOException
*/
public static void downloadFile(final Context context, final String fileURL, final String saveFilePath) {
new AsyncTask<Void, Integer, Void>() {
public static void downloadFile(final Context context, final String fileURL, final File saveFilePath, String title) {
new Downloader(context, fileURL, saveFilePath, title).execute();
}
private NotificationManager nm;
private NotificationCompat.Builder builder;
private int notifyId = 0x1234;
private int fileSize = 0xffffffff;
/** AsyncTask impl: executed in gui thread */
@Override
protected void onPreExecute() {
super.onPreExecute();
nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Drawable icon = context.getResources().getDrawable(R.mipmap.ic_launcher);
builder = new NotificationCompat.Builder(context)
.setSmallIcon(android.R.drawable.stat_sys_download)
.setLargeIcon(((BitmapDrawable) icon).getBitmap())
.setContentTitle(saveFilePath.getName())
.setContentText(saveFilePath.getAbsolutePath())
.setProgress(fileSize, 0, false);
nm.notify(notifyId, builder.build());
}
@Override
protected void onPreExecute() {
super.onPreExecute();
nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Drawable icon = context.getResources().getDrawable(R.mipmap.ic_launcher);
builder = new NotificationCompat.Builder(context)
.setSmallIcon(android.R.drawable.stat_sys_download)
.setLargeIcon(((BitmapDrawable) icon).getBitmap())
.setContentTitle(saveFilePath.substring(saveFilePath.lastIndexOf('/') + 1))
.setContentText(saveFilePath)
.setProgress(fileSize, 0, false);
nm.notify(notifyId, builder.build());
}
/** AsyncTask impl: executed in background thread does the download */
@Override
protected Void doInBackground(Void... voids) {
HttpsURLConnection con = null;
InputStream inputStream = null;
FileOutputStream outputStream = null;
try {
con = NetCipher.getHttpsURLConnection(fileURL);
int responseCode = con.getResponseCode();
@Override
protected Void doInBackground(Void... voids) {
HttpsURLConnection con = null;
try {
con = NetCipher.getHttpsURLConnection(fileURL);
int responseCode = con.getResponseCode();
// always check HTTP response code first
if (responseCode == HttpURLConnection.HTTP_OK) {
fileSize = con.getContentLength();
inputStream = new BufferedInputStream(con.getInputStream());
outputStream = new FileOutputStream(saveFilePath);
// always check HTTP response code first
if (responseCode == HttpURLConnection.HTTP_OK) {
fileSize = con.getContentLength();
InputStream inputStream = new BufferedInputStream(con.getInputStream());
FileOutputStream outputStream = new FileOutputStream(saveFilePath);
int bufferSize = 8192;
int downloaded = 0;
int bufferSize = 8192;
int downloaded = 0;
int bytesRead = -1;
byte[] buffer = new byte[bufferSize];
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
downloaded += bytesRead;
if (downloaded % 50000 < bufferSize) {
publishProgress(downloaded);
}
}
outputStream.close();
inputStream.close();
publishProgress(bufferSize);
} else {
Log.i(TAG, "No file to download. Server replied HTTP code: " + responseCode);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
if (con != null) {
con.disconnect();
con = null;
int bytesRead = -1;
byte[] buffer = new byte[bufferSize];
while ((bytesRead = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, bytesRead);
downloaded += bytesRead;
if (downloaded % 50000 < bufferSize) {
publishProgress(downloaded);
}
}
return null;
}
@Override
protected void onProgressUpdate(Integer... progress) {
builder.setProgress(fileSize, progress[0], false);
nm.notify(notifyId, builder.build());
}
publishProgress(bufferSize);
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
nm.cancel(notifyId);
} else {
Log.i(TAG, "No file to download. Server replied HTTP code: " + responseCode);
}
}.execute();
} catch (IOException e) {
Log.e(TAG, "No file to download. Server replied HTTP code: ", e);
e.printStackTrace();
} finally {
try {
if (outputStream != null) {
outputStream.close();
outputStream = null;
}
if (inputStream != null) {
inputStream.close();
inputStream = null;
}
} catch (IOException e) {
e.printStackTrace();
}
if (con != null) {
con.disconnect();
con = null;
}
}
return null;
}
@Override
protected void onProgressUpdate(Integer... progress) {
builder.setProgress(fileSize, progress[0], false);
nm.notify(notifyId, builder.build());
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
nm.cancel(notifyId);
}
}

View File

@@ -0,0 +1,72 @@
/**
* Created by k3b on 07.01.2016.
*
* Copyright (C) Christian Schabesberger 2015 <chris.schabesberger@mailbox.org>
* NewPipeSettings.java is part of NewPipe.
*
* NewPipe 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.
*
* NewPipe 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 NewPipe. If not, see <http://www.gnu.org/licenses/>.
*/
package org.schabi.newpipe;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Environment;
import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
import android.util.Log;
import java.io.File;
/**
* Helper for global settings
*/
public class NewPipeSettings {
public static void initSettings(Context context) {
PreferenceManager.setDefaultValues(context, R.xml.settings, false);
getVideoDownloadFolder(context);
getAudioDownloadFolder(context);
}
public static File getDownloadFolder() {
return getFolder(Environment.DIRECTORY_DOWNLOADS);
}
public static File getVideoDownloadFolder(Context context) {
return getFolder(context, R.string.download_path_key, Environment.DIRECTORY_MOVIES);
}
public static File getAudioDownloadFolder(Context context) {
return getFolder(context, R.string.download_path_audio_key, Environment.DIRECTORY_MUSIC);
}
private static File getFolder(Context context, int keyID, String defaultDirectoryName) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
final String key = context.getString(keyID);
String downloadPath = prefs.getString(key, null);
if ((downloadPath != null) && (!downloadPath.isEmpty())) return new File(downloadPath.trim());
final File folder = getFolder(defaultDirectoryName);
SharedPreferences.Editor spEditor = prefs.edit();
spEditor.putString(key
, new File(folder,"NewPipe").getAbsolutePath());
spEditor.apply();
return folder;
}
@NonNull
private static File getFolder(String defaultDirectoryName) {
return new File(Environment.getExternalStorageDirectory(),defaultDirectoryName);
}
}

View File

@@ -71,12 +71,14 @@ public class SettingsActivity extends PreferenceActivity {
String DEFAULT_AUDIO_FORMAT_PREFERENCE;
String SEARCH_LANGUAGE_PREFERENCE;
String DOWNLOAD_PATH_PREFERENCE;
String DOWNLOAD_PATH_AUDIO_PREFERENCE;
String USE_TOR_KEY;
private ListPreference defaultResolutionPreference;
private ListPreference defaultAudioFormatPreference;
private ListPreference searchLanguagePreference;
private EditTextPreference downloadPathPreference;
private EditTextPreference downloadPathAudioPreference;
private CheckBoxPreference useTorCheckBox;
private SharedPreferences defaultPreferences;
@@ -95,6 +97,7 @@ public class SettingsActivity extends PreferenceActivity {
DEFAULT_AUDIO_FORMAT_PREFERENCE =getString(R.string.default_audio_format_key);
SEARCH_LANGUAGE_PREFERENCE =getString(R.string.search_language_key);
DOWNLOAD_PATH_PREFERENCE = getString(R.string.download_path_key);
DOWNLOAD_PATH_AUDIO_PREFERENCE = getString(R.string.download_path_audio_key);
USE_TOR_KEY = getString(R.string.use_tor_key);
// get pref objects
@@ -106,6 +109,8 @@ public class SettingsActivity extends PreferenceActivity {
(ListPreference) findPreference(SEARCH_LANGUAGE_PREFERENCE);
downloadPathPreference =
(EditTextPreference) findPreference(DOWNLOAD_PATH_PREFERENCE);
downloadPathAudioPreference =
(EditTextPreference) findPreference(DOWNLOAD_PATH_AUDIO_PREFERENCE);
useTorCheckBox = (CheckBoxPreference) findPreference(USE_TOR_KEY);
prefListener = new SharedPreferences.OnSharedPreferenceChangeListener() {
@@ -147,6 +152,9 @@ public class SettingsActivity extends PreferenceActivity {
downloadPathPreference.setSummary(
defaultPreferences.getString(DOWNLOAD_PATH_PREFERENCE,
getString(R.string.download_path_summary)));
downloadPathAudioPreference.setSummary(
defaultPreferences.getString(DOWNLOAD_PATH_AUDIO_PREFERENCE,
getString(R.string.download_path_audio_summary)));
}
}
@@ -246,15 +254,6 @@ public class SettingsActivity extends PreferenceActivity {
}
public static void initSettings(Context context) {
PreferenceManager.setDefaultValues(context, R.xml.settings, false);
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
if(sp.getString(context.getString(R.string.download_path_key), "").isEmpty()){
SharedPreferences.Editor spEditor = sp.edit();
String newPipeDownloadStorage =
Environment.getExternalStorageDirectory().getAbsolutePath() + "/NewPipe";
spEditor.putString(context.getString(R.string.download_path_key)
, newPipeDownloadStorage);
spEditor.apply();
}
NewPipeSettings.initSettings(context);
}
}

View File

@@ -2,7 +2,7 @@
<resources>
<string name="view_count_text">%1$s Aufrufe</string>
<string name="upload_date_text">Hochgeladen am %1$s</string>
<string name="no_player_found">Keinen Streamplayer gefunden. Vielleicht möchtest du einen installieren.</string>
<string name="no_player_found">Keinen Streamplayer gefunden. Möchtest du VLC installieren?</string>
<string name="install">Jetzt installieren</string>
<string name="cancel">Abbrechen</string>
<string name="open_in_browser">In Browser öffnen</string>
@@ -30,8 +30,8 @@
<string name="show_play_with_kodi_summary">Zeigt eine Option an, über die man Videos mit dem Kodi Mediacenter abspielen kann.</string>
<string name="play_audio">Audio</string>
<string name="default_audio_format_title">Bevorzugtes Audio Format</string>
<string name="webm_description">WebM &#8212; freies Format</string>
<string name="m4a_description">m4a &#8212; bessere Qualität</string>
<string name="webm_description">WebM freies Format</string>
<string name="m4a_description">m4a bessere Qualität</string>
<string name="download_dialog_title">Herunterladen</string>
<string-array name="downloadOptions">
<item>Video</item>
@@ -56,4 +56,7 @@
<string name="use_tor_title">Benutze TOR</string>
<string name="use_tor_summary">Erzwinge das Herunterladen durch TOR für verbesserte Privatsphäre (Videostream noch nicht unterstützt)</string>
</resources>
<string name="background_player_name">NewPipe Hintergrundwiedergabe</string>
<string name="network_error">Netzwerk Fehler</string>
</resources>

View File

@@ -17,7 +17,7 @@
<string name="screen_rotation">rotación</string>
<string name="settings_activity_title">Ajustes</string>
<string name="useExternalPlayerTitle">Usar reproductor externo</string>
<string name="download_path_title">Descargar en&#8230;</string>
<string name="download_path_title">Descargar en</string>
<string name="download_path_summary">Ruta donde guardar los vídeos descargados.</string>
<string name="download_path_dialog_title">Localización del directorio de descargas</string>
<string name="autoplay_through_intent_title">Reproducción automática</string>
@@ -30,10 +30,12 @@
<string name="show_play_with_kodi_summary">Muestra una opción para reproducir el vídeo con Kodi media center.</string>
<string name="play_audio">Audio</string>
<string name="default_audio_format_title">Formato de audio por defecto</string>
<string name="webm_description">WebM &#8212; formato libre</string>
<string name="m4a_description">m4a &#8212; mejor calidad</string>
<string name="webm_description">WebM formato libre</string>
<string name="m4a_description">m4a mejor calidad</string>
<string name="download_dialog_title">Descargar</string>
<string name="next_video_title">Siguiente vídeo</string>
<string name="url_not_supported_toast">URL no soportada.</string>
<string name="similar_videos_btn_text">Vídeos similares</string>
</resources>
<string name="background_player_name">Reproductor de fondo NewPipe</string>
<string name="loading">Cargando</string>
</resources>

View File

@@ -1,6 +1,6 @@
<?xml version='1.0' encoding='utf-8'?>
<resources>
<string name="autoplay_through_intent_summary">Démarrer automatiquement la vidéo si elle a été appelée depuis une autre application.</string>
<string name="autoplay_through_intent_summary">Lire automatiquement une vidéo si elle a été appelée depuis une autre application</string>
<string name="cancel">Annuler</string>
<string name="choose_browser">Choisir un navigateur :</string>
<string name="default_resolution_title">Résolution par défaut</string>
@@ -8,11 +8,11 @@
<string name="download">Télécharger</string>
<string name="download_path_title">Emplacement des téléchargements</string>
<string name="download_path_dialog_title">Entrez l\'emplacement du téléchargement</string>
<string name="download_path_summary">Emplacement des vidéos téléchargées.</string>
<string name="download_path_summary">Chemin des vidéos téléchargées</string>
<string name="install">Installer</string>
<string name="installeKore">Installer Kore</string>
<string name="kore_not_found">L\'application Kore est introuvable. Kore est nécessaire afin de lire des vidéos dans Kodi media center.</string>
<string name="no_player_found">Aucun lecteur de streaming détecté. Vous devriez en installer un.</string>
<string name="kore_not_found">L\'application Kore est introuvable. Installer Kore ?</string>
<string name="no_player_found">Aucun lecteur streaming trouvé. Installer VLC ?</string>
<string name="open_in_browser">Ouvrir dans le navigateur</string>
<string name="autoplay_through_intent_title">Lecture automatique via Intent</string>
<string name="play_with_kodi_title">Lire avec Kodi</string>
@@ -22,7 +22,7 @@
<string name="settings">Paramètres</string>
<string name="share">Partager</string>
<string name="share_dialog_title">Partager avec :</string>
<string name="show_play_with_kodi_summary">Afficher une option pour lire la vidéo avec Kodi media center.</string>
<string name="show_play_with_kodi_summary">Afficher une option pour lire la vidéo via Kodi media center</string>
<string name="show_play_with_kodi_title">Afficher l\'option \"Lire avec Kodi\"</string>
<string name="settings_activity_title">Paramètres</string>
<string name="upload_date_text">Mise en ligne le %1$s</string>
@@ -30,12 +30,12 @@
<string name="view_count_text">%1$s vues</string>
<string name="play_audio">Audio</string>
<string name="default_audio_format_title">Format audio par défaut</string>
<string name="webm_description">WebM &#8212; format libre</string>
<string name="m4a_description">m4a &#8212; meilleur qualité</string>
<string name="webm_description">WebM format libre</string>
<string name="m4a_description">m4a meilleure qualité</string>
<string name="download_dialog_title">Télécharger</string>
<string name="next_video_title">Vidéo suivante</string>
<string name="show_next_and_similar_title">Afficher les vidéos suivantes et similaires</string>
<string name="url_not_supported_toast">URL non supportée.</string>
<string name="url_not_supported_toast">URL non supportée</string>
<string name="similar_videos_btn_text">Vidéos similaires</string>
<string name="settings_category_video_audio_title">Vidéo &amp; Audio</string>
<string name="settings_category_other_title">Divers</string>
@@ -55,4 +55,11 @@
<string name="use_tor_title">Utiliser Tor</string>
<string name="use_tor_summary">Forcer le trafic de téléchargement via Tor pour plus de confidentialité (vidéos streaming non supporté)</string>
</resources>
<string name="theme_title">Thème</string>
<string name="dark_theme_title">Sombre</string>
<string name="light_theme_title">Clair</string>
<string name="settings_category_appearance_title">Apparence</string>
<string name="network_error">Erreur réseau</string>
</resources>

View File

@@ -29,8 +29,8 @@
<string name="show_play_with_kodi_summary">Kodi メディアセンター経由で動画を再生するための設定を表示します.</string>
<string name="play_audio">オーディオ</string>
<string name="default_audio_format_title">基本のオーディオフォーマット</string>
<string name="webm_description">WebM &#8212; フリーフォーマット</string>
<string name="m4a_description">m4a &#8212; より良い品質</string>
<string name="webm_description">WebM フリーフォーマット</string>
<string name="m4a_description">m4a より良い品質</string>
<string name="download_dialog_title">ダウンロード</string>
<string name="next_video_title">次の動画</string>
<string name="show_next_and_similar_title">次の同様の動画を表示します。</string>
@@ -54,4 +54,12 @@
<string name="use_tor_title">Tor を使用する</string>
<string name="use_tor_summary">強制的に Tor を経由したプライバシーを高めたトラフィックでダウンロードします (ビデオのストリーミングはまだサポートされていません)</string>
</resources>
<string name="theme_title">テーマ</string>
<string name="dark_theme_title">ダーク</string>
<string name="light_theme_title">ライト</string>
<string name="settings_category_appearance_title">外観</string>
<string name="settings_category_other_title">その他</string>
<string name="network_error">ネットワーク エラー</string>
</resources>

View File

@@ -1,7 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<resources><string name="view_count_text">%1$s visualizações</string>
<string name="upload_date_text">Carregado em %1$s</string>
<string name="no_player_found">Reprodutor não disponível. Deve instalar um reprodutor.</string>
<string name="no_player_found">Reprodutor não disponível. Instalar o VLC?</string>
<string name="install">Instalar</string>
<string name="cancel">Cancelar</string>
<string name="open_in_browser">Abrir no navegador</string>
@@ -18,24 +18,24 @@
<string name="use_external_video_player_title">Utilizar reprodutor de vídeo externo</string>
<string name="use_external_audio_player_title">Utilizar reprodutor de áudio externo</string>
<string name="download_path_title">Local para a descarga</string>
<string name="download_path_summary">Local para guardar os vídeos descarregados.</string>
<string name="download_path_summary">Local para guardar os vídeos descarregados</string>
<string name="download_path_dialog_title">Digite o caminho</string>
<string name="autoplay_through_intent_title">Reproduzir via Intent</string>
<string name="autoplay_through_intent_summary">Iniciar automaticamente o vídeo se for invocado por outra aplicação.</string>
<string name="autoplay_through_intent_summary">Iniciar automaticamente o vídeo se for invocado por outra aplicação</string>
<string name="default_resolution_title">Resolução padrão</string>
<string name="play_with_kodi_title">Reproduzir com Kodi</string>
<string name="kore_not_found">Aplicação não encontrada. Necessita do Kore para reproduzir vídeos no Kodi.</string>
<string name="kore_not_found">Aplicação não encontrada. Instalar o Kore?</string>
<string name="installeKore">Instalar o Kore</string>
<string name="show_play_with_kodi_title">Mostrar opção \"Reproduzir com Kodi\"</string>
<string name="show_play_with_kodi_summary">Mostra uma opção para reproduzir o vídeo com o Kodi.</string>
<string name="show_play_with_kodi_summary">Mostra uma opção para reproduzir o vídeo com o Kodi</string>
<string name="play_audio">Áudio</string>
<string name="default_audio_format_title">Formato áudio padrão</string>
<string name="webm_description">WebM &#8212; formato livre</string>
<string name="m4a_description">m4a &#8212; melhor qualidade</string>
<string name="webm_description">WebM formato livre</string>
<string name="m4a_description">m4a melhor qualidade</string>
<string name="download_dialog_title">Descarregar</string>
<string name="next_video_title">Vídeo seguinte</string>
<string name="show_next_and_similar_title">Mostrar vídeos seguintes e similares</string>
<string name="url_not_supported_toast">URL não suportado.</string>
<string name="url_not_supported_toast">URL não suportado</string>
<string name="similar_videos_btn_text">Vídeos similares</string>
<string name="search_language_title">Idioma preferencial do conteúdo</string>
<string name="settings_category_video_audio_title">Vídeo e áudio</string>
@@ -47,4 +47,18 @@
<string name="detail_uploader_thumbnail_view_description">Carregador de miniaturas</string>
<string name="detail_dislikes_img_view_description">Não gosto</string>
<string name="detail_likes_img_view_description">Gosto</string>
<string name="background_player_name">Reprodutor de fundo NewPipe</string>
<string name="loading">A carregar</string>
<string name="theme_title">Tema</string>
<string name="dark_theme_title">Escuro</string>
<string name="light_theme_title">Claro</string>
<string name="settings_category_appearance_title">Aparência</string>
<string name="settings_category_other_title">Outra</string>
<string name="background_player_playing_toast">A reproduzir em segundo plano</string>
<string name="play_btn_text">Reproduzir</string>
<string name="network_error">Erro de rede</string>
<string name="use_tor_title">Utilizar Tor</string>
<string name="use_tor_summary">Utilizar a rede Tor para ter mais privacidade (ainda não é suportada a transmissão de vídeos)</string>
</resources>

View File

@@ -18,27 +18,27 @@
<string name="settings_activity_title">Настройки</string>
<string name="useExternalPlayerTitle">Использовать внешний проигрыватель</string>
<string name="download_path_title">Место для загрузок</string>
<string name="download_path_summary">Папка для хранения загруженных файлов.</string>
<string name="download_path_summary">Папка для хранения загруженных файлов</string>
<string name="download_path_dialog_title">Введите путь к папке для загрузок</string>
<string name="autoplay_through_intent_title">Автопроигрывание через интернет</string>
<string name="autoplay_through_intent_summary">Автоматически воспроизводить видео когда оно открыто через другое приложение.</string>
<string name="autoplay_through_intent_summary">Автоматически воспроизводить видео, открытое через другое приложение</string>
<string name="default_resolution_title">Разрешение по-умолчанию</string>
<string name="play_with_kodi_title">Воспроизвести с помощью Kodi</string>
<string name="kore_not_found">Приложение Kore не наидено. Чтобы проигрывать видео через Kodi media center, нужен Kore.</string>
<string name="kore_not_found">Приложение Kore не наидено. Установить Kore?</string>
<string name="installeKore">Установить Kore</string>
<string name="show_play_with_kodi_title">Показывать опцию \"Воспроизвести с помощью Kodi\"</string>
<string name="show_play_with_kodi_summary">Показать опцию воспроизведения видео через Kodi media center.</string>
<string name="show_play_with_kodi_summary">Показать опцию воспроизведения видео через Kodi media center</string>
<string name="play_audio">Аудио</string>
<string name="default_audio_format_title">Формат аудио по-умолчанию</string>
<string name="webm_description">WebM &#8212; свободный формат</string>
<string name="m4a_description">m4a &#8212; лучшее качество</string>
<string name="webm_description">WebM свободный формат</string>
<string name="m4a_description">m4a лучшее качество</string>
<string name="download_dialog_title">Скачать</string>
<string-array name="downloadOptions">
<item>Видео</item>
<item>Аудио</item>
</string-array>
<string name="next_video_title">Следующее видео</string>
<string name="url_not_supported_toast">URL не поддерживается.</string>
<string name="url_not_supported_toast">URL не поддерживается</string>
<string name="similar_videos_btn_text">Похожие видео</string>
<string name="show_next_and_similar_title">Показывать следующее и предложенные видео</string>
<string name="search_language_title">Предпочитаемый язык контента</string>
@@ -54,4 +54,14 @@
<string name="use_external_video_player_title">Использовать внешний проигрыватель для видео</string>
<string name="use_external_audio_player_title">Использовать внешний проигрыватель для аудио</string>
<string name="background_player_playing_toast">Проигрывание в фоновом режиме</string>
<string name="background_player_name">Фоновый проигрыватель NewPipe</string>
<string name="loading">Загрузка</string>
<string name="theme_title">Тема</string>
<string name="dark_theme_title">Темная</string>
<string name="light_theme_title">Светлая</string>
<string name="play_btn_text">Воспроизвести</string>
<string name="network_error">Ошибка сети</string>
<string name="use_tor_title">Использовать Tor</string>
</resources>

View File

@@ -0,0 +1,60 @@
<?xml version='1.0' encoding='utf-8'?>
<resources><string name="background_player_name">NewPipe 背景播放器</string>
<string name="view_count_text">%1$s 次观看</string>
<string name="upload_date_text">于 %1$s 发布</string>
<string name="no_player_found">找不到任何串流播放器。您是否要安装 VLC</string>
<string name="install">安装</string>
<string name="cancel">取消</string>
<string name="open_in_browser">在浏览器打开</string>
<string name="share">分享</string>
<string name="loading">载入中</string>
<string name="download">下载</string>
<string name="search">搜索</string>
<string name="settings">设置</string>
<string name="did_you_mean">"您是不是要找: "</string>
<string name="search_page">"搜索页面: "</string>
<string name="share_dialog_title">分享视频:</string>
<string name="choose_browser">选择浏览器:</string>
<string name="screen_rotation">旋转</string>
<string name="settings_activity_title">设置</string>
<string name="use_external_video_player_title">使用外置视频播放器</string>
<string name="use_external_audio_player_title">使用外置音频播放器</string>
<string name="download_path_title">下载路径</string>
<string name="download_path_summary">存放已下载视频的路径</string>
<string name="download_path_dialog_title">输入下载路径</string>
<string name="autoplay_through_intent_title">刻意自动播放</string>
<string name="autoplay_through_intent_summary">当另一个程式发出要求时自动播放视频</string>
<string name="default_resolution_title">默认分辨率</string>
<string name="play_with_kodi_title">用 Kodi 播放</string>
<string name="kore_not_found">找不到 Kore 应用程式,您要安装 Kore 吗?</string>
<string name="show_play_with_kodi_title">显示 “用 Kodi 播放” 的选项</string>
<string name="show_play_with_kodi_summary">显示以 Kodi 媒体中心播放视频的选项</string>
<string name="play_audio">音频</string>
<string name="default_audio_format_title">默认音频格式</string>
<string name="webm_description">WebM — 开放格式</string>
<string name="m4a_description">m4a — 更佳品质</string>
<string name="theme_title">主题</string>
<string name="dark_theme_title">暗色系</string>
<string name="light_theme_title">明亮色系</string>
<string name="download_dialog_title">下载</string>
<string name="next_video_title">即将播放</string>
<string name="show_next_and_similar_title">显示下一部和相近的视频</string>
<string name="url_not_supported_toast">不支援此网址</string>
<string name="similar_videos_btn_text">相近的视频</string>
<string name="search_language_title">内容位置</string>
<string name="settings_category_video_audio_title">视频和音频</string>
<string name="settings_category_appearance_title">外观</string>
<string name="settings_category_other_title">其他</string>
<string name="background_player_playing_toast">背景播放</string>
<string name="play_btn_text">播放</string>
<string name="network_error">网络错误</string>
<string name="list_thumbnail_view_description">视频预览缩图</string>
<string name="detail_thumbnail_view_description">视频预览缩图</string>
<string name="detail_uploader_thumbnail_view_description">上传者的头像缩图</string>
<string name="detail_likes_img_view_description">顶</string>
<string name="detail_dislikes_img_view_description">踩</string>
<string name="use_tor_title">使用 Tor</string>
<string name="use_tor_summary">强迫下载流量通过 Tor 加强隐私(暂时不支援串流视频)</string>
</resources>

View File

@@ -0,0 +1,60 @@
<?xml version='1.0' encoding='utf-8'?>
<resources><string name="install">安裝</string>
<string name="cancel">取消</string>
<string name="upload_date_text">於 %1$s 發佈</string>
<string name="share">分享</string>
<string name="loading">加載中</string>
<string name="download">下載</string>
<string name="search">搜尋</string>
<string name="settings">設置</string>
<string name="did_you_mean">"您是不是要查: "</string>
<string name="search_page">"搜尋頁面: "</string>
<string name="choose_browser">選擇瀏覽器:</string>
<string name="screen_rotation">旋轉</string>
<string name="settings_activity_title">設置</string>
<string name="use_external_video_player_title">使用外置影片播放器</string>
<string name="use_external_audio_player_title">使用外置聲音播放器</string>
<string name="download_path_title">下載路徑</string>
<string name="download_path_summary">存放已下載影片的路徑</string>
<string name="download_path_dialog_title">輸入下載路徑</string>
<string name="autoplay_through_intent_title">刻意自動播放</string>
<string name="autoplay_through_intent_summary">當另一個程式發出要求時自動播放影片</string>
<string name="default_resolution_title">預設解析度</string>
<string name="play_with_kodi_title">用 Kodi 播放</string>
<string name="kore_not_found">找不到 Kore 應用程式,您要安裝 Kore 嗎?</string>
<string name="show_play_with_kodi_title">顯示「用 Kodi 播放」的選項</string>
<string name="show_play_with_kodi_summary">顯示以 Kodi 媒體中心播放影片的選項</string>
<string name="play_audio">聲音</string>
<string name="default_audio_format_title">預設聲音檔案格式</string>
<string name="webm_description">WebM — 開放格式</string>
<string name="m4a_description">m4a — 更佳畫質</string>
<string name="theme_title">主題</string>
<string name="dark_theme_title">暗色系</string>
<string name="light_theme_title">明亮色系</string>
<string name="download_dialog_title">下載</string>
<string name="next_video_title">下一部影片</string>
<string name="show_next_and_similar_title">顯示下一部及相關的影片</string>
<string name="url_not_supported_toast">不支援此網址</string>
<string name="similar_videos_btn_text">相關影片</string>
<string name="search_language_title">內容位置</string>
<string name="settings_category_video_audio_title">影片及聲音</string>
<string name="settings_category_appearance_title">外觀</string>
<string name="settings_category_other_title">其他</string>
<string name="background_player_playing_toast">背景播放</string>
<string name="play_btn_text">播放</string>
<string name="network_error">網絡故障</string>
<string name="list_thumbnail_view_description">影片預覽縮圖</string>
<string name="detail_thumbnail_view_description">影片預覽縮圖</string>
<string name="detail_uploader_thumbnail_view_description">上載者的個人頭像縮圖</string>
<string name="detail_likes_img_view_description">讚好</string>
<string name="detail_dislikes_img_view_description">討厭</string>
<string name="use_tor_title">使用 Tor</string>
<string name="use_tor_summary">強迫下載流量通過 Tor 加強私隱 (暫時不支援串流影片)</string>
<string name="background_player_name">NewPipe 背景播放器</string>
<string name="view_count_text">觀看次數:%1$s</string>
<string name="no_player_found">找不到任何串流播放器,您要安裝 VLC 嗎?</string>
<string name="open_in_browser">在瀏覽器開啟</string>
<string name="share_dialog_title">分享影片:</string>
</resources>

View File

@@ -0,0 +1,60 @@
<?xml version='1.0' encoding='utf-8'?>
<resources><string name="background_player_name">NewPipe 背景播放器</string>
<string name="view_count_text">觀看次數:%1$s</string>
<string name="upload_date_text">發佈日期:%1$s</string>
<string name="no_player_found">找不到任何串流播放器,您要否安裝 VLC</string>
<string name="install">安裝</string>
<string name="cancel">取消</string>
<string name="open_in_browser">在瀏覽器開啟</string>
<string name="share">分享</string>
<string name="loading">加載中</string>
<string name="download">下載</string>
<string name="search">搜尋</string>
<string name="settings">設定</string>
<string name="did_you_mean">"您是不是要查: "</string>
<string name="search_page">"搜尋頁面: "</string>
<string name="share_dialog_title">分享影片:</string>
<string name="choose_browser">選擇瀏覽器:</string>
<string name="screen_rotation">旋轉</string>
<string name="settings_activity_title">設定</string>
<string name="use_external_video_player_title">使用外置影片播放器</string>
<string name="use_external_audio_player_title">使用外置聲音播放器</string>
<string name="download_path_title">下載路徑</string>
<string name="download_path_summary">存放已下載影片的路徑</string>
<string name="download_path_dialog_title">輸入下載路徑</string>
<string name="autoplay_through_intent_title">刻意自動播放</string>
<string name="autoplay_through_intent_summary">當另一個程式發出要求時自動播放影片</string>
<string name="default_resolution_title">預設解析度</string>
<string name="play_with_kodi_title">用 Kodi 播放</string>
<string name="show_play_with_kodi_summary">顯示以 Kodi 媒體中心播放影片的選項</string>
<string name="play_audio">聲音</string>
<string name="kore_not_found">找不到 Kore 應用程式,您要安裝 Kore 嗎?</string>
<string name="show_play_with_kodi_title">顯示「用 Kodi 播放」的選項</string>
<string name="default_audio_format_title">預設聲音檔案格式</string>
<string name="webm_description">WebM — 開放格式</string>
<string name="m4a_description">m4a — 更佳畫質</string>
<string name="theme_title">主題</string>
<string name="dark_theme_title">暗色系</string>
<string name="light_theme_title">明亮色系</string>
<string name="download_dialog_title">下載</string>
<string name="next_video_title">下一部影片</string>
<string name="show_next_and_similar_title">顯示下一部和相關的影片</string>
<string name="url_not_supported_toast">不支援此網址</string>
<string name="similar_videos_btn_text">相關影片</string>
<string name="search_language_title">內容位置</string>
<string name="settings_category_video_audio_title">影片和聲音</string>
<string name="settings_category_appearance_title">外觀</string>
<string name="settings_category_other_title">其他</string>
<string name="background_player_playing_toast">背景播放</string>
<string name="play_btn_text">播放</string>
<string name="network_error">網絡錯誤</string>
<string name="list_thumbnail_view_description">影片預覽縮圖</string>
<string name="detail_thumbnail_view_description">影片預覽縮圖</string>
<string name="detail_uploader_thumbnail_view_description">發佈者的個人頭像縮圖</string>
<string name="detail_likes_img_view_description">喜歡</string>
<string name="detail_dislikes_img_view_description">不喜歡</string>
<string name="use_tor_title">使用 Tor</string>
<string name="use_tor_summary">強迫下載流量通過 Tor 以加強隱私 (暫時不支援串流影片)</string>
</resources>

View File

@@ -6,6 +6,7 @@
<string name="settings_category_other">settings_category_other</string>
<!-- Key values -->
<string name="download_path_key">download_path</string>
<string name="download_path_audio_key">download_path_audio</string>
<string name="use_external_video_player_key">use_external_video_player</string>
<string name="use_external_audio_player_key">use_external_audio_player</string>
<string name="autoplay_through_intent_key">autoplay_through_intent</string>

View File

@@ -23,9 +23,15 @@
<string name="settings_activity_title">Settings</string>
<string name="use_external_video_player_title">Use external video player</string>
<string name="use_external_audio_player_title">Use external audio player</string>
<string name="download_path_title">Download path</string>
<string name="download_path_title">Download path video</string>
<string name="download_path_summary">Path to store downloaded videos in</string>
<string name="download_path_dialog_title">Enter download path</string>
<string name="download_path_dialog_title">Enter download path for videos</string>
<string name="download_path_audio_title">Download path audio</string>
<string name="download_path_audio_summary">Path to store downloaded audio in</string>
<string name="download_path_audio_dialog_title">Enter download path for audios</string>
<string name="autoplay_through_intent_title">Autoplay through Intent</string>
<string name="autoplay_through_intent_summary">Automatically play a video when it\'s called from another app</string>
<string name="default_resolution_title">Default Resolution</string>
@@ -36,8 +42,8 @@
<string name="show_play_with_kodi_summary">Display an option to play a video via Kodi media center</string>
<string name="play_audio">Audio</string>
<string name="default_audio_format_title">Default audio format</string>
<string name="webm_description">WebM &#8212; free format</string>
<string name="m4a_description">m4a &#8212; better quality</string>
<string name="webm_description">WebM free format</string>
<string name="m4a_description">m4a better quality</string>
<string name="theme_title">Theme</string>
<string name="dark_theme_title">Dark</string>
<string name="light_theme_title">Light</string>
@@ -59,7 +65,7 @@
<string name="background_player_playing_toast">Playing in background</string>
<string name="c3s_url" translatable="false">https://www.c3s.cc/</string>
<string name="play_btn_text">Play</string>
<string name="network_error">Network Error</string>
<string name="network_error">Network error</string>
<!-- Content descriptions (for better accessibility) -->
<string name="list_thumbnail_view_description">Video preview thumbnail</string>
@@ -69,4 +75,7 @@
<string name="detail_dislikes_img_view_description">Dislikes</string>
<string name="use_tor_title">Use Tor</string>
<string name="use_tor_summary">Force download traffic through Tor for increased privacy (streaming videos not yet supported)</string>
<string name="err_dir_create">Cannot create download directory \'%1$s\'</string>
<string name="info_dir_created">Created download directory \'%1$s\'</string>
</resources>

View File

@@ -81,6 +81,12 @@
android:summary="@string/download_path_summary"
android:dialogTitle="@string/download_path_dialog_title" />
<EditTextPreference
android:key="@string/download_path_audio_key"
android:title="@string/download_path_audio_title"
android:summary="@string/download_path_audio_summary"
android:dialogTitle="@string/download_path_audio_dialog_title" />
<CheckBoxPreference
android:key="@string/autoplay_through_intent_key"
android:title="@string/autoplay_through_intent_title"