mirror of
https://github.com/zoriya/Opus.git
synced 2025-12-06 06:26:15 +00:00
Adding try/catch to taglib read and write to remove crash with unsupported file formats.
This commit is contained in:
@@ -283,11 +283,19 @@ namespace Opus.Api
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public static string GetYtID(string path)
|
public static string GetYtID(string path)
|
||||||
{
|
{
|
||||||
Stream stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
try
|
||||||
var meta = TagLib.File.Create(new StreamFileAbstraction(path, stream, stream));
|
{
|
||||||
string ytID = meta.Tag.Comment;
|
Stream stream = new FileStream(path, FileMode.Open, FileAccess.Read);
|
||||||
stream.Dispose();
|
var meta = TagLib.File.Create(new StreamFileAbstraction(path, stream, stream));
|
||||||
return ytID;
|
string ytID = meta.Tag.Comment;
|
||||||
|
stream.Dispose();
|
||||||
|
return ytID;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
System.Console.WriteLine("&GetYtID Error: The format of the file at " + path + " is probably unsupported.");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -207,82 +207,90 @@ namespace Opus.Fragments
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
System.Console.WriteLine("&Creating write stream");
|
try
|
||||||
Stream stream = new FileStream(song.Path, FileMode.Open, FileAccess.ReadWrite);
|
|
||||||
var meta = TagLib.File.Create(new StreamFileAbstraction(song.Path, stream, stream));
|
|
||||||
|
|
||||||
System.Console.WriteLine("&Writing tags");
|
|
||||||
meta.Tag.Title = title.Text;
|
|
||||||
song.Title = title.Text;
|
|
||||||
meta.Tag.Performers = new string[] { artist.Text };
|
|
||||||
song.Artist = artist.Text;
|
|
||||||
meta.Tag.Album = album.Text;
|
|
||||||
song.Album = album.Text;
|
|
||||||
meta.Tag.Comment = youtubeID.Text;
|
|
||||||
if (queuePosition != -1 && MusicPlayer.queue.Count > queuePosition)
|
|
||||||
{
|
{
|
||||||
MusicPlayer.queue[queuePosition] = song;
|
System.Console.WriteLine("&Creating write stream");
|
||||||
Player.instance?.RefreshPlayer();
|
Stream stream = new FileStream(song.Path, FileMode.Open, FileAccess.ReadWrite);
|
||||||
Queue.instance.NotifyItemChanged(queuePosition);
|
var meta = TagLib.File.Create(new StreamFileAbstraction(song.Path, stream, stream));
|
||||||
}
|
|
||||||
|
|
||||||
if (ytThumbUri != null)
|
System.Console.WriteLine("&Writing tags");
|
||||||
{
|
meta.Tag.Title = title.Text;
|
||||||
System.Console.WriteLine("&Writing YT Thumb");
|
song.Title = title.Text;
|
||||||
await Task.Run(() =>
|
meta.Tag.Performers = new string[] { artist.Text };
|
||||||
{
|
song.Artist = artist.Text;
|
||||||
|
meta.Tag.Album = album.Text;
|
||||||
|
song.Album = album.Text;
|
||||||
|
meta.Tag.Comment = youtubeID.Text;
|
||||||
|
if (queuePosition != -1 && MusicPlayer.queue.Count > queuePosition)
|
||||||
|
{
|
||||||
|
MusicPlayer.queue[queuePosition] = song;
|
||||||
|
Player.instance?.RefreshPlayer();
|
||||||
|
Queue.instance.NotifyItemChanged(queuePosition);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ytThumbUri != null)
|
||||||
|
{
|
||||||
|
System.Console.WriteLine("&Writing YT Thumb");
|
||||||
|
await Task.Run(() =>
|
||||||
|
{
|
||||||
|
IPicture[] pictures = new IPicture[1];
|
||||||
|
Bitmap bitmap = Picasso.With(Application.Context).Load(ytThumbUri).Transform(new RemoveBlackBorder(true)).Get();
|
||||||
|
byte[] data;
|
||||||
|
using (var MemoryStream = new MemoryStream())
|
||||||
|
{
|
||||||
|
bitmap.Compress(Bitmap.CompressFormat.Png, 0, MemoryStream);
|
||||||
|
data = MemoryStream.ToArray();
|
||||||
|
}
|
||||||
|
bitmap.Recycle();
|
||||||
|
pictures[0] = new Picture(data);
|
||||||
|
meta.Tag.Pictures = pictures;
|
||||||
|
|
||||||
|
ytThumbUri = null;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else if (artURI != null)
|
||||||
|
{
|
||||||
|
System.Console.WriteLine("&Writing ArtURI");
|
||||||
IPicture[] pictures = new IPicture[1];
|
IPicture[] pictures = new IPicture[1];
|
||||||
Bitmap bitmap = Picasso.With(Application.Context).Load(ytThumbUri).Transform(new RemoveBlackBorder(true)).Get();
|
|
||||||
byte[] data;
|
Bitmap bitmap = null;
|
||||||
using (var MemoryStream = new MemoryStream())
|
if (tempFile)
|
||||||
{
|
{
|
||||||
bitmap.Compress(Bitmap.CompressFormat.Png, 0, MemoryStream);
|
await Task.Run(() =>
|
||||||
data = MemoryStream.ToArray();
|
{
|
||||||
|
bitmap = Picasso.With(this).Load(artURI).Transform(new RemoveBlackBorder(true)).Get();
|
||||||
|
});
|
||||||
}
|
}
|
||||||
bitmap.Recycle();
|
else
|
||||||
|
{
|
||||||
|
await Task.Run(() =>
|
||||||
|
{
|
||||||
|
bitmap = Picasso.With(this).Load(artURI).Get();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
MemoryStream memoryStream = new MemoryStream();
|
||||||
|
bitmap.Compress(Bitmap.CompressFormat.Jpeg, 100, memoryStream);
|
||||||
|
byte[] data = memoryStream.ToArray();
|
||||||
pictures[0] = new Picture(data);
|
pictures[0] = new Picture(data);
|
||||||
meta.Tag.Pictures = pictures;
|
meta.Tag.Pictures = pictures;
|
||||||
|
|
||||||
ytThumbUri = null;
|
if(!tempFile)
|
||||||
});
|
artURI = null;
|
||||||
|
|
||||||
|
ContentResolver.Delete(ContentUris.WithAppendedId(Android.Net.Uri.Parse("content://media/external/audio/albumart"), song.AlbumArt), null, null);
|
||||||
|
}
|
||||||
|
|
||||||
|
System.Console.WriteLine("&Saving");
|
||||||
|
meta.Save();
|
||||||
|
stream.Dispose();
|
||||||
}
|
}
|
||||||
else if (artURI != null)
|
catch(System.Exception e)
|
||||||
{
|
{
|
||||||
System.Console.WriteLine("&Writing ArtURI");
|
Toast.MakeText(this, Resource.String.format_unsupported, ToastLength.Long).Show();
|
||||||
IPicture[] pictures = new IPicture[1];
|
System.Console.WriteLine("&EditMetadata Validate exception: (probably due to an unsupported format) - " + e.Message);
|
||||||
|
|
||||||
Bitmap bitmap = null;
|
|
||||||
if (tempFile)
|
|
||||||
{
|
|
||||||
await Task.Run(() =>
|
|
||||||
{
|
|
||||||
bitmap = Picasso.With(this).Load(artURI).Transform(new RemoveBlackBorder(true)).Get();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
await Task.Run(() =>
|
|
||||||
{
|
|
||||||
bitmap = Picasso.With(this).Load(artURI).Get();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
MemoryStream memoryStream = new MemoryStream();
|
|
||||||
bitmap.Compress(Bitmap.CompressFormat.Jpeg, 100, memoryStream);
|
|
||||||
byte[] data = memoryStream.ToArray();
|
|
||||||
pictures[0] = new Picture(data);
|
|
||||||
meta.Tag.Pictures = pictures;
|
|
||||||
|
|
||||||
if(!tempFile)
|
|
||||||
artURI = null;
|
|
||||||
|
|
||||||
ContentResolver.Delete(ContentUris.WithAppendedId(Android.Net.Uri.Parse("content://media/external/audio/albumart"), song.AlbumArt), null, null);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
System.Console.WriteLine("&Saving");
|
|
||||||
meta.Save();
|
|
||||||
stream.Dispose();
|
|
||||||
|
|
||||||
System.Console.WriteLine("&Deleting temp file");
|
System.Console.WriteLine("&Deleting temp file");
|
||||||
if (tempFile)
|
if (tempFile)
|
||||||
{
|
{
|
||||||
|
|||||||
217
Opus/Resources/Resource.Designer.cs
generated
217
Opus/Resources/Resource.Designer.cs
generated
@@ -7186,8 +7186,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0072
|
// aapt resource value: 0x7f0d0072
|
||||||
public const int abc_toolbar_collapse_description = 2131558514;
|
public const int abc_toolbar_collapse_description = 2131558514;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0133
|
// aapt resource value: 0x7f0d0134
|
||||||
public const int add = 2131558707;
|
public const int add = 2131558708;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00fc
|
// aapt resource value: 0x7f0d00fc
|
||||||
public const int add_playlist = 2131558652;
|
public const int add_playlist = 2131558652;
|
||||||
@@ -7213,11 +7213,11 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0080
|
// aapt resource value: 0x7f0d0080
|
||||||
public const int appbar_scrolling_view_behavior = 2131558528;
|
public const int appbar_scrolling_view_behavior = 2131558528;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013d
|
// aapt resource value: 0x7f0d013e
|
||||||
public const int appearances = 2131558717;
|
public const int appearances = 2131558718;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0130
|
// aapt resource value: 0x7f0d0131
|
||||||
public const int apply = 2131558704;
|
public const int apply = 2131558705;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d011b
|
// aapt resource value: 0x7f0d011b
|
||||||
public const int artist = 2131558683;
|
public const int artist = 2131558683;
|
||||||
@@ -7231,11 +7231,11 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0111
|
// aapt resource value: 0x7f0d0111
|
||||||
public const int badplaylisturl = 2131558673;
|
public const int badplaylisturl = 2131558673;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0137
|
// aapt resource value: 0x7f0d0138
|
||||||
public const int behavior = 2131558711;
|
public const int behavior = 2131558712;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0156
|
// aapt resource value: 0x7f0d0157
|
||||||
public const int beta_available = 2131558742;
|
public const int beta_available = 2131558743;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0081
|
// aapt resource value: 0x7f0d0081
|
||||||
public const int bottom_sheet_behavior = 2131558529;
|
public const int bottom_sheet_behavior = 2131558529;
|
||||||
@@ -7243,17 +7243,17 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00b4
|
// aapt resource value: 0x7f0d00b4
|
||||||
public const int browse = 2131558580;
|
public const int browse = 2131558580;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0131
|
// aapt resource value: 0x7f0d0132
|
||||||
public const int cancel = 2131558705;
|
public const int cancel = 2131558706;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d015c
|
// aapt resource value: 0x7f0d015d
|
||||||
public const int cancelling = 2131558748;
|
public const int cancelling = 2131558749;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f2
|
// aapt resource value: 0x7f0d00f2
|
||||||
public const int cant_delete = 2131558642;
|
public const int cant_delete = 2131558642;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0159
|
// aapt resource value: 0x7f0d015a
|
||||||
public const int cant_play_non_youtube = 2131558745;
|
public const int cant_play_non_youtube = 2131558746;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00b9
|
// aapt resource value: 0x7f0d00b9
|
||||||
public const int cast = 2131558585;
|
public const int cast = 2131558585;
|
||||||
@@ -7336,11 +7336,11 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0015
|
// aapt resource value: 0x7f0d0015
|
||||||
public const int cast_play = 2131558421;
|
public const int cast_play = 2131558421;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012e
|
|
||||||
public const int cast_queue_push = 2131558702;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012f
|
// aapt resource value: 0x7f0d012f
|
||||||
public const int cast_queue_pushed = 2131558703;
|
public const int cast_queue_push = 2131558703;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d0130
|
||||||
|
public const int cast_queue_pushed = 2131558704;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0016
|
// aapt resource value: 0x7f0d0016
|
||||||
public const int cast_rewind = 2131558422;
|
public const int cast_rewind = 2131558422;
|
||||||
@@ -7405,8 +7405,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0083
|
// aapt resource value: 0x7f0d0083
|
||||||
public const int character_counter_pattern = 2131558531;
|
public const int character_counter_pattern = 2131558531;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0143
|
// aapt resource value: 0x7f0d0144
|
||||||
public const int check_updates = 2131558723;
|
public const int check_updates = 2131558724;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00b0
|
// aapt resource value: 0x7f0d00b0
|
||||||
public const int clientID = 2131558576;
|
public const int clientID = 2131558576;
|
||||||
@@ -7468,11 +7468,11 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d003b
|
// aapt resource value: 0x7f0d003b
|
||||||
public const int common_signin_button_text_long = 2131558459;
|
public const int common_signin_button_text_long = 2131558459;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012d
|
// aapt resource value: 0x7f0d012e
|
||||||
public const int completed = 2131558701;
|
public const int completed = 2131558702;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0150
|
// aapt resource value: 0x7f0d0151
|
||||||
public const int country_blocked = 2131558736;
|
public const int country_blocked = 2131558737;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0117
|
// aapt resource value: 0x7f0d0117
|
||||||
public const int create_local = 2131558679;
|
public const int create_local = 2131558679;
|
||||||
@@ -7492,8 +7492,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0118
|
// aapt resource value: 0x7f0d0118
|
||||||
public const int create_youtube = 2131558680;
|
public const int create_youtube = 2131558680;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0141
|
// aapt resource value: 0x7f0d0142
|
||||||
public const int dark_theme = 2131558721;
|
public const int dark_theme = 2131558722;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00dc
|
// aapt resource value: 0x7f0d00dc
|
||||||
public const int delete = 2131558620;
|
public const int delete = 2131558620;
|
||||||
@@ -7501,8 +7501,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d010b
|
// aapt resource value: 0x7f0d010b
|
||||||
public const int delete_playlist = 2131558667;
|
public const int delete_playlist = 2131558667;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0128
|
// aapt resource value: 0x7f0d0129
|
||||||
public const int deleted_file = 2131558696;
|
public const int deleted_file = 2131558697;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00d4
|
// aapt resource value: 0x7f0d00d4
|
||||||
public const int download = 2131558612;
|
public const int download = 2131558612;
|
||||||
@@ -7510,8 +7510,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0120
|
// aapt resource value: 0x7f0d0120
|
||||||
public const int download_albumart = 2131558688;
|
public const int download_albumart = 2131558688;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0139
|
// aapt resource value: 0x7f0d013a
|
||||||
public const int download_directory = 2131558713;
|
public const int download_directory = 2131558714;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0121
|
// aapt resource value: 0x7f0d0121
|
||||||
public const int download_meta = 2131558689;
|
public const int download_meta = 2131558689;
|
||||||
@@ -7522,20 +7522,20 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00ed
|
// aapt resource value: 0x7f0d00ed
|
||||||
public const int download_path_not_set = 2131558637;
|
public const int download_path_not_set = 2131558637;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0127
|
// aapt resource value: 0x7f0d0128
|
||||||
public const int download_queue = 2131558695;
|
public const int download_queue = 2131558696;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f0
|
// aapt resource value: 0x7f0d00f0
|
||||||
public const int downloading = 2131558640;
|
public const int downloading = 2131558640;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d015a
|
// aapt resource value: 0x7f0d015b
|
||||||
public const int downloading_notification = 2131558746;
|
public const int downloading_notification = 2131558747;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012b
|
// aapt resource value: 0x7f0d012c
|
||||||
public const int downloading_status = 2131558699;
|
public const int downloading_status = 2131558700;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0157
|
// aapt resource value: 0x7f0d0158
|
||||||
public const int downloading_update = 2131558743;
|
public const int downloading_update = 2131558744;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00d3
|
// aapt resource value: 0x7f0d00d3
|
||||||
public const int edit_metadata = 2131558611;
|
public const int edit_metadata = 2131558611;
|
||||||
@@ -7660,6 +7660,9 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00e8
|
// aapt resource value: 0x7f0d00e8
|
||||||
public const int folders = 2131558632;
|
public const int folders = 2131558632;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d0127
|
||||||
|
public const int format_unsupported = 2131558695;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0086
|
// aapt resource value: 0x7f0d0086
|
||||||
public const int hide_bottom_view_on_scroll_behavior = 2131558534;
|
public const int hide_bottom_view_on_scroll_behavior = 2131558534;
|
||||||
|
|
||||||
@@ -7672,11 +7675,11 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00c4
|
// aapt resource value: 0x7f0d00c4
|
||||||
public const int hours = 2131558596;
|
public const int hours = 2131558596;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0129
|
// aapt resource value: 0x7f0d012a
|
||||||
public const int initialization = 2131558697;
|
public const int initialization = 2131558698;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0134
|
// aapt resource value: 0x7f0d0135
|
||||||
public const int later = 2131558708;
|
public const int later = 2131558709;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00d7
|
// aapt resource value: 0x7f0d00d7
|
||||||
public const int list_songs = 2131558615;
|
public const int list_songs = 2131558615;
|
||||||
@@ -7693,26 +7696,26 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d0100
|
// aapt resource value: 0x7f0d0100
|
||||||
public const int localpl_noperm = 2131558656;
|
public const int localpl_noperm = 2131558656;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0147
|
|
||||||
public const int log_in = 2131558727;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0148
|
// aapt resource value: 0x7f0d0148
|
||||||
public const int log_out = 2131558728;
|
public const int log_in = 2131558728;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0146
|
|
||||||
public const int logged_in = 2131558726;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0149
|
// aapt resource value: 0x7f0d0149
|
||||||
public const int login_disabled = 2131558729;
|
public const int log_out = 2131558729;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013a
|
// aapt resource value: 0x7f0d0147
|
||||||
public const int max_download = 2131558714;
|
public const int logged_in = 2131558727;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d014a
|
||||||
|
public const int login_disabled = 2131558730;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013b
|
// aapt resource value: 0x7f0d013b
|
||||||
public const int max_download_dialog = 2131558715;
|
public const int max_download = 2131558715;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012a
|
// aapt resource value: 0x7f0d013c
|
||||||
public const int metadata = 2131558698;
|
public const int max_download_dialog = 2131558716;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d012b
|
||||||
|
public const int metadata = 2131558699;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0124
|
// aapt resource value: 0x7f0d0124
|
||||||
public const int metdata_error_noid = 2131558692;
|
public const int metdata_error_noid = 2131558692;
|
||||||
@@ -7813,8 +7816,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00be
|
// aapt resource value: 0x7f0d00be
|
||||||
public const int next_loading = 2131558590;
|
public const int next_loading = 2131558590;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0136
|
// aapt resource value: 0x7f0d0137
|
||||||
public const int no = 2131558710;
|
public const int no = 2131558711;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f7
|
// aapt resource value: 0x7f0d00f7
|
||||||
public const int no_channel = 2131558647;
|
public const int no_channel = 2131558647;
|
||||||
@@ -7822,8 +7825,8 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00f6
|
// aapt resource value: 0x7f0d00f6
|
||||||
public const int no_lives = 2131558646;
|
public const int no_lives = 2131558646;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014b
|
// aapt resource value: 0x7f0d014c
|
||||||
public const int no_permission = 2131558731;
|
public const int no_permission = 2131558732;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f5
|
// aapt resource value: 0x7f0d00f5
|
||||||
public const int no_playlist = 2131558645;
|
public const int no_playlist = 2131558645;
|
||||||
@@ -7834,17 +7837,17 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00e9
|
// aapt resource value: 0x7f0d00e9
|
||||||
public const int no_song = 2131558633;
|
public const int no_song = 2131558633;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014c
|
// aapt resource value: 0x7f0d014d
|
||||||
public const int no_song_mix = 2131558732;
|
public const int no_song_mix = 2131558733;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f4
|
// aapt resource value: 0x7f0d00f4
|
||||||
public const int no_track = 2131558644;
|
public const int no_track = 2131558644;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0145
|
// aapt resource value: 0x7f0d0146
|
||||||
public const int not_log = 2131558725;
|
public const int not_log = 2131558726;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0151
|
// aapt resource value: 0x7f0d0152
|
||||||
public const int not_streamable = 2131558737;
|
public const int not_streamable = 2131558738;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00bd
|
// aapt resource value: 0x7f0d00bd
|
||||||
public const int nothing = 2131558589;
|
public const int nothing = 2131558589;
|
||||||
@@ -7852,14 +7855,14 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00c0
|
// aapt resource value: 0x7f0d00c0
|
||||||
public const int off = 2131558592;
|
public const int off = 2131558592;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0132
|
// aapt resource value: 0x7f0d0133
|
||||||
public const int ok = 2131558706;
|
public const int ok = 2131558707;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00c6
|
// aapt resource value: 0x7f0d00c6
|
||||||
public const int open_youtube = 2131558598;
|
public const int open_youtube = 2131558598;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0142
|
// aapt resource value: 0x7f0d0143
|
||||||
public const int others = 2131558722;
|
public const int others = 2131558723;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0088
|
// aapt resource value: 0x7f0d0088
|
||||||
public const int password_toggle_content_description = 2131558536;
|
public const int password_toggle_content_description = 2131558536;
|
||||||
@@ -8011,32 +8014,32 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d00de
|
// aapt resource value: 0x7f0d00de
|
||||||
public const int sync_now = 2131558622;
|
public const int sync_now = 2131558622;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013c
|
// aapt resource value: 0x7f0d013d
|
||||||
public const int sync_remove = 2131558716;
|
public const int sync_remove = 2131558717;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00f1
|
// aapt resource value: 0x7f0d00f1
|
||||||
public const int syncing = 2131558641;
|
public const int syncing = 2131558641;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d015b
|
// aapt resource value: 0x7f0d015c
|
||||||
public const int tap_details = 2131558747;
|
public const int tap_details = 2131558748;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013e
|
|
||||||
public const int theme = 2131558718;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d013f
|
// aapt resource value: 0x7f0d013f
|
||||||
public const int theme_dialog = 2131558719;
|
public const int theme = 2131558719;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d0140
|
||||||
|
public const int theme_dialog = 2131558720;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00c5
|
// aapt resource value: 0x7f0d00c5
|
||||||
public const int timer = 2131558597;
|
public const int timer = 2131558597;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014e
|
// aapt resource value: 0x7f0d014f
|
||||||
public const int timout = 2131558734;
|
public const int timout = 2131558735;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d011a
|
// aapt resource value: 0x7f0d011a
|
||||||
public const int title = 2131558682;
|
public const int title = 2131558682;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014a
|
// aapt resource value: 0x7f0d014b
|
||||||
public const int undo = 2131558730;
|
public const int undo = 2131558731;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0122
|
// aapt resource value: 0x7f0d0122
|
||||||
public const int undo_change = 2131558690;
|
public const int undo_change = 2131558690;
|
||||||
@@ -8047,29 +8050,29 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d010e
|
// aapt resource value: 0x7f0d010e
|
||||||
public const int unfork_playlist = 2131558670;
|
public const int unfork_playlist = 2131558670;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014f
|
// aapt resource value: 0x7f0d0150
|
||||||
public const int unknow = 2131558735;
|
public const int unknow = 2131558736;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00bc
|
// aapt resource value: 0x7f0d00bc
|
||||||
public const int up_next = 2131558588;
|
public const int up_next = 2131558588;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0155
|
// aapt resource value: 0x7f0d0156
|
||||||
public const int up_to_date = 2131558741;
|
public const int up_to_date = 2131558742;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d012c
|
// aapt resource value: 0x7f0d012d
|
||||||
public const int up_to_date_status = 2131558700;
|
public const int up_to_date_status = 2131558701;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0153
|
|
||||||
public const int update = 2131558739;
|
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0154
|
// aapt resource value: 0x7f0d0154
|
||||||
public const int update_message = 2131558740;
|
public const int update = 2131558740;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0152
|
// aapt resource value: 0x7f0d0155
|
||||||
public const int update_no_internet = 2131558738;
|
public const int update_message = 2131558741;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0158
|
// aapt resource value: 0x7f0d0153
|
||||||
public const int updating = 2131558744;
|
public const int update_no_internet = 2131558739;
|
||||||
|
|
||||||
|
// aapt resource value: 0x7f0d0159
|
||||||
|
public const int updating = 2131558745;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d003e
|
// aapt resource value: 0x7f0d003e
|
||||||
public const int v7_preference_off = 2131558462;
|
public const int v7_preference_off = 2131558462;
|
||||||
@@ -8077,20 +8080,20 @@ namespace Opus
|
|||||||
// aapt resource value: 0x7f0d003f
|
// aapt resource value: 0x7f0d003f
|
||||||
public const int v7_preference_on = 2131558463;
|
public const int v7_preference_on = 2131558463;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0144
|
// aapt resource value: 0x7f0d0145
|
||||||
public const int version = 2131558724;
|
public const int version = 2131558725;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0138
|
// aapt resource value: 0x7f0d0139
|
||||||
public const int volume = 2131558712;
|
public const int volume = 2131558713;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0140
|
// aapt resource value: 0x7f0d0141
|
||||||
public const int white_theme = 2131558720;
|
public const int white_theme = 2131558721;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d0135
|
// aapt resource value: 0x7f0d0136
|
||||||
public const int yes = 2131558709;
|
public const int yes = 2131558710;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d014d
|
// aapt resource value: 0x7f0d014e
|
||||||
public const int youtube_endpoint = 2131558733;
|
public const int youtube_endpoint = 2131558734;
|
||||||
|
|
||||||
// aapt resource value: 0x7f0d00fd
|
// aapt resource value: 0x7f0d00fd
|
||||||
public const int youtube_loading_error = 2131558653;
|
public const int youtube_loading_error = 2131558653;
|
||||||
|
|||||||
@@ -141,7 +141,8 @@
|
|||||||
<string name="metdata_error_noid">Impossible de télécharger les metadatas depuis youtube, l\'id youtube n\'est pas défni.</string>
|
<string name="metdata_error_noid">Impossible de télécharger les metadatas depuis youtube, l\'id youtube n\'est pas défni.</string>
|
||||||
<string name="mount_error">Il y a un problème avec votre disque de stockage, veuillez arreter de l\'utiliser ailleur et réessayer après.</string>
|
<string name="mount_error">Il y a un problème avec votre disque de stockage, veuillez arreter de l\'utiliser ailleur et réessayer après.</string>
|
||||||
<string name="mount_error_action">ABANDONNER ET QUITER</string>
|
<string name="mount_error_action">ABANDONNER ET QUITER</string>
|
||||||
|
<string name="format_unsupported">Le format de ce son ne supporte pas les métadatas.</string>
|
||||||
|
|
||||||
<!--Download Queue-->
|
<!--Download Queue-->
|
||||||
<string name="download_queue">Liste de téléchargement</string>
|
<string name="download_queue">Liste de téléchargement</string>
|
||||||
<string name="deleted_file">Fichier supprimé</string>
|
<string name="deleted_file">Fichier supprimé</string>
|
||||||
|
|||||||
@@ -141,6 +141,7 @@
|
|||||||
<string name="metdata_error_noid">Can\'t get meta data on youtube, Youtube ID isn\'t set.</string>
|
<string name="metdata_error_noid">Can\'t get meta data on youtube, Youtube ID isn\'t set.</string>
|
||||||
<string name="mount_error">There is a probleme with your storage, please stop using your storage elsewhere and try again.</string>
|
<string name="mount_error">There is a probleme with your storage, please stop using your storage elsewhere and try again.</string>
|
||||||
<string name="mount_error_action">DISCARD AND LEAVE</string>
|
<string name="mount_error_action">DISCARD AND LEAVE</string>
|
||||||
|
<string name="format_unsupported">The format of this song doesn\'t support metadatas.</string>
|
||||||
|
|
||||||
<!--Download Queue-->
|
<!--Download Queue-->
|
||||||
<string name="download_queue">Download Queue</string>
|
<string name="download_queue">Download Queue</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user