Merge pull request #518 from tva2000hn/master

Synced .lrc lyrics without putting in the /RetroMusic folder
This commit is contained in:
Hemanth S 2019-11-10 00:07:49 +05:30 committed by GitHub
commit 99ed3d3bbb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 79 additions and 25 deletions

View file

@ -15,6 +15,7 @@
package code.name.monkey.retromusic.util;
import android.util.Base64;
import android.util.Log;
import java.io.BufferedReader;
import java.io.File;
@ -40,11 +41,11 @@ public class LyricUtil {
public static File writeLrcToLoc(@NonNull String title, @NonNull String artist, @NonNull String lrcContext) {
FileWriter writer = null;
try {
File file = new File(getLrcPath(title, artist));
if (!file.getParentFile().exists()) {
file.getParentFile().mkdirs();
File file = new File(getLrcPath2(title, artist));
if (!file.exists()) {
file.mkdirs();
}
writer = new FileWriter(getLrcPath(title, artist));
writer = new FileWriter(getLrcPath2(title, artist));
writer.write(lrcContext);
return file;
} catch (IOException e) {
@ -70,17 +71,46 @@ public class LyricUtil {
return file.exists();
}
@NonNull
public static File getLocalLyricFile(@NonNull String title, @NonNull String artist) {
File file = new File(getLrcPath(title, artist));
if (file.exists()) {
return file;
} else {
return new File("lyric file not exist");
}
public static boolean isLrcFile2Exist(@NonNull String title, @NonNull String artist) {
File file = new File(getLrcPath2(title, artist));
return file.exists();
}
private static String getLrcPath(String title, String artist) {
@NonNull
public static File getLocalLyricFile(@NonNull String title, @NonNull String artist) {
try{
File file = new File(getLrcPath(title, artist));
File file2 = new File(getLrcPath2(title, artist));
if (file.exists()) {
return file;
} else if (file2.exists()) {
return file2;
}
else {
return new File("lyric file not exist");
}} catch (Exception dfs){
dfs.printStackTrace();
return new File("lyric file not exist");
}
}
public static String getLrcPath2(String title, String artist) {
String x2;
if(title.endsWith(".flac")||title.endsWith(".mogg")||title.endsWith(".alac")||title.endsWith(".aiff")||title.endsWith(".webv")){
x2= title.substring(0, title.length() -5 ) + ".lrc";
}
else{
x2= title.substring(0, title.length() -4 ) + ".lrc";}
return x2;
}
public static String getLrcPath(String title, String artist) {
return lrcRootPath + title + " - " + artist + ".lrc";
}
@ -103,10 +133,18 @@ public class LyricUtil {
@NonNull
public static String getStringFromFile(@NonNull String title, @NonNull String artist) throws Exception {
File file = new File(getLrcPath(title, artist));
File file;
File file2 = new File(getLrcPath(title, artist));
File file3 = new File(getLrcPath2(title, artist));
if(file2.exists()){
file = file2;
} else {
file = file3;
}
FileInputStream fin = new FileInputStream(file);
String ret = convertStreamToString(fin);
fin.close();
// Log.d("damn2",ret);
return ret;
}