commit
14d331c91a
13 changed files with 62 additions and 51 deletions
4
.gitattributes
vendored
Normal file
4
.gitattributes
vendored
Normal file
|
@ -0,0 +1,4 @@
|
|||
* text=auto eol=lf
|
||||
|
||||
*.bat text eol=crlf
|
||||
*.jar binary
|
17
.github/workflows/android.yml
vendored
17
.github/workflows/android.yml
vendored
|
@ -12,23 +12,12 @@ jobs:
|
|||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: actions/checkout@v3
|
||||
- name: set up JDK 11
|
||||
uses: actions/setup-java@v2
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '11'
|
||||
distribution: 'temurin'
|
||||
cache: gradle
|
||||
|
||||
- name: Generate temporary keystore
|
||||
run: keytool -genkey -v -storetype pkcs12 -keystore store.p12 -storepass android -alias android -keyalg RSA -keysize 2048 -validity 10000 -dname CN=CI
|
||||
- name: Write retro.properties
|
||||
run: |
|
||||
cat >retro.properties <<EOF
|
||||
storeFile=$PWD/store.p12
|
||||
keyAlias=android
|
||||
storePassword=android
|
||||
keyPassword=android
|
||||
EOF
|
||||
- uses: gradle/gradle-build-action@v2
|
||||
- name: Build with Gradle
|
||||
run: ./gradlew build
|
||||
|
|
|
@ -6,6 +6,7 @@ apply plugin: 'kotlin-parcelize'
|
|||
|
||||
android {
|
||||
compileSdk 32
|
||||
namespace "code.name.monkey.retromusic"
|
||||
|
||||
defaultConfig {
|
||||
minSdk 21
|
||||
|
@ -13,29 +14,33 @@ android {
|
|||
|
||||
vectorDrawables.useSupportLibrary = true
|
||||
|
||||
applicationId "code.name.monkey.retromusic"
|
||||
applicationId namespace
|
||||
versionCode 10597
|
||||
versionName '6.0.2-beta'
|
||||
|
||||
buildConfigField("String", "GOOGLE_PLAY_LICENSING_KEY", "\"${getProperty(getProperties('../public.properties'), 'GOOGLE_PLAY_LICENSE_KEY')}\"")
|
||||
}
|
||||
signingConfigs {
|
||||
release {
|
||||
Properties properties = getProperties('retro.properties')
|
||||
storeFile file(getProperty(properties, 'storeFile'))
|
||||
keyAlias getProperty(properties, 'keyAlias')
|
||||
storePassword getProperty(properties, 'storePassword')
|
||||
keyPassword getProperty(properties, 'keyPassword')
|
||||
def signingProperties = getProperties('retro.properties')
|
||||
def releaseSigning
|
||||
if (signingProperties != null) {
|
||||
releaseSigning = signingConfigs.create("release") {
|
||||
storeFile file(getProperty(signingProperties, 'storeFile'))
|
||||
keyAlias getProperty(signingProperties, 'keyAlias')
|
||||
storePassword getProperty(signingProperties, 'storePassword')
|
||||
keyPassword getProperty(signingProperties, 'keyPassword')
|
||||
}
|
||||
} else {
|
||||
releaseSigning = signingConfigs.debug
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
shrinkResources true
|
||||
minifyEnabled true
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
signingConfig signingConfigs.release
|
||||
signingConfig releaseSigning
|
||||
}
|
||||
debug {
|
||||
signingConfig releaseSigning
|
||||
applicationIdSuffix '.debug'
|
||||
versionNameSuffix ' DEBUG'
|
||||
}
|
||||
|
@ -50,7 +55,7 @@ android {
|
|||
}
|
||||
}
|
||||
|
||||
buildFeatures{
|
||||
buildFeatures {
|
||||
viewBinding true
|
||||
}
|
||||
packagingOptions {
|
||||
|
@ -75,16 +80,18 @@ android {
|
|||
}
|
||||
|
||||
def getProperties(String fileName) {
|
||||
final Properties properties = new Properties()
|
||||
Properties properties = new Properties()
|
||||
def file = rootProject.file(fileName)
|
||||
if (file.exists()) {
|
||||
file.withInputStream { stream -> properties.load(stream) }
|
||||
} else {
|
||||
properties = null
|
||||
}
|
||||
return properties
|
||||
}
|
||||
|
||||
static def getProperty(Properties properties, String name) {
|
||||
return properties.getProperty(name) ?: "$name missing"
|
||||
return properties?.getProperty(name) ?: "$name missing"
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
@ -137,11 +144,7 @@ dependencies {
|
|||
|
||||
implementation 'com.afollestad:material-cab:2.0.1'
|
||||
|
||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
||||
|
||||
def kotlin_coroutines_version = '1.6.3'
|
||||
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlin_coroutines_version"
|
||||
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlin_coroutines_version"
|
||||
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4"
|
||||
|
||||
def koin_version = '3.2.0'
|
||||
implementation "io.insert-koin:koin-core:$koin_version"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="code.name.monkey.retromusic">
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<uses-permission
|
||||
android:name="android.permission.BLUETOOTH"
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
package="code.name.monkey.retromusic">
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<uses-permission android:name="com.android.vending.BILLING" />
|
||||
|
||||
|
|
1
appthemehelper/.gitignore
vendored
1
appthemehelper/.gitignore
vendored
|
@ -1 +0,0 @@
|
|||
/build
|
|
@ -2,6 +2,7 @@ apply plugin: 'com.android.library'
|
|||
apply plugin: 'kotlin-android'
|
||||
android {
|
||||
compileSdk 32
|
||||
namespace "code.name.monkey.appthemehelper"
|
||||
|
||||
defaultConfig {
|
||||
minSdk 21
|
||||
|
@ -26,6 +27,4 @@ dependencies {
|
|||
implementation "androidx.appcompat:appcompat:$appcompat_version"
|
||||
implementation "com.google.android.material:material:$mdc_version"
|
||||
implementation "androidx.preference:preference-ktx:$preference_version"
|
||||
|
||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
|
||||
}
|
||||
|
|
|
@ -1 +1 @@
|
|||
<manifest package="code.name.monkey.appthemehelper" />
|
||||
<manifest />
|
||||
|
|
20
build.gradle
20
build.gradle
|
@ -2,9 +2,8 @@
|
|||
|
||||
buildscript {
|
||||
ext {
|
||||
kotlin_version = '1.7.0'
|
||||
lifecycle_version='2.5.0-rc02'
|
||||
navigation_version = '2.5.0-rc02'
|
||||
lifecycle_version='2.5.0'
|
||||
navigation_version = '2.5.0'
|
||||
mdc_version = '1.7.0-alpha02'
|
||||
preference_version = '1.2.0'
|
||||
appcompat_version = '1.4.2'
|
||||
|
@ -17,13 +16,26 @@ buildscript {
|
|||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.2.1'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.10"
|
||||
classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigation_version"
|
||||
}
|
||||
}
|
||||
plugins {
|
||||
id "com.github.ben-manes.versions" version "0.42.0"
|
||||
}
|
||||
|
||||
def isNonStable = { String version ->
|
||||
def stableKeyword = ['RELEASE', 'FINAL', 'GA'].any { it -> version.toUpperCase().contains(it) }
|
||||
def regex = /^[0-9,.v-]+(-r)?$/
|
||||
return !stableKeyword && !(version ==~ regex)
|
||||
}
|
||||
|
||||
tasks.named("dependencyUpdates").configure {
|
||||
rejectVersionIf {
|
||||
isNonStable(it.candidate.version)
|
||||
}
|
||||
}
|
||||
|
||||
task clean(type: Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
3
gradle/wrapper/gradle-wrapper.properties
vendored
3
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,5 @@
|
|||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionSha256Sum=b586e04868a22fd817c8971330fec37e298f3242eb85c374181b12d637f80302
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
|
6
gradlew
vendored
6
gradlew
vendored
|
@ -205,6 +205,12 @@ set -- \
|
|||
org.gradle.wrapper.GradleWrapperMain \
|
||||
"$@"
|
||||
|
||||
# Stop when "xargs" is not available.
|
||||
if ! command -v xargs >/dev/null 2>&1
|
||||
then
|
||||
die "xargs is not available"
|
||||
fi
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
|
|
14
gradlew.bat
vendored
14
gradlew.bat
vendored
|
@ -14,7 +14,7 @@
|
|||
@rem limitations under the License.
|
||||
@rem
|
||||
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@if "%DEBUG%"=="" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
|
@ -25,7 +25,7 @@
|
|||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
if "%DIRNAME%"=="" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
|
@ -40,7 +40,7 @@ if defined JAVA_HOME goto findJavaFromJavaHome
|
|||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto execute
|
||||
if %ERRORLEVEL% equ 0 goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
@ -75,13 +75,15 @@ set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
|||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
if %ERRORLEVEL% equ 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
|
||||
set EXIT_CODE=%ERRORLEVEL%
|
||||
if %EXIT_CODE% equ 0 set EXIT_CODE=1
|
||||
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
|
||||
exit /b %EXIT_CODE%
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue