Currently, my styles.xml file show something not properly. Theme.AppCompat.Light.NoActionBar cannot be resolve. I have restart android studio but it still not work. I tried Invalidate Caches/Restart, but it not work. It doesn't make my app crash, but why It occurs. Look below image:
This is my build.gradle file
import org.apache.tools.ant.taskdefs.condition.Os
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android {
compileSdkVersion 23
buildToolsVersion '25.0.0'
defaultConfig {
applicationId "xx.com.xxx.xxxx"
minSdkVersion 17
targetSdkVersion 23
versionCode 21
versionName "1.2.0"
renderscriptTargetApi 23
renderscriptSupportModeEnabled true
// Enabling multidex support.
multiDexEnabled true
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile('com.afollestad.material-dialogs:core:0.8.5.1#aar') {
transitive = true
}
compile('com.mikepenz:actionitembadge:3.0.2#aar') {
transitive = true
}
compile project(':blurringview')
compile 'com.android.support:support-v4:23.3.0'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:design:23.3.0'
compile 'com.android.support:cardview-v7:23.3.0'
compile 'com.android.support:recyclerview-v7:23.3.0'
compile 'com.google.android.gms:play-services-gcm:8.3.0'
compile 'com.android.support:palette-v7:23.3.0'
compile 'com.android.support:multidex:1.0.1'
compile 'com.wdullaer:materialdatetimepicker:1.5.1'
compile 'com.pnikosis:materialish-progress:1.5'
compile 'com.mikepenz:iconics:1.3.0#aar'
compile 'com.mikepenz.iconics:community-material-typeface:+#aar'
compile 'com.soundcloud.android:android-crop:1.0.0#aar'
compile 'org.apache.commons:commons-lang3:3.4'
...
}
...
}
Finally, here is my first solution. The error happen because gradle not work with the libraries which has lower version. It doesn't compile the external library appcompat-v7:23.3.0. What I do now is downgrade gradle plugin frorm 2.+ to 2.2.0 and rebuild project. It works again now.
This link show how to downgrade version gradle [Link].
It is not a good idea, thought, but It did saved my problem.
Any other ideas or comments to improve, welcome.
Exit Android studio.
Go to your project directory.
Something like this in my case( F -> Android -> YourProjectName -> .idea).
Delete libraries folder present in .idea folder.
Restart your Android Studio and your issue is resolved.
Related
Working on a project pulled from bitbucket. Whenever I'm trying to build the gradle, the following error shows.
Gradle sync failed: Illegal char at index 2: C\:\\Program Files (x86)\\Android\\android-sdk\analytics.settings
This project is working absolutely fine in other member's computer who pulled from the same repository. (one of them is actually the one who uploaded everything in the first place, works obviously fine in his system).
Now I am not able to understand the error message at all. I don't know what illegal character it's mentioning of.
Thank you in advance!
build.gradle(Project)
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.example"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
compile 'com.google.firebase:firebase-core:9.4.0'
compile 'com.google.firebase:firebase-auth:9.4.0'
compile 'com.google.firebase:firebase-messaging:9.4.0'
compile 'com.google.firebase:firebase-config:9.4.0'
compile 'com.google.firebase:firebase-invites:9.4.0'
compile 'com.google.firebase:firebase-ads:9.4.0'
compile 'com.google.android.gms:play-services-appindexing:9.4.0'
compile 'com.google.android.gms:play-services-auth:9.4.0'
compile 'com.vinaygaba:creditcardview:1.0.3'
compile 'com.squareup.retrofit2:retrofit:2.0.0'
compile 'com.squareup.retrofit2:converter-gson:2.0.0'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.squareup.okhttp3:logging-interceptor:3.2.0'
}
apply plugin: 'com.google.gms.google-services'
Edit
I tried deleting the project and tried checking out from version control again. But now it wont even open the project since gradle cant be built.
I tried both the options but it always shows the following error
Edit 2
Please note that my others projects are building fine. So the problem has to be with this particular project
I too faced the same issue and now its resolved.Check if you are using the latest sdk version or not and update it if not.After you update the sdk, also cross check if your system environment variables are located properly.Then restart the project.
I tried to add a CardView in my app so I added the following dependency in my gradle
compile 'com.android.support:cardview-v7:22.2.1'
I realised that an error is caused because I have given the wrong version number. After taking a look at the official google docs I came to know that Android Support Repository is used to hold appcompat libraries.
As you can see the Support repository that I have installed is version 33. But if I change my gradle to version 33 it is still showing error.
How can I check what version of AppCompatLibrary I have in android studio?
EDIT:
build.gradle file
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android {
compileSdkVersion 22
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.spintum.preexam"
minSdkVersion 19
targetSdkVersion 22
versionCode 1
versionName "1.0"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
mavenCentral()
}
dependencies {
// compile fileTree (dir:'libs',include:'achartengine-*.jar')
//compile fileTree('libs/achartengine-1.1.0.jar')
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:percent:22.2.0'
compile 'com.android.support:design:22.2.1'
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'com.android.support:support-v4:22.2.0'
compile 'com.android.support:cardview-v7:+'
//compile 'com.android.support:recyclerview-v7:22.2.+'
compile 'com.google.code.gson:gson:2.3.1'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.google.android.gms:play-services-auth:8.3.0'
compile 'com.google.android.gms:play-services-identity:8.3.0'
compile 'com.google.android.gms:play-services-plus:8.3.0'
compile 'com.google.android.gms:play-services-location:8.3.0'
compile 'com.android.support:multidex:1.0.0'
compile 'com.github.markushi:circlebutton:1.1'
compile 'com.facebook.android:facebook-android-sdk:4.0.0'
compile 'de.hdodenhof:circleimageview:2.1.0'
compile 'com.ToxicBakery.viewpager.transforms:view-pager-transforms:1.2.32#aar'
}
Check your SDK folder and see which is the highest existing number:
e.g
B:\android-sdk\extras\android\m2repository\com\android\support\appcompat-v7
There will be a folder for each installed version. At the time of writing, 24 is the latest version.
Update:
Now Google use their own Maven repository, this no longer works.
Instead, check this site for the available versions.
https://maven.google.com/
It is not about the installed version of the Android Support Repository.
The version that should be in the Gradle Build Files should be the number highest version corresponding to your
compileSdkVersion
in your AppLevel Gradle Build File.(by default it is the app module).
Example:
If you are using compileSdkVersion 23 , then you should check your following directory for the highest 23.x.x folder.
\ YOUR-SDK-PATH
\extras\android\m2repository\com\android\support\cardview-v7
Suppose that your highest number starting from 23 is 23.4.0 , then you should use this version number(23.4.0 replacing the 33.0.0) for your Gradle Build File(Not the verison of Android Support Repository Installed).
It means you have to use the Android Support Repository Libraries according to your compileSdkVersion.
The easist way is to use + which means the newest one (of the API level) on your machine, then you do not need to check the SDK folder anymore. e.g.,
compile 'com.android.support:appcompat-v7:21.+'
compile 'com.android.support:support-v4:21.+'
However, there is an warning void using 21.+ ....".
I am working on android studio from one year But i can't face this type of problem. What i am doing is adding a dependency of support library in app build.gradle and then sync the project.
Gradle build running is started in background and then after some time studio is automatically crashed. There is no error or logs are found for crashes. And if I removed the dependency from gradle it works properly. I also restarted the machine and having an latest update of studio but it can't fixed the problem. Thanks in advance for any help.
Here is my app level build.gradle file. I am adding compile 'com.android.support:design:22.2.0' library in my project
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId ""
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
compile 'com.google.code.gson:gson:2.4'
compile 'com.google.android.gms:play-services-base:8.4.0'
compile 'com.google.android.gms:play-services-maps:8.4.0'
compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'com.isseiaoki:simplecropview:1.0.9'
compile "com.mixpanel.android:mixpanel-android:4.8.0"
compile 'de.hdodenhof:circleimageview:2.0.0'
compile 'com.facebook.android:facebook-android-sdk:4.10.1'
}
apply plugin: 'com.google.gms.google-services'
I'm hoping someone might shed some light on this issue. I am trying to change the support library versions from:
compile 'com.android.support:support-annotations:23.1.0'
compile 'com.android.support:support-v4:23.1.0'
compile 'com.android.support:support-v13:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:cardview-v7:23.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
to
compile 'com.android.support:support-annotations:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:support-v13:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
What usually seems like a simple minor upgrade has caused me the entire day. Basically upon updating the gradle.build file, I sync -> clean, and there appears a bunch of Cannot Resolve Symbol errors appearing on the IDE for classes from the support library.
What's further interesting about this is that if I try to run the code on my phone through adb, despite AS showing up as "Cannot resolve symbol", it runs perfectly fine on my phone.
Among the things I've tried:
Clean / Rebuild
Invalidate cache / restart
Delete all the .iml files and the .idea folder
Reinstalling of Android Studio, reimport of project
Rebooting
Digging further into the build directory, they are similar in the sense that both
build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.1.0\jars\classes.jar
and
build\intermediates\exploded-aar\com.android.support\appcompat-v7\23.1.1\jars\classes.jar
were generated respectively. What's different is that in AS, for the previous version, the "classes.jar" can be opened in AS where as with the new version, they cannot be opened in AS.
I feel that I have pretty much exhausted all available options so if anyone can shed some light on how to resolve this, I would really much appreciate it.
My full gradle.build file:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.XXX"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.1.1"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(path: ':XXX', configuration: 'android-endpoints')
testCompile 'junit:junit:4.12'
compile 'com.google.code.gson:gson:2.4'
compile 'org.apache.commons:commons-lang3:3.4'
compile 'com.balysv:material-ripple:1.0.2'
compile 'net.sf.flexjson:flexjson:3.3'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.google.android.gms:play-services-ads:8.1.0'
compile 'com.google.android.gms:play-services-identity:8.1.0'
compile 'com.google.android.gms:play-services-gcm:8.1.0'
compile 'com.android.support:support-annotations:23.1.0'
compile 'com.android.support:support-v4:23.1.0'
compile 'com.android.support:support-v13:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:cardview-v7:23.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
}
I have finally solved:
First of all, I updated the gradle plugin.
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
Then just Build->Clean project and everything works again.
I think I have solved this problem guys. Go to the main module in your project, it's usually have the name app.
Then go to > Open Module Settings > in Properties change the Build Tools Version to 23.0.1.
Then to make sure open the build.gradle file, and change compileSDKVersion & buildToolsVersion to 23 and 23.0.1 respectively.
android {
compileSdkVersion 23
buildToolsVersion '23.0.1'
defaultConfig {
applicationId "id.web.twoh"
minSdkVersion 15
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
You should also make sure that all modules in your project have the compileSdkVersion and buildToolsVersion begin with 23, as you will use the 23th version of the support library.
I know it's late but I had a similar issue. It turned out that the issue was caused by the Data binding library. I had an error in the code that referenced in an invalid reference in the generated binding class. My layout file defined a webview with id webview but in the code I referenced it as webView. After correcting the error and cleaning and doing full rebuild Android Studio started recogninsing all the packages and seeing support libraries.
I had exactly the same problem, and to solve it I have just changed the BuildDebug Configuration spinner to MainActivity :
I solved my problem by changing the Run/Debug Configuration spinner to MainActivity (instead of app[androidDepedencies]) in the ToolBar...
I have changed my appcompat library from version v7:21 to v7:19.1
i have fixed all the related issue and i downgraded the target sdk from 21 to 19 and every things worked but when i try to build to device i get
No resource found error in app compact v7:21 which is located in
app/build/intermediates/exploded-aar/com.android.support/appcompat-v7/22.2.1/res/values-v21/values-v21.xml
i tried to clean the project my project and i used gradlew/clean with no success
my question if I'm using app compact v7:19 why i find app compact v7:21 in my exploded-arr folder?
this is my gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "19.1"
defaultConfig {
applicationId "appname"
minSdkVersion 17
targetSdkVersion 19
versionCode 1
versionName "1.0"
multiDexEnabled = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
preDexLibraries = false
}
}
allprojects {
repositories {
mavenCentral()
jcenter()
maven { url 'https://github.com/leonardocardoso/mvn-repo/raw/master/maven-deploy' }
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':bounceScroller')
compile project(':SwipeMenu')
compile project(':indicator')
compile project(':BetterSpinner')
compile 'com.android.support:appcompat-v7:19.1.0'
compile 'com.android.support:support-v4:19.1.0'
compile 'com.nineoldandroids:library:2.4.0'
compile 'com.daimajia.easing:library:1.0.1#aar'
compile 'com.daimajia.androidanimations:library:1.1.3#aar'
compile 'com.edmodo:cropper:1.0.1'
compile 'com.github.bumptech.glide:glide:3.6.1'
compile 'com.leocardz:aelv:1.1#aar'
compile 'com.google.android.gms:play-services:7.8.0'
compile 'com.google.android.gms:play-services-ads:7.8.0'
compile 'com.google.android.gms:play-services-identity:7.8.0'
compile 'com.google.android.gms:play-services-gcm:7.8.0'
compile 'com.android.support:multidex:1.0.0'
compile 'com.creativeelites:androidexternalfilewriter:1.4'
compile 'com.lifeofcoding:cacheutilslibrary:1.0.0#aar'
compile 'com.google.code.gson:gson:2.2.2'
}
Sometimes gradle doesn't do what you would like it to - such as remove unused cached files if they are not in use on the project. Of course, those might be useful later, so...
Just delete the "intermediaries" folder. It will be recreated on your next build, and your build will take longer the first time you run it, but the problem should go away. You're essentially deleting the cache.
You may have other cached files that you need to remove as well, but that depends on settings in your environment.
EDIT:
You can also try to clear the gradle cache and the intermediaries folder. See this reference on how to clear cache.
How to clear gradle cache?