mirror of
https://github.com/cake-tech/cake_wallet.git
synced 2025-06-28 04:19:50 +00:00
* implement v3 backup system - Add new BackupServiceV3 with chunked backup support and checksums - Implement json-based metadata in backup system - Instead of binary file export a .zip file that user can open and see that it is a cake backup (should also prevent 3rd party software from corrupting binary data inside of the file, in case it doesn't checksum will fail, and user will know for sure that backup got corrupted) - Update flutter to 3.27.4 to use archive ^4.x.x (it offers in memory archive operations) * fix wallets not getting restored properly * prevent out of memory errors on files that are way too big during restore * Update lib/view_model/backup_view_model.dart [skip ci] * Update lib/core/backup_service.dart [skip ci] * Update lib/core/backup_service.dart --------- Co-authored-by: Omar Hatem <omarh.ismail1@gmail.com>
103 lines
2.8 KiB
Groovy
103 lines
2.8 KiB
Groovy
plugins {
|
|
id "com.android.application"
|
|
id "kotlin-android"
|
|
id "dev.flutter.flutter-gradle-plugin"
|
|
}
|
|
|
|
def localProperties = new Properties()
|
|
def localPropertiesFile = rootProject.file('local.properties')
|
|
if (localPropertiesFile.exists()) {
|
|
localPropertiesFile.withReader('UTF-8') { reader ->
|
|
localProperties.load(reader)
|
|
}
|
|
}
|
|
|
|
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
|
if (flutterVersionCode == null) {
|
|
flutterVersionCode = '1'
|
|
}
|
|
|
|
def flutterVersionName = localProperties.getProperty('flutter.versionName')
|
|
if (flutterVersionName == null) {
|
|
flutterVersionName = '1.0'
|
|
}
|
|
|
|
def keystoreProperties = new Properties()
|
|
def keystorePropertiesFile = rootProject.file('key.properties')
|
|
if (keystorePropertiesFile.exists()) {
|
|
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
|
|
}
|
|
|
|
def appProperties = new Properties()
|
|
def appPropertiesFile = rootProject.file('app.properties')
|
|
if (appPropertiesFile.exists()) {
|
|
appProperties.load(new FileInputStream(appPropertiesFile))
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion 35
|
|
buildToolsVersion "35.0.0"
|
|
|
|
lintOptions {
|
|
disable 'InvalidPackage'
|
|
}
|
|
|
|
namespace "com.cakewallet.cake_wallet"
|
|
|
|
defaultConfig {
|
|
applicationId appProperties['id']
|
|
minSdkVersion 24
|
|
targetSdkVersion 34
|
|
versionCode flutterVersionCode.toInteger()
|
|
versionName flutterVersionName
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
manifestPlaceholders = [APP_NAME: appProperties['name']]
|
|
|
|
externalNativeBuild {
|
|
cmake {
|
|
cppFlags "-std=c++11"
|
|
arguments '-DANDROID_STL=c++_shared', '-DBUILD_TESTING=OFF'
|
|
version "3.10.2"
|
|
}
|
|
}
|
|
}
|
|
|
|
signingConfigs {
|
|
release {
|
|
keyAlias keystoreProperties['keyAlias']
|
|
keyPassword keystoreProperties['keyPassword']
|
|
storeFile file(keystoreProperties['storeFile'])
|
|
storePassword keystoreProperties['storePassword']
|
|
}
|
|
}
|
|
buildTypes {
|
|
release {
|
|
signingConfig signingConfigs.release
|
|
|
|
shrinkResources false
|
|
minifyEnabled false
|
|
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
debug {
|
|
signingConfig signingConfigs.release
|
|
}
|
|
}
|
|
|
|
ndkVersion "27.0.12077973"
|
|
}
|
|
|
|
flutter {
|
|
source '../..'
|
|
}
|
|
|
|
dependencies {
|
|
testImplementation 'junit:junit:4.12'
|
|
androidTestImplementation 'androidx.test:runner:1.3.0'
|
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
|
|
}
|
|
configurations {
|
|
implementation.exclude module:'proto-google-common-protos'
|
|
implementation.exclude module:'protolite-well-known-types'
|
|
implementation.exclude module:'protobuf-javalite'
|
|
}
|