SQLcipher : Release a 64-bits version App Bundle for Google Play - android

I want to publish my Android mobile application which uses an encrypted SQLCipher database.
During deployment my release does not meet the obligation to provide a 64-bit version on Google Play.
I followed the prescriptions for Support 64-bit architectures but no results.
I need help please!
defaultConfig {
applicationId "com.mdc.droit"
minSdkVersion 14
targetSdkVersion 29
versionCode 3
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.sqlite:sqlite:2.1.0'
implementation 'com.google.android.gms:play-services-ads:17.2.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:2.0.1'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'nl.littlerobots.cupboard-tools:sqlcipher:0.3.1' //SQlCipher implementation HERE
}
Android Studio Analyze APK
Google Play Error

We added 64-bit support to SQLCipher for Android in February of 2017. You may need to update your dependencies, the latest version of SQLCipher for Android is 4.4.0.

Related

Assistance with android studio gradle

This is my first post but I need some help,
This is my error :
error: package android.support.design.widget does not exist
import android.support.design.widget.FloatingActionButton;
This is my gradle codes
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
buildToolsVersion "23.0.0"
defaultConfig {
applicationId "com.example.weatherviewerappeliasshahsamand"
minSdkVersion 23
targetSdkVersion 29
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:gridlayout-v7:28.0.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.13'
implementation 'com.google.android.material:material:1.2.0-alpha06'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
}
You have both support library and androidx library in your project...I think this must be issue.
You can use:
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
Instead of:
implementation 'com.android.support:appcompat-v7:28.0.0'
And you can replace your other support library codes and use androidx Library
You have migrated some of the dependencies to AndroidX but still some of the dependencies doesn't seems to match with android X .You will have to replace some of your dependencies to the latest version:
Replace
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:gridlayout-v7:28.0.0'
with
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.gridlayout:gridlayout:1.0.0'
Now as the error message please replace the widgets to androidx or Migrate by
Refactor > Migrate to AndroidX > Migrate

why upgrading firestore version to 17.1.0 makes a problem in the Multidex?

my app was working fine while i was using firestore version 11.8.0 but there was always a warning regarding the firestore version it asks me to upgrade the latest version 17.1.0
after upgrading the version,the application show errors, and the android studio keeps telling me
//Cannot fit requested classes in a single dex file. Try supplying a main-dexlist.
I don't know why is the version of firebase storage has to do with the Multidex?
here is my build gradle.
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.example.moham.trial"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.google.firebase:firebase-auth:16.0.3'
implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.google.firebase:firebase-storage:16.0.1'
implementation 'com.google.firebase:firebase-firestore:17.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:recyclerview-v7:28.0.0-rc02'
implementation 'com.android.support:appcompat-v7:28.0.0-rc02'
implementation 'com.android.support:design:28.0.0-rc01'
implementation 'com.google.firebase:firebase-core:16.0.3'
implementation 'com.jakewharton:butterknife:8.8.1'
implementation 'com.android.support:cardview-v7:28.0.0-rc02'
implementation 'de.hdodenhof:circleimageview:2.2.0'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0'
}
apply plugin: 'com.google.gms.google-services'
Building an android app compiles the app into bytecode (executable code) in the form of a DEX file. The compiled bytecode files (DEX files) only support 64K (65,536) methods before having to split into DEX files.
Adding the firestore library adds a lot of methods and causes this limit to be exceeded and so multiDexEnabled true is required to allow it to split into multiple files.
You can find more information at: https://developer.android.com/studio/build/multidex

Android: Failed to resolve: com.android.support:appcompat-v7:28.1.1

Error : Sync failed. Unresolved Android dependencies. Failed to resolve: com.android.support:appcompat-v7:28.1.1
Config:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.ercess.ercess_app1"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:appcompat-v7:28.1.1'
implementation 'com.squareup.picasso:picasso:2.71828'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
How to resolve this?
Replace
implementation 'com.android.support:appcompat-v7:28.1.1
with
implementation 'com.android.support:appcompat-v7:28.0.0-rc01'
Currently, the most recent available release for appCompat is 28.0.0-rc01, you are trying to pull an unavailable version of appcompat library.
Root cause: The version 28.1.1 is not exist.
Solution: Use the latest stable version
implementation 'com.android.support:appcompat-v7:27.1.1'
or use latest unstable version
implementation 'com.android.support:appcompat-v7:28.0.0-rc01'
Many answers already on this one but I feel like noone explaines how to keep it up to date, just how to fix this specific version. So here it is
The com.android.support:appcompat version must match the compileSdkVersion
It is preferable to use stable versions if you release to production
Look on the android website to find the lastest stable version that correspond to your compile version (even is this link gets broken, the info will be available somewhere on the official website)
Example, as of today (end of january 2019), the lastest stable support library version is 28.0.0 (according to android website), so the correct implementation is
implementation 'com.android.support:appcompat-v7:28.0.0'
you'd have to use api "com.android.support:appcompat-v7:27.1.1" -
or the later (future) api "androidx.appcompat:appcompat:1.0.2"
from androidx.
using "release candidates" and "alpha versions" is discouraged, because these are not well tested.
just see the official documentation ...it recommends 27.1.1.
I solved this by trial and error and using some of the answers above.
I changed the appcompat to a lower version "com.android.support:appcompat-v7:27.1.0"
along with changing
compileSdkVersion 27
and
targetSdkVersion 27
I'm still getting warnings but Picasso should now run.
You need also add: implementation 'com.android.support:support-v4:28.0.0' in your gradle file like this:
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
and this is a full implementation:
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:cardview-v7:28.0.0'
Please add these below dependencies to solve the issue, try it:
implementation 'com.android.support:support-v4:27.1.1'
implementation 'com.android.support:support-v13:27.1.1'
implementation 'com.android.support:design:27.1.1'
also change the version of AppCompat as:
implementation 'com.android.support:appcompat-v7:27.1.1'
AppCompat Sometimes doesn't work alone. Adding these might solve your issue.
replace
implementation 'com.android.support:appcompat-v7:28.1.1'
with
implementation 'com.android.support:appcompat-v7:28.0.0-rc02'

Android Studio - Gradle compilation failed

My compile is failing for some reason, but earlier it was working just fine.
This is the error I'm getting when trying to compile the project:
Program type already present: android.support.design.widget.CoordinatorLayout$Behavior
Message{kind=ERROR, text=Program type already present: android.support.design.widget.CoordinatorLayout$Behavior, sources=[Unknown source file], tool name=Optional.of(D8)}
(Build) app.iml :
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "appjoe.wordpress.com.testdemo"
minSdkVersion 23
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:support-v4:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.android.support:design:26.1.0'
// picasso and volley
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'eu.the4thfloor.volley:com.android.volley:2015.05.28'
// retrofit
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
// rxjava & rxandroid
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.16'
// glide
implementation 'com.github.bumptech.glide:glide:4.7.1'
// android views
implementation 'com.android.support:cardview-v7:26.1.0'
implementation 'com.android.support:recyclerview-v7:26.1.0'
}
I'm also getting an error for the second dependency in the dependencies area saying:
All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 27.1.1, 27.1.0, 26.1.0. Examples include com.android.support:support-compat:27.1.1 and com.android.support:exifinterface:27.1.0 less... (Ctrl+1)
There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion).
This is because of in the dependency some libraries(other than support libraries) has used supported libraries version different than yours that's why you are getting this error. you have mixed support libraries dependencies version 26 and 27.
So, you need to use a matching support library which is version 27.1.1. Change your build.gradle to something like this:
apply plugin: 'com.android.application'
android {
compileSdkVersion 27 // use version 27
defaultConfig {
applicationId "appjoe.wordpress.com.testdemo"
minSdkVersion 23
targetSdkVersion 27 // targeting api version 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
implementation 'com.android.support:support-v4:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.android.support:design:27.1.1'
// picasso and volley
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'eu.the4thfloor.volley:com.android.volley:2015.05.28'
// retrofit
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
// rxjava & rxandroid
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
implementation 'io.reactivex.rxjava2:rxjava:2.1.16'
// glide
implementation 'com.github.bumptech.glide:glide:4.7.1'
// android views
implementation 'com.android.support:cardview-v7:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'
}
OR
Upgrade your libraries version to new version. Just hold cursor on each library. Android studio will tell you by Itself that this library has the new version available.

support libraries must use the exact same version specification [duplicate]

This question already has answers here:
All com.android.support libraries must use the exact same version specification
(54 answers)
Closed 5 years ago.
I have tried running my app using a specific activity, and I a continuous crash is taking place.
I have pinpointed an error that is to do with the appcompat version. However, I am unsure as to how to fix this error, i.e. get all my dependencies on the same version.
I was wondering if there is a quick fix to do this? And, if not, what are the steps to making sure that they are all on the correct/same version?
build.gradle (Module: app)
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "com.example.benchalmers.myapplication"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:support-v4:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
compile 'com.android.support:recyclerview-v7:26.1.0'
compile 'com.android.support:cardview-v7:26.1.0'
compile 'com.android.volley:volley:1.1.0'
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
}
This is the error that is being given to me:
All com.android.support libraries must use the exact same version
specification (mixing versions can lead to runtime crashes). Found
versions 27.0.2, 26.1.0. Examples include
com.android.support:support-compat:27.0.2 and
com.android.support:animated-vector-drawable:26.1.0 less... (⌘F1)
There are some combinations of libraries, or tools and libraries, that
are incompatible, or can lead to bugs. One such incompatibility is
compiling with a version of the Android support libraries that is not
the latest version (or in particular, a version lower than your
targetSdkVersion.)
Any help would be much appreciated. Thanks.
Update your dependencies like so:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.0.2'
implementation 'com.android.support:design:27.0.2'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:support-v4:27.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
compile 'com.android.support:recyclerview-v7:27.0.2'
compile 'com.android.support:cardview-v7:27.0.2'
compile 'com.android.volley:volley:1.1.0'
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
}
Like the error message says: There's a conflicting version of Support Libraries found in your project. What you need to do to "fix" it is then make sure your Support Library version is the same (and preferably latest available).
In order to ease this process going forward, you could also make your code look like this:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
def supportLibraryVersion = "27.0.2"
implementation "com.android.support:support-v4:$supportLibraryVersion"
implementation "com.android.support:design:$supportLibraryVersion"
implementation "com.android.support:support-v4:$supportLibraryVersion"
compile "com.android.support:recyclerview-v7:$supportLibraryVersion"
compile "com.android.support:cardview-v7:$supportLibraryVersion"
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
compile 'com.android.volley:volley:1.1.0'
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
}
Also, as suggested by Michael Dodd, in order to use Support Library version 27.0.2, you'd need to bump your compileSdkVersion too:
android {
...
compileSdkVersion 27
...
}

Categories

Resources