diff --git a/.gitignore b/.gitignore index 520a863..96b8ac8 100644 --- a/.gitignore +++ b/.gitignore @@ -53,3 +53,11 @@ google-services.json freeline.py freeline/ freeline_project_description.json +.idea/misc.xml +.idea/modules.xml +.idea/runConfigurations.xml +.idea/vcs.xml +gradle/wrapper/gradle-wrapper.jar +gradle/wrapper/gradle-wrapper.properties +gradlew.bat +gradlew.bat diff --git a/app/build.gradle b/app/build.gradle index c24ff05..c0bcf6b 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -14,7 +14,7 @@ android { buildTypes { release { minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } diff --git a/app/src/main/java/james/medianotification/services/NotificationService.java b/app/src/main/java/james/medianotification/services/NotificationService.java index 6fa8fde..5e7df73 100644 --- a/app/src/main/java/james/medianotification/services/NotificationService.java +++ b/app/src/main/java/james/medianotification/services/NotificationService.java @@ -182,9 +182,10 @@ public void updateNotification() { .setSmallIcon(R.drawable.ic_music) .setContentTitle(title) .setContentText(subtitle) + .setVisibility(NotificationCompat.VISIBILITY_PUBLIC) .setDeleteIntent(PendingIntent.getService(this, 0, deleteIntent, 0)) //.setStyle(new android.support.v4.media.app.NotificationCompat.MediaStyle()) - .setOngoing(isPlaying && !prefs.getBoolean(PreferenceUtils.PREF_ALWAYS_DISMISSIBLE, false)) + .setOngoing(isPlaying || !prefs.getBoolean(PreferenceUtils.PREF_ALWAYS_DISMISSIBLE, false)) .setVisibility(VISIBILITY_PUBLIC); if (contentIntent != null) diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml new file mode 100644 index 0000000..0e30289 --- /dev/null +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -0,0 +1,79 @@ + + 媒体通知 + 自定义 + 播放器 + 支持的播放器 + 所有 + 帮助 + 开启音乐通知 + 高对比度文字/图片 + 取色模式 + 默认取色 + Spotify + 如果您的设备以及获得了Root访问权限,那么您可以授予应用程序 android.permission.UPDATE_APP_OPS_STATS 权限来使应用可以自行阻止音乐应用程序的通知,但 android.permission.UPDATE_APP_OPS_STATS 权限被保护在"签名保护"下,所以目前不可能在这个应用程序中包含该功能。 + 检查权限 + 为了获取音乐的封面图片,应用需要获得储存卡储存权限。 为了授予应用该权限,请点击"允许"按钮。 + 如果您没有oot访问权限,但仍然可以自行阻止音乐应用程序的通知,并通过切换下面的开关告诉应用程序去完全依赖广播接收器。这可能会导致应用程序在与某些音乐应用程序一起使用时变得不稳定和不可靠,并且控制按钮可能无法正常工作,因为应用程序无法通过音乐应用程序的通知触发它们。 + 使用广播接收器 + 成功!权限已经被授予 + android.permission.UPDATE_APP_OPS_STATS 权限没有被授予 + 检查权限 + 从Last.fm获取音乐封面 + 不能获取ReadMe: %s + 默认音乐播放器 + 如果应用程序在点击通知时无法检测到音乐播放器,则可以设置默认应用程序来启动。 + 始终使应用程序通知持续显示 + 划去通知后关闭应用程序(不安全) + 不能再反射过程中发送关键事件: %s + 音乐控制方法(不可靠) + 这使您可以指定一种方法来控制音乐播放器,如果应用程序无法找出哪个应用程序正在播放音乐,或者没有任何其他方式来控制它。 + 加载所有应用 + 显示专辑图片 + 游览ithub库 + 使用倒置的文字颜色 + 贡献者 + 关于 + 感谢 legendary Vukašin Anđelković 制作漂亮的APP图标 + + Glide + An image loading and caching library for Android focused on smooth scrolling. + 也想贡献代码? 这个应用程序在Github上开源 + 尝试正常地关闭音乐应用程序通知 + 外观设置 + 行为设置 + 强制MD播放图标 + 外置储存 + 打开 + 默认 + 默认 + Markwon + A library for Android that renders markdown as system-native Spannables. + 欢迎 + 媒体通知是一款可以在Android Oreo以前的设备上重现Android Oreo丰富多彩的媒体通知的应用程序。 请注意,这个应用程序不会取代其他应用程序的通知; 它会创建自己的通知。 要查看所有可用选项和用例,请访问“帮助”部分或按“了解更多”。 + 了解更多 + 明白 + 应用程序特定的设置 + 该列表列出了手机上当前安装的所有应用程序。 每个应用程序右侧的开关允许您在应用程序播放时启用或禁用媒体通知。 如果关闭该开关,媒体通知将不会做任何事情,因为无法从该应用程序获取任何通知或广播。 + “支持的播放器”部分包含媒体通知正式支持的应用程序。 “所有”部分包含其他所有内容。 不幸的是,由于目前还没有确定应用程序是否播放音乐的可靠方法,因此在该列表中仅包括音乐播放器是不可能的。 + 将应用程序设置为默认播放器将导致媒体通知无法通过任何其他方法找到当前播放器时始终假设该默认音乐应用程序正在播放。 + 显示简介部分 + + + + 取优势的颜色 + 取主要的颜色 + 取有活力的颜色 + 取柔和的颜色 + 始终默认 + + + + 默认 (无) + AudioManager API + Reflection (Unstable) + Broadcast + Broadcast String + Broadcast Parcelable + + + \ No newline at end of file diff --git a/build.gradle b/build.gradle index 5ea5e6b..8fb9524 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ buildscript { } dependencies { - classpath 'com.android.tools.build:gradle:3.0.0-beta4' + classpath 'com.android.tools.build:gradle:3.0.1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradlew.bat b/gradlew.bat index 8a0b282..aec9973 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,90 +1,90 @@ -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto init - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:init -@rem Get command-line arguments, handling Windowz variants - -if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windowz variants + +if not "%OS%" == "Windows_NT" goto win9xME_args +if "%@eval[2+2]" == "4" goto 4NT_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* +goto execute + +:4NT_args +@rem Get arguments from the 4NT Shell from JP Software +set CMD_LINE_ARGS=%$ + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega