diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 526b4c2..a2d7c21 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -13,7 +13,6 @@
-
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
index d2f29f5..4d9dffd 100644
--- a/.idea/jarRepositories.xml
+++ b/.idea/jarRepositories.xml
@@ -46,5 +46,10 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index ee29985..57660f7 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,5 +1,12 @@
+
+
+
diff --git a/.idea/modules.xml b/.idea/modules.xml
index b018651..dbc938d 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -4,6 +4,9 @@
+
+
+
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f14a806..9937b41 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,27 +1,4 @@
-#### 2022-02-13 V7.0.5
-
-- *.[改进]启动软件时自动播放歌曲。
-- *.[改进]当播放视频时,自动退出歌词界面。
-- *.[改进]当播放歌曲时,自动进入歌词或视频界面。
-- *.[修复]修复写真图片无法实现随机展现的BUG。
-
-#### 2021-02-18 V7.0.4
-
-- *.[改进]修复部分布局控件未改成支持AndroidX的控件导致的闪退问题。
-- *.[改进]更新歌曲时,新增如果MV已删除,但歌曲还存在时的解决方案。
-- *.[改进]写真图片随机顺序展现。
-
-#### 2021-02-18 V7.0.3
-
-- *.[改进]项目改成基于AndroidX。
-
-#### 2020-12-17 V7.0.2
-
-- *.[改进]改进歌词界面时间显示,贴合屏幕左上角。
-- *.[改进]本地音乐排序为按创建时间倒序。
-
#### 2020-12-17 V7.0.1
-
- *.[改进]暂停播放视频时,左上角的时间依旧在更新。
- *.[新增]音频歌曲歌词界面新增左上角时间显示。
- *.[新增]打开歌词界面过几秒后,自动进入全屏写真模式显示。
diff --git a/app/build.gradle b/app/build.gradle
index 24be591..eabec2a 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -131,4 +131,4 @@ dependencies {
*/
implementation 'com.github.zhangliangming:Subtitle:v1.2'
-}
+}
\ No newline at end of file
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 79eca52..fd67dbd 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -172,7 +172,7 @@ public static java.lang.String TABLENAME;
#implementation 'com.github.zhangliangming:Subtitle:v1.0'
-keep class com.zlm.subtitlelibrary.** { *; }
--keep class com.xuexiang.xui.widget.edittext.materialedittext.** { *; }
+
#6混淆项目代码
-keep class com.zlm.**
-keepclassmembers class com.zlm.** {
diff --git a/app/src/androidTest/java/com/zlm/hp/DownloadTaskTest.java b/app/src/androidTest/java/com/zlm/hp/DownloadTaskTest.java
index 8fcafcd..e58859a 100644
--- a/app/src/androidTest/java/com/zlm/hp/DownloadTaskTest.java
+++ b/app/src/androidTest/java/com/zlm/hp/DownloadTaskTest.java
@@ -5,8 +5,6 @@ import android.support.test.InstrumentationRegistry;
import android.support.test.runner.AndroidJUnit4;
import android.util.Log;
-import androidx.test.runner.AndroidJUnit4;
-
import com.zlm.down.entity.DownloadTask;
import com.zlm.down.interfaces.IDownloadTaskEvent;
import com.zlm.down.manager.DownloadTaskManager;
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9b306be..3aa1cf7 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -8,6 +8,7 @@
+
@@ -41,7 +42,7 @@
android:name="android.max_aspect"
android:value="2.1" />
-
+
@@ -50,6 +51,7 @@
diff --git a/app/src/main/java/com/zlm/hp/adapter/TabFragmentAdapter.java b/app/src/main/java/com/zlm/hp/adapter/TabFragmentAdapter.java
index d28bd0c..370c05c 100644
--- a/app/src/main/java/com/zlm/hp/adapter/TabFragmentAdapter.java
+++ b/app/src/main/java/com/zlm/hp/adapter/TabFragmentAdapter.java
@@ -1,4 +1,6 @@
package com.zlm.hp.adapter;
+
+
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;
diff --git a/app/src/main/java/com/zlm/hp/adapter/ViewPageFragmentAdapter.java b/app/src/main/java/com/zlm/hp/adapter/ViewPageFragmentAdapter.java
index 6b51d01..55af818 100644
--- a/app/src/main/java/com/zlm/hp/adapter/ViewPageFragmentAdapter.java
+++ b/app/src/main/java/com/zlm/hp/adapter/ViewPageFragmentAdapter.java
@@ -1,5 +1,6 @@
package com.zlm.hp.adapter;
+
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentPagerAdapter;
diff --git a/app/src/main/java/com/zlm/hp/application/HPApplication.java b/app/src/main/java/com/zlm/hp/application/HPApplication.java
index 808ac9d..b6f3e96 100644
--- a/app/src/main/java/com/zlm/hp/application/HPApplication.java
+++ b/app/src/main/java/com/zlm/hp/application/HPApplication.java
@@ -88,10 +88,10 @@ public class HPApplication extends MultiDexApplication {
initLog(ResourceConstants.PATH_LOGCAT);
//初始化bugly
- //initBugly();
+ initBugly();
//初始化LeakCanary
- //initLeakCanary();
+ initLeakCanary();
// 获取当前进程名
String processName = getProcessName(android.os.Process.myPid());
diff --git a/app/src/main/java/com/zlm/hp/db/util/AudioInfoDB.java b/app/src/main/java/com/zlm/hp/db/util/AudioInfoDB.java
index 2095392..1167b01 100644
--- a/app/src/main/java/com/zlm/hp/db/util/AudioInfoDB.java
+++ b/app/src/main/java/com/zlm/hp/db/util/AudioInfoDB.java
@@ -251,6 +251,7 @@ public class AudioInfoDB {
*/
public static List getLocalAudios(Context context) {
try {
+ //按创建时间倒序
List audioInfos = DBHelper.getInstance(context).getDaoSession().getAudioInfoDao().queryBuilder().where(new WhereCondition.StringCondition(AudioInfoDao.Properties.Type.columnName + "=? or ( " + AudioInfoDao.Properties.Type.columnName + "=? and " + AudioInfoDao.Properties.Status.columnName +
"=? )", AudioInfo.TYPE_LOCAL + "", AudioInfo.TYPE_NET + "", AudioInfo.STATUS_FINISH + "")).orderDesc(AudioInfoDao.Properties.CreateTime).list();
return audioInfos;
diff --git a/app/src/main/java/com/zlm/hp/entity/AudioInfo.java b/app/src/main/java/com/zlm/hp/entity/AudioInfo.java
index 6cacd80..4927893 100644
--- a/app/src/main/java/com/zlm/hp/entity/AudioInfo.java
+++ b/app/src/main/java/com/zlm/hp/entity/AudioInfo.java
@@ -130,11 +130,6 @@ public class AudioInfo implements Parcelable {
* MV路径
*/
private String mvPath;
- /**
- * 是否播放MV
- */
- @Transient
- private boolean IsPlayMV;
/**
*
*/
@@ -377,13 +372,7 @@ public class AudioInfo implements Parcelable {
public void setMvPath(String mvPath) {
this.mvPath = mvPath;
}
- public boolean getIsPlayMV() {
- return IsPlayMV;
- }
- public void setIsPlayMV(boolean isPlayMv) {
- this.IsPlayMV = isPlayMv;
- }
public int getPlayProgress() {
return playProgress;
}
diff --git a/app/src/main/java/com/zlm/hp/fragment/BaseFragment.java b/app/src/main/java/com/zlm/hp/fragment/BaseFragment.java
index 3208335..4cbba44 100644
--- a/app/src/main/java/com/zlm/hp/fragment/BaseFragment.java
+++ b/app/src/main/java/com/zlm/hp/fragment/BaseFragment.java
@@ -7,11 +7,6 @@ import android.os.HandlerThread;
import android.os.Looper;
import android.os.Message;
import android.os.Process;
-
-import androidx.constraintlayout.widget.ConstraintLayout;
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -24,6 +19,10 @@ import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
+import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+
import com.zlm.hp.handler.WeakRefHandler;
import com.zlm.hp.ui.R;
import com.zlm.hp.util.AppBarUtil;
diff --git a/app/src/main/java/com/zlm/hp/manager/ActivityManager.java b/app/src/main/java/com/zlm/hp/manager/ActivityManager.java
index 4711bbf..4e93626 100644
--- a/app/src/main/java/com/zlm/hp/manager/ActivityManager.java
+++ b/app/src/main/java/com/zlm/hp/manager/ActivityManager.java
@@ -41,15 +41,7 @@ public class ActivityManager {
public void removeActivity(Activity activity) {
activityList.remove(activity);
}
- public boolean existActivity(Class> classinfo)
- {
- for (Activity item : activityList) {
- if (!item.isFinishing() && item != null) {
- if(item.getClass()==classinfo){return true;}
- }
- }
- return false;
- }
+
/**
* 退出
*/
diff --git a/app/src/main/java/com/zlm/hp/receiver/AudioBroadcastReceiver.java b/app/src/main/java/com/zlm/hp/receiver/AudioBroadcastReceiver.java
index 4857c99..138dd4f 100644
--- a/app/src/main/java/com/zlm/hp/receiver/AudioBroadcastReceiver.java
+++ b/app/src/main/java/com/zlm/hp/receiver/AudioBroadcastReceiver.java
@@ -57,6 +57,7 @@ public class AudioBroadcastReceiver {
* 播放
*/
public static final int ACTION_CODE_PLAYING = 3;
+
/**
* 播放本地歌曲
*/
@@ -242,14 +243,7 @@ public class AudioBroadcastReceiver {
* 播放网络视频
*/
public static final int ACTION_CODE_PLAYNETVIDEO = 40;
- /**
- * 显示歌词界面
- */
- public static final int ACTION_CODE_SHOWLRCVIEW = 42;
- /**
- * 关闭歌词窗体
- */
- public static final int ACTION_LRC_CLOSE = 43;
+
private BroadcastReceiver mBroadcastReceiver;
private IntentFilter mIntentFilter;
private AudioReceiverListener mReceiverListener;
@@ -406,22 +400,6 @@ public class AudioBroadcastReceiver {
public static void sendVideoCloserReceiver(Context context) {
sendReceiver(context, ACTION_VIDEO_CLOSE, null, null);
}
- /**
- * 显示歌词界面
- *
- * @param context
- */
- public static void sendShowLrcViewReceiver(Context context) {
- sendReceiver(context, ACTION_CODE_SHOWLRCVIEW, null, null);
- }
- /**
- * 关闭歌词界面
- *
- * @param context
- */
- public static void sendCloseLrcViewReceiver(Context context) {
- sendReceiver(context, ACTION_LRC_CLOSE, null, null);
- }
/**
* 在线歌曲下载完成
*
diff --git a/app/src/main/java/com/zlm/hp/service/AudioPlayerService.java b/app/src/main/java/com/zlm/hp/service/AudioPlayerService.java
index 639329a..9a7d11b 100644
--- a/app/src/main/java/com/zlm/hp/service/AudioPlayerService.java
+++ b/app/src/main/java/com/zlm/hp/service/AudioPlayerService.java
@@ -621,7 +621,6 @@ public class AudioPlayerService extends Service {
isPlayMV = true;
}
}
- audioInfo.setIsPlayMV(isPlayMV);
if ((isPlayMV && MvPath != null) || filePath == null || filePath.isEmpty()) { //如果会播放MV,则进入下一步操作
File MVFile = new File(MvPath);
@@ -693,8 +692,9 @@ public class AudioPlayerService extends Service {
AudioBroadcastReceiver.sendPlayReceiver(mContext, audioInfo);
mWorkerHandler.removeMessages(MESSAGE_WHAT_LOADPLAYPROGRESSDATA);
mWorkerHandler.sendEmptyMessage(MESSAGE_WHAT_LOADPLAYPROGRESSDATA);
+
mMediaPlayer.start();
- AudioBroadcastReceiver.sendShowLrcViewReceiver(mContext);
+
}
}
});
diff --git a/app/src/main/java/com/zlm/hp/ui/BaseActivity.java b/app/src/main/java/com/zlm/hp/ui/BaseActivity.java
index 2c2e79e..73664d6 100644
--- a/app/src/main/java/com/zlm/hp/ui/BaseActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/BaseActivity.java
@@ -7,11 +7,6 @@ import android.os.HandlerThread;
import android.os.Looper;
import android.os.Message;
import android.os.Process;
-
-import androidx.annotation.Nullable;
-import androidx.appcompat.app.AppCompatActivity;
-import androidx.constraintlayout.widget.ConstraintLayout;
-import androidx.core.content.ContextCompat;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -20,6 +15,11 @@ import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.core.content.ContextCompat;
+
import com.zlm.hp.handler.WeakRefHandler;
import com.zlm.hp.manager.ActivityManager;
import com.zlm.hp.util.AppBarUtil;
diff --git a/app/src/main/java/com/zlm/hp/ui/LocalVideoActivity.java b/app/src/main/java/com/zlm/hp/ui/LocalVideoActivity.java
index 44cbf9d..cbdf29a 100644
--- a/app/src/main/java/com/zlm/hp/ui/LocalVideoActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/LocalVideoActivity.java
@@ -329,7 +329,6 @@ public class LocalVideoActivity extends BaseActivity {
mUIHandler.sendEmptyMessage(MESSAGE_WHAT_TIMECHANGE);
//播放视频
playVideo();
- AudioBroadcastReceiver.sendCloseLrcViewReceiver(mContext);
}
/**
diff --git a/app/src/main/java/com/zlm/hp/ui/LrcActivity.java b/app/src/main/java/com/zlm/hp/ui/LrcActivity.java
index aa17bb9..c1d81d8 100644
--- a/app/src/main/java/com/zlm/hp/ui/LrcActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/LrcActivity.java
@@ -1946,9 +1946,6 @@ public class LrcActivity extends BaseActivity {
*/
private void handleAudioBroadcastReceiver(Intent intent, int code) {
switch (code) {
- case AudioBroadcastReceiver.ACTION_LRC_CLOSE:
- this.finish();
- break;
case AudioBroadcastReceiver.ACTION_CODE_NULL:
//空数据
diff --git a/app/src/main/java/com/zlm/hp/ui/MainActivity.java b/app/src/main/java/com/zlm/hp/ui/MainActivity.java
index 918bfe1..e6fb655 100644
--- a/app/src/main/java/com/zlm/hp/ui/MainActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/MainActivity.java
@@ -6,15 +6,10 @@ import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
+import android.media.MediaMetadataRetriever;
import android.os.Build;
import android.os.Bundle;
import android.os.Message;
-import androidx.core.content.ContextCompat;
-import androidx.fragment.app.Fragment;
-import androidx.recyclerview.widget.LinearLayoutManager;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.viewpager.widget.ViewPager;
-
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.Display;
@@ -33,6 +28,12 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.Toast;
+import androidx.core.content.ContextCompat;
+import androidx.fragment.app.Fragment;
+import androidx.recyclerview.widget.LinearLayoutManager;
+import androidx.recyclerview.widget.RecyclerView;
+import androidx.viewpager.widget.ViewPager;
+
import com.dou361.dialogui.DialogUIUtils;
import com.dou361.dialogui.listener.DialogUIListener;
import com.suke.widget.SwitchButton;
@@ -83,7 +84,6 @@ import com.zlm.libs.widget.MusicSeekBar;
import com.zlm.libs.widget.SlidingMenuLayout;
import java.io.File;
-import java.security.cert.CertPathValidatorException;
import java.util.ArrayList;
import java.util.List;
@@ -279,10 +279,10 @@ public class MainActivity extends BaseActivity {
protected int setContentLayoutResID() {
return R.layout.activity_main;
}
- //是否第一次使用
- private boolean isFirst=true;
+
@Override
protected void initViews(Bundle savedInstanceState) {
+
initSlidingMenu();
initViewPage();
initTitleViews();
@@ -291,7 +291,6 @@ public class MainActivity extends BaseActivity {
initReceiver();
initService();
loadData();
- AudioPlayerManager.newInstance(mContext).play(mMusicSeekBar.getProgress());
}
@@ -301,24 +300,7 @@ public class MainActivity extends BaseActivity {
private void initService() {
AudioPlayerService.startService(this);
}
- private void ShowLrcView()
- {
- if (mSlidingMenuLayout.isShowingMenu()) {
- mSlidingMenuLayout.hideMenu();
- return;
- }
- if (mIsShowPopPlayList) {
- hidePopPlayListView();
- return;
- }
- if(!ActivityManager.getInstance().existActivity(LrcActivity.class)) {
- Intent intent = new Intent(MainActivity.this, LrcActivity.class);
- startActivity(intent);
- }
- //去掉动画
- overridePendingTransition(0, 0);
- }
/**
* 初始化广播
@@ -439,17 +421,26 @@ public class MainActivity extends BaseActivity {
mMusicSeekBar.setMax((int) initAudioInfo.getDuration());
mMusicSeekBar.setProgress((int) initAudioInfo.getPlayProgress());
mMusicSeekBar.setSecondaryProgress(0);
-
- //加载歌手头像
- ImageUtil.loadSingerImage(mContext, mArtistImageView, initAudioInfo.getSingerName(), mConfigInfo.isWifi(), 400, 400, new AsyncHandlerTask(mUIHandler, mWorkerHandler), new ImageUtil.ImageLoadCallBack() {
- @Override
- public void callback(Bitmap bitmap) {
- //if (bitmap != null) {
- AudioBroadcastReceiver.sendNotifiyImgLoadedReceiver(mContext, initAudioInfo);
- // }
- }
- });
-
+ MediaMetadataRetriever mediaMetadataRetriever = new MediaMetadataRetriever();
+ mediaMetadataRetriever.setDataSource(initAudioInfo.getFilePath());
+ byte[] cover = mediaMetadataRetriever.getEmbeddedPicture();
+ Bitmap singer_bitmap = BitmapFactory.decodeByteArray(cover, 0, cover.length);
+ if(singer_bitmap!=null)
+ {
+ mArtistImageView.setImageDrawable(new BitmapDrawable(singer_bitmap));
+ mArtistImageView.setTag(initAudioInfo.getFilePath().hashCode() + "");
+ }
+ else {
+ //加载歌手头像
+ ImageUtil.loadSingerImage(mContext, mArtistImageView, initAudioInfo.getSingerName(), mConfigInfo.isWifi(), 400, 400, new AsyncHandlerTask(mUIHandler, mWorkerHandler), new ImageUtil.ImageLoadCallBack() {
+ @Override
+ public void callback(Bitmap bitmap) {
+ //if (bitmap != null) {
+ AudioBroadcastReceiver.sendNotifiyImgLoadedReceiver(mContext, initAudioInfo);
+ // }
+ }
+ });
+ }
//加载歌词
String keyWords = initAudioInfo.getTitle();
LyricsManager.newInstance(mContext).loadLyrics(initAudioInfo.getFilePath(),keyWords, keyWords, initAudioInfo.getDuration() + "", initAudioInfo.getHash(), mConfigInfo.isWifi(), new AsyncHandlerTask(mUIHandler, mWorkerHandler), null);
@@ -470,8 +461,7 @@ public class MainActivity extends BaseActivity {
if (mAdapter != null)
mAdapter.reshViewHolder(null);
}
- //region 加载歌词界面
- //endregion
+
break;
case AudioBroadcastReceiver.ACTION_CODE_PLAY:
if (mPauseImageView.getVisibility() != View.VISIBLE)
@@ -479,9 +469,7 @@ public class MainActivity extends BaseActivity {
if (mPlayImageView.getVisibility() != View.INVISIBLE)
mPlayImageView.setVisibility(View.INVISIBLE);
- break;
- case AudioBroadcastReceiver.ACTION_CODE_SHOWLRCVIEW:
- ShowLrcView();
+
break;
case AudioBroadcastReceiver.ACTION_CODE_PLAYING:
@@ -798,7 +786,20 @@ public class MainActivity extends BaseActivity {
mPlayerBarLL.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- ShowLrcView();
+ if (mSlidingMenuLayout.isShowingMenu()) {
+ mSlidingMenuLayout.hideMenu();
+ return;
+ }
+
+ if (mIsShowPopPlayList) {
+ hidePopPlayListView();
+ return;
+ }
+
+ Intent intent = new Intent(MainActivity.this, LrcActivity.class);
+ startActivity(intent);
+ //去掉动画
+ overridePendingTransition(0, 0);
}
});
//mSlidingMenuLayout.addIgnoreHorizontalView(mPlayerBarLL);
@@ -1028,17 +1029,6 @@ public class MainActivity extends BaseActivity {
if (!file.exists()) {
AudioInfoDB.deleteAudio(mContext, temp.getHash(), false);
}
- else
- {
- if(temp.getMvPath().length()>0) {
- File file_mv = new File(temp.getMvPath());
- if (!file_mv.exists()) { //如果歌曲存在,但MV不存在
- temp.setMvHash("");
- temp.setMvPath("");
- AudioInfoDB.updateVideo(mContext, temp);
- }
- }
- }
}
}catch (Exception e) {
e.printStackTrace();
diff --git a/app/src/main/java/com/zlm/hp/ui/SettingActivity.java b/app/src/main/java/com/zlm/hp/ui/SettingActivity.java
index 1aebac7..0324cb9 100644
--- a/app/src/main/java/com/zlm/hp/ui/SettingActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/SettingActivity.java
@@ -8,7 +8,6 @@ import android.view.MotionEvent;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
-import android.widget.CompoundButton;
import android.widget.ImageView;
import android.widget.Spinner;
import android.widget.TextView;
@@ -16,7 +15,6 @@ import android.widget.TextView;
import com.dou361.dialogui.DialogUIUtils;
import com.dou361.dialogui.listener.DialogUIListener;
import com.suke.widget.SwitchButton;
-import com.xuexiang.xui.utils.WidgetUtils;
import com.zlm.hp.constants.ConfigInfo;
import com.zlm.hp.constants.ResourceConstants;
import com.zlm.hp.db.util.DownloadThreadInfoDB;
@@ -58,7 +56,7 @@ public class SettingActivity extends BaseActivity {
/**
* 歌手歌曲名居中显示开关
*/
- private com.xuexiang.xui.widget.button.switchbutton.SwitchButton mCenterSingerSongSwitchButton;
+ private SwitchButton mCenterSingerSongSwitchButton;
/**
* MV播放模式
*/
@@ -196,9 +194,9 @@ public class SettingActivity extends BaseActivity {
}
});
mCenterSingerSongSwitchButton = findViewById(R.id.center_singersongname_switch);
- mCenterSingerSongSwitchButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
+ mCenterSingerSongSwitchButton.setOnCheckedChangeListener(new SwitchButton.OnCheckedChangeListener() {
@Override
- public void onCheckedChanged(CompoundButton view, boolean isChecked) {
+ public void onCheckedChanged(SwitchButton view, boolean isChecked) {
if (mConfigInfo.isCenterSingerSongName() != isChecked)
mConfigInfo.setIsCenterSingerSongName(isChecked).save();
}
@@ -208,14 +206,13 @@ public class SettingActivity extends BaseActivity {
list.add("只播放MV");
list.add("随机选择播放MV和歌曲");
mMVPlayMode=findViewById(R.id.mvplaymode_spinner);
- WidgetUtils.initSpinnerStyle(mMVPlayMode);
//第二步:为下拉列表定义一个适配器
adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, list);
//第三步:设置下拉列表下拉时的菜单样式
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
+ adapter.notifyDataSetChanged();
//第四步:将适配器添加到下拉列表上
mMVPlayMode.setAdapter(adapter);
- adapter.notifyDataSetChanged();
//第五步:添加监听器,为下拉列表设置事件的响应
mMVPlayMode.setOnItemSelectedListener(new Spinner.OnItemSelectedListener() {
@Override
diff --git a/app/src/main/java/com/zlm/hp/ui/SplashActivity.java b/app/src/main/java/com/zlm/hp/ui/SplashActivity.java
index 3787e6b..d350a21 100644
--- a/app/src/main/java/com/zlm/hp/ui/SplashActivity.java
+++ b/app/src/main/java/com/zlm/hp/ui/SplashActivity.java
@@ -9,11 +9,12 @@ import android.graphics.Color;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Message;
-import androidx.core.app.ActivityCompat;
-import androidx.core.content.PermissionChecker;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
+import androidx.core.app.ActivityCompat;
+import androidx.core.content.PermissionChecker;
+
import com.dou361.dialogui.DialogUIUtils;
import com.dou361.dialogui.listener.DialogUIListener;
import com.zlm.hp.constants.ConfigInfo;
@@ -203,6 +204,7 @@ public class SplashActivity extends BaseActivity {
boolean isFrist = PreferencesUtil.getBoolean(getApplicationContext(), Constants.IS_FRIST_KEY, true);
if (isFrist) {
+
//1.扫描本地歌曲列表
List audioInfos = MediaUtil.scanLocalMusic(getApplicationContext(), null);
if (audioInfos != null && audioInfos.size() > 0) {
@@ -235,11 +237,6 @@ public class SplashActivity extends BaseActivity {
mUIHandler.sendEmptyMessageDelayed(GOHOME, 5000);
}
}
- if (isFrist) {
- configInfo.setWire(true);//支持线控
- configInfo.setStatusBarShow(false);//不显示状态栏
- configInfo.save();
- }
}
/**
diff --git a/app/src/main/java/com/zlm/hp/util/ImageUtil.java b/app/src/main/java/com/zlm/hp/util/ImageUtil.java
index 5151a1f..920a4a8 100644
--- a/app/src/main/java/com/zlm/hp/util/ImageUtil.java
+++ b/app/src/main/java/com/zlm/hp/util/ImageUtil.java
@@ -37,7 +37,6 @@ import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
-import java.util.Random;
/**
* @Description:
@@ -280,7 +279,7 @@ public class ImageUtil {
SingerInfo singerInfo = new SingerInfo();
singerInfo.setImageUrl(temp.getAbsolutePath());
singerInfo.setSingerName(singerName);
- listResult.add(RandomUtil.RandomInt(0,listResult.size()), singerInfo);
+ listResult.add(singerInfo);
break;
}
}
@@ -350,12 +349,30 @@ public class ImageUtil {
*/
private static void addAndSortData(List returnResult, List> tempReturnResult, List singerNames) {
for (int i = 0; i < singerNames.size(); i++) {
- List tempList = tempReturnResult.get(i);
- while(tempList.size()>0){
- int max=tempList.size()-1,min=0;
- int ran2 = (int) (Math.random()*(max-min)+min);
- returnResult.add(tempList.get(ran2));
- tempList.remove(ran2);
+ if (i == 0) {
+ returnResult.addAll(tempReturnResult.get(i));
+ } else {
+ String tag = singerNames.get(i - 1);
+ List tempList = tempReturnResult.get(i);
+
+ boolean flag = tempList.size() - returnResult.size() > 0 ? true : false;
+ int minSize = tempList.size() > returnResult.size() ? returnResult.size() : tempList.size();
+ int modSize = Math.abs(tempList.size() - returnResult.size());
+ int z = 0;
+ for (int j = 0; j < minSize; j++) {
+ for (; z < returnResult.size(); z++) {
+ SingerInfo temp = returnResult.get(z);
+ if (temp.getSingerName().equals(tag)) {
+ returnResult.add(++z, tempList.get(j));
+ break;
+ }
+ }
+ }
+ if (flag) {
+ for (int k = modSize; k < tempList.size(); k++) {
+ returnResult.add(tempList.get(k));
+ }
+ }
}
}
}
diff --git a/app/src/main/java/com/zlm/hp/util/RandomUtil.java b/app/src/main/java/com/zlm/hp/util/RandomUtil.java
index 7992339..f8facf0 100644
--- a/app/src/main/java/com/zlm/hp/util/RandomUtil.java
+++ b/app/src/main/java/com/zlm/hp/util/RandomUtil.java
@@ -34,10 +34,7 @@ public class RandomUtil {
}
mLastNum = mSize - 1;
}
- public static int RandomInt(int min,int max)
- {
- return (new Random()).nextInt((max - min) + 1) + min;
- }
+
/**
* 生成随机数
* @return
diff --git a/app/src/main/java/com/zlm/hp/util/StorageUtil.java b/app/src/main/java/com/zlm/hp/util/StorageUtil.java
index 9f2596a..0ab014e 100644
--- a/app/src/main/java/com/zlm/hp/util/StorageUtil.java
+++ b/app/src/main/java/com/zlm/hp/util/StorageUtil.java
@@ -82,9 +82,8 @@ public class StorageUtil {
String path = (String) getPath.invoke(obj);
info = new StorageInfo(path);
File file = new File(info.getPath());
- Boolean result= file.canWrite();
if ((file.exists()) && (file.isDirectory())
- ) {
+ && (file.canWrite())) {
Method isRemovable = obj.getClass().getMethod(
"isRemovable");
String state = null;
diff --git a/app/src/main/res/drawable/ios_back_drawable.xml b/app/src/main/res/drawable/ios_back_drawable.xml
deleted file mode 100644
index 1b3859b..0000000
--- a/app/src/main/res/drawable/ios_back_drawable.xml
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
-
- -
-
-
-
-
-
- -
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_file_manager.xml b/app/src/main/res/layout/activity_file_manager.xml
index 921fab8..e201396 100644
--- a/app/src/main/res/layout/activity_file_manager.xml
+++ b/app/src/main/res/layout/activity_file_manager.xml
@@ -64,12 +64,12 @@
-
+ android:layout_below="@+id/op_heaad">
+
-
+ android:layout_margin="20dp">
diff --git a/app/src/main/res/layout/activity_search_singer.xml b/app/src/main/res/layout/activity_search_singer.xml
index 216554e..ef43002 100644
--- a/app/src/main/res/layout/activity_search_singer.xml
+++ b/app/src/main/res/layout/activity_search_singer.xml
@@ -54,11 +54,11 @@
android:layout_height="match_parent"
android:visibility="gone">
-
+ android:layout_above="@+id/bottomlayout">
-
+ android:layout_marginRight="5dp"
+ app:sb_checked_color="@color/defColor" />
-
+ android:paddingBottom="@dimen/bar_height">
diff --git a/app/src/main/res/layout/fragment_last_song.xml b/app/src/main/res/layout/fragment_last_song.xml
index f1fff9b..b6d5e9b 100644
--- a/app/src/main/res/layout/fragment_last_song.xml
+++ b/app/src/main/res/layout/fragment_last_song.xml
@@ -1,5 +1,5 @@
-
@@ -11,4 +11,4 @@
android:paddingBottom="@dimen/bar_height">
-
+
diff --git a/app/src/main/res/layout/fragment_loading.xml b/app/src/main/res/layout/fragment_loading.xml
index 28f0b96..a2856e0 100644
--- a/app/src/main/res/layout/fragment_loading.xml
+++ b/app/src/main/res/layout/fragment_loading.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/app/src/main/res/layout/fragment_make_extra_lrc.xml b/app/src/main/res/layout/fragment_make_extra_lrc.xml
index 65818f3..2eb2629 100644
--- a/app/src/main/res/layout/fragment_make_extra_lrc.xml
+++ b/app/src/main/res/layout/fragment_make_extra_lrc.xml
@@ -62,7 +62,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent">
-
-
@@ -274,4 +274,4 @@
android:background="#f3f3f3">
-
+
diff --git a/app/src/main/res/layout/fragment_nonet.xml b/app/src/main/res/layout/fragment_nonet.xml
index c91c3a2..1e79600 100644
--- a/app/src/main/res/layout/fragment_nonet.xml
+++ b/app/src/main/res/layout/fragment_nonet.xml
@@ -1,5 +1,5 @@
-
-
+
diff --git a/app/src/main/res/layout/fragment_recommend.xml b/app/src/main/res/layout/fragment_recommend.xml
index 4a92490..9643883 100644
--- a/app/src/main/res/layout/fragment_recommend.xml
+++ b/app/src/main/res/layout/fragment_recommend.xml
@@ -1,5 +1,5 @@
-
@@ -10,4 +10,4 @@
android:paddingBottom="@dimen/bar_height">
-
+
diff --git a/app/src/main/res/layout/fragment_song.xml b/app/src/main/res/layout/fragment_song.xml
index 16d04e8..14d83bd 100644
--- a/app/src/main/res/layout/fragment_song.xml
+++ b/app/src/main/res/layout/fragment_song.xml
@@ -3,8 +3,16 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
-
-
+
-
@@ -10,4 +10,4 @@
android:paddingBottom="@dimen/bar_height">
-
+
diff --git a/app/src/main/res/layout/layout_fragment_make_extra_lrc.xml b/app/src/main/res/layout/layout_fragment_make_extra_lrc.xml
index f37293f..6a6327c 100644
--- a/app/src/main/res/layout/layout_fragment_make_extra_lrc.xml
+++ b/app/src/main/res/layout/layout_fragment_make_extra_lrc.xml
@@ -63,7 +63,7 @@
android:layout_height="match_parent">
-
-
-
+ android:layout_height="match_parent">
diff --git a/app/src/main/res/layout/layout_main.xml b/app/src/main/res/layout/layout_main.xml
index d2888fd..711128a 100644
--- a/app/src/main/res/layout/layout_main.xml
+++ b/app/src/main/res/layout/layout_main.xml
@@ -18,10 +18,10 @@
android:layout_height="@dimen/title_height">
-
+ android:layout_height="match_parent">
diff --git a/app/src/main/res/layout/layout_pop_playlist.xml b/app/src/main/res/layout/layout_pop_playlist.xml
index 5cf0470..0182550 100644
--- a/app/src/main/res/layout/layout_pop_playlist.xml
+++ b/app/src/main/res/layout/layout_pop_playlist.xml
@@ -101,12 +101,12 @@
android:layout_height="match_parent"
android:layout_below="@+id/line">
-
+ android:overScrollMode="never">
true
-
-
-
-
-
-
+