mirror of
https://github.com/hmalik144/EasyCC_Master.git
synced 2026-01-31 02:41:47 +00:00
upgraded dependencies to be compatible with android_33
This commit is contained in:
@@ -7,8 +7,71 @@ version: 2.1
|
|||||||
# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects.
|
# Orbs are reusable packages of CircleCI configuration that you may share across projects, enabling you to create encapsulated, parameterized commands, jobs, and executors that can be used across multiple projects.
|
||||||
# See: https://circleci.com/docs/2.0/orb-intro/
|
# See: https://circleci.com/docs/2.0/orb-intro/
|
||||||
orbs:
|
orbs:
|
||||||
android: circleci/android@1.0.3
|
android: circleci/android@2.3.0
|
||||||
|
|
||||||
|
commands:
|
||||||
|
setup_repo:
|
||||||
|
description: checkout repo and android dependencies
|
||||||
|
steps:
|
||||||
|
- checkout
|
||||||
|
- run:
|
||||||
|
name: Give gradle permissions
|
||||||
|
command: |
|
||||||
|
sudo chmod +x ./gradlew
|
||||||
|
- android/restore-gradle-cache
|
||||||
|
run_tests:
|
||||||
|
description: run unit tests
|
||||||
|
steps:
|
||||||
|
# The next step will run the unit tests
|
||||||
|
- run:
|
||||||
|
name: Run Tests
|
||||||
|
command: bundle exec fastlane unit_test
|
||||||
|
- store_artifacts:
|
||||||
|
path: app/build/reports
|
||||||
|
destination: reports
|
||||||
|
- store_test_results:
|
||||||
|
path: app/build/test-results
|
||||||
|
run_ui_tests:
|
||||||
|
description: run tests for flavour specified
|
||||||
|
steps:
|
||||||
|
- android/start-emulator-and-run-tests:
|
||||||
|
post-emulator-launch-assemble-command: ./gradlew installDebugAndroid
|
||||||
|
test-command: ./gradlew connectedDebugAndroidTest --continue
|
||||||
|
system-image: system-images;android-26;google_apis;x86
|
||||||
|
# store screenshots for failed ui tests
|
||||||
|
- when:
|
||||||
|
condition: on_fail
|
||||||
|
steps:
|
||||||
|
- store_artifacts:
|
||||||
|
path: app/build/outputs/connected_android_test_additional_output/debugAndroidTest/connected
|
||||||
|
destination: connected_android_test
|
||||||
|
# store test reports
|
||||||
|
- store_artifacts:
|
||||||
|
path: app/build/reports/androidTests/connected
|
||||||
|
destination: reports
|
||||||
|
- store_test_results:
|
||||||
|
path: app/build/outputs/androidTest-results/connected
|
||||||
|
deploy_to_play_store:
|
||||||
|
description: deploy to playstore based on flavour
|
||||||
|
parameters:
|
||||||
|
flavour:
|
||||||
|
type: string
|
||||||
|
default: "AtlasWeather"
|
||||||
|
steps:
|
||||||
|
# The next step will run the unit tests
|
||||||
|
- android/decode-keystore:
|
||||||
|
keystore-location: "./app/keystore.jks"
|
||||||
|
- run:
|
||||||
|
name: Setup playstore key
|
||||||
|
command: |
|
||||||
|
echo "$GOOGLE_PLAY_KEY" > "google-play-key.json"
|
||||||
|
- run:
|
||||||
|
name: Run fastlane command to deploy to playstore
|
||||||
|
command: |
|
||||||
|
pwd
|
||||||
|
bundle exec fastlane deploy
|
||||||
|
- store_test_results:
|
||||||
|
path: fastlane/report.xml
|
||||||
# Define a job to be invoked later in a workflow.
|
# Define a job to be invoked later in a workflow.
|
||||||
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
|
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
|
||||||
jobs:
|
jobs:
|
||||||
@@ -18,36 +81,53 @@ jobs:
|
|||||||
# See: https://circleci.com/docs/2.0/executor-types/
|
# See: https://circleci.com/docs/2.0/executor-types/
|
||||||
executor:
|
executor:
|
||||||
name: android/android-machine
|
name: android/android-machine
|
||||||
|
tag: 2023.05.1
|
||||||
# Add steps to the job
|
# Add steps to the job
|
||||||
# See: https://circleci.com/docs/2.0/configuration-reference/#steps
|
# See: https://circleci.com/docs/2.0/configuration-reference/#steps
|
||||||
steps:
|
steps:
|
||||||
- checkout
|
- setup_repo
|
||||||
- restore_cache:
|
- run_tests
|
||||||
key: jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}
|
run_instrumentation_test:
|
||||||
- run:
|
# These next lines define the Android machine image executor.
|
||||||
name: Chmod permissions
|
# See: https://circleci.com/docs/2.0/executor-types/
|
||||||
command: sudo chmod +x ./gradlew
|
executor:
|
||||||
- run:
|
name: android/android-machine
|
||||||
name: Download Dependencies
|
tag: 2023.05.1
|
||||||
command: ./gradlew androidDependencies
|
# Add steps to the job
|
||||||
- save_cache:
|
# See: https://circleci.com/docs/2.0/configuration-reference/#steps
|
||||||
paths:
|
steps:
|
||||||
- ~/.gradle
|
- setup_repo
|
||||||
key: jars-{{ checksum "build.gradle" }}-{{ checksum "app/build.gradle" }}
|
- run_ui_tests
|
||||||
- run:
|
deploy-to-playstore:
|
||||||
name: Run Tests
|
docker:
|
||||||
command: ./gradlew lint test
|
- image: cimg/android:2023.07-browsers
|
||||||
- store_artifacts:
|
auth:
|
||||||
path: app/build/reports
|
username: ${DOCKER_USERNAME}
|
||||||
destination: reports
|
password: ${DOCKER_PASSWORD}
|
||||||
- store_test_results:
|
steps:
|
||||||
path: app/build/test-results
|
- setup_repo
|
||||||
|
- deploy_to_play_store
|
||||||
|
|
||||||
# Invoke jobs via workflows
|
# Invoke jobs via workflows
|
||||||
# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
|
# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
|
||||||
workflows:
|
workflows:
|
||||||
sample: # This is the name of the workflow, feel free to change it to better match your workflow.
|
version: 2
|
||||||
# Inside the workflow, you define the jobs you want to run.
|
build-release-mono:
|
||||||
jobs:
|
jobs:
|
||||||
- build-and-test
|
- build-and-test:
|
||||||
|
context: appttude
|
||||||
|
- run_instrumentation_test:
|
||||||
|
context: appttude
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only:
|
||||||
|
- master
|
||||||
|
- '^deploy.*'
|
||||||
|
- deploy-to-playstore:
|
||||||
|
context: appttude
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
only:
|
||||||
|
- '^deploy.*'
|
||||||
|
requires:
|
||||||
|
- run_instrumentation_test
|
||||||
2
.idea/gradle.xml
generated
2
.idea/gradle.xml
generated
@@ -6,7 +6,7 @@
|
|||||||
<GradleProjectSettings>
|
<GradleProjectSettings>
|
||||||
<option name="testRunner" value="CHOOSE_PER_TEST" />
|
<option name="testRunner" value="CHOOSE_PER_TEST" />
|
||||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||||
<option name="gradleJvm" value="jbr-17" />
|
<option name="gradleJvm" value="#JAVA_HOME" />
|
||||||
<option name="modules">
|
<option name="modules">
|
||||||
<set>
|
<set>
|
||||||
<option value="$PROJECT_DIR$" />
|
<option value="$PROJECT_DIR$" />
|
||||||
|
|||||||
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@@ -45,7 +45,7 @@
|
|||||||
</value>
|
</value>
|
||||||
</option>
|
</option>
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="21" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectType">
|
<component name="ProjectType">
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ plugins {
|
|||||||
id 'com.android.application'
|
id 'com.android.application'
|
||||||
id 'org.jetbrains.kotlin.android'
|
id 'org.jetbrains.kotlin.android'
|
||||||
id 'com.google.dagger.hilt.android'
|
id 'com.google.dagger.hilt.android'
|
||||||
id 'kotlin-kapt'
|
id 'com.google.devtools.ksp'
|
||||||
}
|
}
|
||||||
|
|
||||||
Properties properties = new Properties()
|
Properties properties = new Properties()
|
||||||
@@ -18,8 +18,8 @@ android {
|
|||||||
applicationId "com.appttude.h_mal.easycc"
|
applicationId "com.appttude.h_mal.easycc"
|
||||||
minSdkVersion MIN_SDK_VERSION
|
minSdkVersion MIN_SDK_VERSION
|
||||||
targetSdkVersion TARGET_SDK_VERSION
|
targetSdkVersion TARGET_SDK_VERSION
|
||||||
versionCode 5
|
versionCode 12
|
||||||
versionName "4.1"
|
versionName "7.0.0"
|
||||||
|
|
||||||
testInstrumentationRunner "com.appttude.h_mal.easycc.application.TestRunner"
|
testInstrumentationRunner "com.appttude.h_mal.easycc.application.TestRunner"
|
||||||
}
|
}
|
||||||
@@ -33,6 +33,7 @@ android {
|
|||||||
}
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
|
signingConfig signingConfigs.release
|
||||||
minifyEnabled false
|
minifyEnabled false
|
||||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||||
}
|
}
|
||||||
@@ -47,13 +48,14 @@ android {
|
|||||||
sourceCompatibility JavaVersion.VERSION_17
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_17
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
kotlinOptions {
|
|
||||||
jvmTarget = '17'
|
|
||||||
}
|
|
||||||
buildFeatures {
|
buildFeatures {
|
||||||
viewBinding true
|
viewBinding true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
kotlin {
|
||||||
|
jvmToolchain(17)
|
||||||
|
}
|
||||||
|
|
||||||
// java {
|
// java {
|
||||||
// toolchain {
|
// toolchain {
|
||||||
// languageVersion.set(JavaLanguageVersion.of(21))
|
// languageVersion.set(JavaLanguageVersion.of(21))
|
||||||
@@ -92,9 +94,9 @@ dependencies {
|
|||||||
|
|
||||||
// Hilt dependency injection
|
// Hilt dependency injection
|
||||||
implementation "com.google.dagger:hilt-android:$HILT_VERSION"
|
implementation "com.google.dagger:hilt-android:$HILT_VERSION"
|
||||||
kapt "com.google.dagger:hilt-compiler:$HILT_VERSION"
|
ksp "com.google.dagger:hilt-compiler:$HILT_VERSION"
|
||||||
androidTestImplementation "com.google.dagger:hilt-android-testing:$HILT_VERSION"
|
androidTestImplementation "com.google.dagger:hilt-android-testing:$HILT_VERSION"
|
||||||
kaptAndroidTest "com.google.dagger:hilt-android-compiler:$HILT_VERSION"
|
kspAndroidTest "com.google.dagger:hilt-android-compiler:$HILT_VERSION"
|
||||||
|
|
||||||
//mockito and livedata testing
|
//mockito and livedata testing
|
||||||
testImplementation "org.mockito:mockito-core:$MOKITO_CORE_VERSION"
|
testImplementation "org.mockito:mockito-core:$MOKITO_CORE_VERSION"
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
buildscript {
|
buildscript {
|
||||||
ext {
|
ext {
|
||||||
agp_version = '8.1.0'
|
agp_version = "$GRADLE_PLUGIN_VERSION"
|
||||||
}
|
}
|
||||||
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
plugins {
|
plugins {
|
||||||
id 'com.android.application' version "$GRADLE_PLUGIN_VERSION" apply false
|
id 'com.android.application' version "$GRADLE_PLUGIN_VERSION" apply false
|
||||||
id 'com.android.library' version "$GRADLE_PLUGIN_VERSION" apply false
|
id 'com.android.library' version "$GRADLE_PLUGIN_VERSION" apply false
|
||||||
id 'org.jetbrains.kotlin.android' version "$KOTLIN_VERSION" apply false
|
id 'org.jetbrains.kotlin.android' version "$KOTLIN_VERSION" apply false
|
||||||
|
id 'com.google.devtools.ksp' version "$KOTLIN_VERSION-1.0.29"
|
||||||
id 'com.google.dagger.hilt.android' version "$HILT_VERSION" apply false
|
id 'com.google.dagger.hilt.android' version "$HILT_VERSION" apply false
|
||||||
id 'com.autonomousapps.dependency-analysis' version "$GRADLE_ANALYZE_VERSION"
|
id 'com.autonomousapps.dependency-analysis' version "$GRADLE_ANALYZE_VERSION"
|
||||||
}
|
}
|
||||||
|
|||||||
2
fastlane/Appfile
Normal file
2
fastlane/Appfile
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
json_key_file("google-play-key.json") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one
|
||||||
|
package_name("com.appttude.h_mal.easycc") # e.g. com.krausefx.app
|
||||||
44
fastlane/Fastfile
Normal file
44
fastlane/Fastfile
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
# This file contains the fastlane.tools configuration
|
||||||
|
# You can find the documentation at https://docs.fastlane.tools
|
||||||
|
#
|
||||||
|
# For a list of all available actions, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/actions
|
||||||
|
#
|
||||||
|
# For a list of all available plugins, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/plugins/available-plugins
|
||||||
|
#
|
||||||
|
|
||||||
|
# Uncomment the line if you want fastlane to automatically update itself
|
||||||
|
# update_fastlane
|
||||||
|
|
||||||
|
default_platform(:android)
|
||||||
|
|
||||||
|
platform :android do
|
||||||
|
desc "Runs all unit test"
|
||||||
|
lane :unit_test do
|
||||||
|
gradle(tasks: "lint test")
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Runs all instrumentation tests"
|
||||||
|
lane :instrumentation_test do
|
||||||
|
gradle(task: "app:connectedAndroidTest")
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Submit a new Beta Build to Crashlytics Beta"
|
||||||
|
lane :beta do
|
||||||
|
gradle(task: "clean assembleRelease")
|
||||||
|
# crashlytics
|
||||||
|
|
||||||
|
# sh "your_script.sh"
|
||||||
|
# You can also use other beta testing services here
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Deploy a new version to the Google Play"
|
||||||
|
lane :deploy do
|
||||||
|
increment_version_code
|
||||||
|
gradle(task: "clean assembleRelease")
|
||||||
|
upload_to_play_store
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -53,15 +53,15 @@ GSON = 2.10.1
|
|||||||
GUAVA = 33.2.1-android
|
GUAVA = 33.2.1-android
|
||||||
ANDROID_LIBRARY = 8.5.0
|
ANDROID_LIBRARY = 8.5.0
|
||||||
ANDROID_APPLICATION = 8.5.0
|
ANDROID_APPLICATION = 8.5.0
|
||||||
GRADLE_PLUGIN_VERSION = 8.1.0
|
GRADLE_PLUGIN_VERSION = 8.9.1
|
||||||
KOTLIN_VERSION = 1.9.20
|
KOTLIN_VERSION = 2.1.0
|
||||||
KOTLIN_GRADLE_PLUGIN = 1.6.21
|
KOTLIN_GRADLE_PLUGIN = 1.6.21
|
||||||
GRADLE_ANALYZE_VERSION = 2.0.0
|
GRADLE_ANALYZE_VERSION = 2.0.0
|
||||||
KOTLINX_COROUTINES_RX2 = 1.9.0
|
KOTLINX_COROUTINES_RX2 = 1.9.0
|
||||||
HILT_VERSION = 2.48
|
HILT_VERSION = 2.56
|
||||||
|
|
||||||
# Android configuration
|
# Android configuration
|
||||||
TARGET_SDK_VERSION = 33
|
TARGET_SDK_VERSION = 35
|
||||||
MIN_SDK_VERSION = 21
|
MIN_SDK_VERSION = 21
|
||||||
|
|
||||||
# Gradle parameters
|
# Gradle parameters
|
||||||
|
|||||||
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,6 @@
|
|||||||
#Thu May 15 19:21:24 BST 2025
|
#Thu May 22 01:40:03 BST 2025
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|||||||
Reference in New Issue
Block a user