Im importing this old ArduDroid project (https://github.com/xgxzatx/ArduDroid) into Android Studio 1.5.1. At first I got an unrecoverable error due to the ActionBarSherlock library and Android Studio wouldn't even import the project. I followed a post that suggested commenting out the call in project.properties for that library and then importing, so I did and the project imported successfully into Android Studio. Then I downloaded the ActionBarSherlock folder and put that into my project folder so it is recognized, which it is.
Now I've gotten quite a few errors asking for a different SDK and build tools. So far I've tried SDK 19 and the default 22 which I guess installed with Android Studio. The problem seems to be that the ActionBarSherlock seems to be set for SDK 19 but the project seems to be set at a different SDK. I also believe it has something to do with ActionBarSherlock only compiling as far up as SDK 19.
Currently these are my settings:
Ive installed SDK's:
22
19
15
AndroidProject
AndroidManifest.xml>>>min:15, target:15
build.gradle>>>>>>>>>>compile:15, buildTools:22.0.1, min:15, target:15
ActionBarSherlock
AndroidManifest.xml>>>min:15, target:15
build.gradle>>>>>>>>>>compile:19, buildTools:19.1.0
project.properties>>>>target=android-15
Now I'm getting:
Error retrieving parent for item: No resource found that matches the given name 'Theme.Sherlock'
Ok, I removed the entire project folder from my workspace and started over again:
Commented out this line in the project.properties using TextEdit:
android.library.reference.1=../../JakeWharton-ActionBarSherlock-e5c2d1c/library
Imported the project into Android Studio.
Noticed I have a Project build.gradle, Module build.gradle.
Did not paste the ActionBarSherlock folder into the project in Android Studio this time.
Added these lines to the Module build.gradle:
dependencies {
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0#aar'
compile 'com.android.support:support-v4:18.0.0'
}
Left Module build.gradle as:
compileSdkVersion 15
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.xgxzatx.ardudroid"
minSdkVersion 8
targetSdkVersion 15
}
Left AndroidManifest.xml with min=8 and target=15
However when I run the app on my phone I just get a blank screen with a Configuration tab and a Monitoring tab, but ArduDroid is supposed to have lots of buttons and sliders and a few text fields at the bottom, like this:
but what I get is like this:
So Im guessing this might have been a work in progress that the author never finished? Can anyone else run the project and confirm?
Related
I tried upgrading my app for supporting API 29, and it works when I just upgrade the compileSdkVersion and targetSdkVersion to 29. However, as soon as I change my buildTools Version to 29.0.2, I get Unresolved reference errors for my files that I know are right (The errors are in one of my user files, not an external library). I know that it is right because when I pull the same code (and branch) on my mac, it works perfectly with the 29.0.2 buildToolsVersion.
I tried a bunch of things based on other stackoverflow posts like checking my gradle version, kotlin plugins, etc.
As an example:
Android Studio 3.1: Erroneous unresolved references in editor
(Note that the difference between mine and the one shown in the link above is that there is no red highlights for any of those unresolved errors and the file does not have any red squiggly underline. I would not know that there was any error in the file without looking at the build output.)
Things I tried (that does not work):
Clean project and rebuild
Invalidating cache and restart
deleting .idea folder
Resyncing gradle files
Reinstalling android studio and cloning repo again
Placing "apply plugin: kotlin-android-extensions" in various places
Within my build.gradle, I have:
buildscript {
ext.versions = [
.
.
.
buildGradle : "3.5.0"
kotlin : "1.3.31"
kotlinGradlePlugin : "1.3.50"
kotlinReflect : "1.3.50"
kotlinStdLib : "1.3.50"
.
.
.
]
}
In my common.gradle, I have:
apply plugin: 'kotlin-android'
android {
compileSdkVersion 29
buildToolsVersion '29.0.2'
defaultConfig {
minSdkVersion 21
targetSdkVersion 29
.
.
.
}
}
Also note that unfortunately this project is not open-source, so I can't show too much of the code or the project. But it is a hybrid project (contains both kotlin and java code).
Java Version: 1.8
Kotlin JVM version: 1.6
Any suggestions on what I could try would be appreciated cause I am really stuck now (and could not find any difference in configs between mac and this one).
As an answer to myself, not exactly sure why this was happening, but I suspect it has something to do with one of the files being kotlin and the other one being java. I was trying to import java file into kotlin file as dependency, and this caused the unresolved errors. Not sure why it was not causing the same error with other machines and not sure why it was struggling only with this file, when I have other kotlin files that also import java files. My solution was to convert that java file to kotlin and everything worked fine after that.
I am getting the error: "Ambiguous method call" on initializing Toolbar using Android Studio 3.0 RC1. I have extended my Activity with AppCompatActivity and compiling my application using 'compileSdkVersion 26'.
Attaching a screenshot of the error.
If you recently updated your project to API, Try doing
File -> Invalidate Caches / Restart
then
File -> Sync Project with Gradle Files
this resolve for me.
Upgrade to appcompat 27 solved this for me
For me, it was the compileSdkVersion which was different than the support libraries used
You have
import android.support.v7.app.AppCompatActivity
import android.app.Activity
both in your code.
Remove import android.app.Activity as I can see, it's not required for you.
For me changing build tool version to 27.0.2 worked, given that all your other dependencies are API 27 as well.
buildToolsVersion '27.0.2'
I have recently upgraded to build tools version 27.0.2 and faced the same problem. But noticed that I had the compileSdk version set to 25. Changing compileSdk to 27 resolved the issue.
"File - Invalidate Caches / Restart" Solved my problem.
For me none of the given solutions worked, however I had this issue because I had both 25 and 27 android sdk installed on my computer. As soon as I removed the sdk 25, the problem disappeared.
This can suddenly appear when running a code analyzer like FindBugs-IDEA. A quick way to clear the warning is to temporarily change the buildToolsVersion in your app/build.gradle then change it back again.
For example, follow these steps:
Open your app/build.gradle file.
Change buildToolsVersion to '26.0.1' then sync project (press the 'Sync Now' button when it appears at the top)
Change the buildToolsVersion back to whatever you had before.
Press the 'Sync Now' button
This should clear the error.
Maybe you have difference between compileSdkVersion and targetSdkVersion
I ran into the same issue with Android Studio 3.0.0 build 171.4408382. Building via Gradle on the command line worked just fine, but the IDE presented me with the above mentioned error. I have tried to use API level 26 with appcompat v26.1.0 and API level 27 with appcompat v27.0.1, but neither combination worked.
My "solution" was to downgrade compileSdkVersion and targetSdkVersion to API level 25 and the appcompat library to version 25.4.0.
For all of the mentioned version combinations I used Gradle plugin v3.0.0 and the Android build tool v27.0.1.
In my case, I removed the constraint layout dependency in the build.gradle (app) file and it solved the issue.
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:25.1.0'
//implementation 'com.android.support.constraint:constraint-layout:2.0.4'
}
if answers does not resolve your problem , you can reset your android studio.
I solved with reset my android studio.
For reset: https://stackoverflow.com/a/19397632/3129822
First make sure that you have no transitive dependencies that are using older support libraries. Run the following command and make sure that no older support libraries are in use.
gradlew :app:dependencies
Make sure that your gradle file is updated with latest dependencies. eg: compileSdkVersion 27, targetSdkVersion 27, buildToolsVersion 27.0.3. etc. It would also benefit to make sure that non of your app flavors have been using a custom targetSdkVersion.
Ctrl + click on the findViewById method. It will show you the 2(perhaps more?) conflicting methods. In my case the conflict was between the findViewById method from API 23 and API 27. Therefore I had to remove the SDK and sources for Android version 23. Once I removed it and did Invalidate Caches/Restart it solved my problem.
My compileSDK version was lower than the targetSDK version so all I had to do was match them and sync project and the error was resolved.
Removing "Android Fast Networking" library solved my problem
I've had the same issue
Mine was related to the compileSdkVersion number from build.gradle app.
Changed to the latest and it worked for me.
Upgrading your targetSdkVersion or buildToolsVersion might resolve the problem.
No need to Invalidate Caches / Restart if this is a new project.
I was working with a new project and in gradle files did not have version numbers set in them, there was "N" across minsdkversion and targetsdkversion, changing to desired sdk version solved the problem
Upgrading both appcompat to 27 and compleSdkVersion to 30 works for me.Just upgrade those in gradle build.
Just upgrade your minSdkVersion 26 Its works for me.
When we create a Android project with minimum SDK lower than 16 and after that we want to add new activity using 'New/Activity/Gallery' we see the indication 'Selected activity templates has minimum SDK level of 16'. So we need to modify 'minSdkVersion' in build.gradle file which leads us to 'Sync Now' process.
If we must build and maintain an app with min SDK lower then 16, we have to change 'constraint layout' to another layout. However when we do this the constraint layout dependency still remains in the dependencies section in the 'build.gradle' file. This caused me the error.
In summary, this is applicable when we need to build a android project with minimum SDK version lower than 16.
When we add a new activity, we change the minSdkVersion in the build.gradle above '16' then click of 'Sync Now'. After that we can choose one of activity template and create a new activity.
Now we change 'constraint layout' in the xml file corresponds to the new activity we created to for example 'linear layout' or 'relative layout'
At this point we make sure delete the dependency which refers to constraint layout in the 'build.gradle' and then click the 'Sync Now' again.
I think the best practice to avoid this error message is to make Android project with minimum SDK 16 and above.
These steps worked for me on Android Studio for Mac (Arctic Fox v11):
In 'build.gradle' file (for module), change appcompat implementation version to something invalid (e.g. Change 'com.android.support:appcompat-v7:25.1.0' to 'com.android.support:appcompat-v7:25')
Click 'Gradle sync now' and let it finish. This should generate lots of errors
Correct the verison back to original (e.g. 'com.android.support:appcompat-v7:25.1.0'). Click 'Gradle sync now' and let it finish
Original issue with findViewId should disappear
I always use eclipse to build an android project. When I use the eclipse to start a new project, I can choose the compile version. But in Android Studio, I can only choose the min version when I start a new module. I tried to change the compileSdkVersion in build.gradle. But when I clean the project ,I got a lot of errors.Most of them are something like No resource found that matches the given name ....
Here is my build.gradle
compileSdkVersion 16
buildToolsVersion "23.0.1"`
So my question is :How can I assign the compile version when I start the new module at the first time just like what I always do in the eclipse ?
Open your project;
Choose menu item File->Project Structure, and click your modules (like MyApp), and you will find "Compile Sdk Version" in Properties tab.
I had my project working fine in Android Studio but then:
I upgraded to Windows 10
That broke my java install, but I have that
working as well now (removed everything then reinstalled)
I now also updaded to latest stable Android Studio
But when I try build my project now, I get 100+ errors in this:
W:\android-studio-projects\mycustomer\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\22.2.0\res\values-v21\values-v21.xml
Where each error/line is like this:
Error:(2) Error retrieving parent for item: No resource found that
matches the given name 'android:TextAppearance.Material.Inverse'.
...
Someone asked how my app/build.gradle looks like:
apply plugin: 'com.android.application'
android {
compileSdkVersion 'Google Inc.:Google APIs:17'
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "dk.company.app"
minSdkVersion 9
targetSdkVersion 17
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
repositories {
maven { url "https://jitpack.io" }
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.0'
compile 'com.google.android.gms:play-services:+'
compile 'com.github.PhilJay:MPAndroidChart:v2.0.8'
compile 'com.android.support:appcompat-v7:22.2.1'
}
I just inserted the 4rth line in dependencies
compile 'com.android.support:appcompat-v7:22.2.1'
However, it has never been necessary in the past though and inserting it has not fixed my problem. (Why is it suddenly necessary anyhow. Could I maybe remove the dependency - that would fix the issue as well?)
...
Something else that I find peculiar, but probably happens because the project never compiles correct, is that this code:
import dk.company.app.R;
always highlights "R" in red - i.e.cannot resolve symbol 'R'
However, my guess is that it never got as far as generating the file, but stopped when encountering the other appcompat compile errors
...
I can see there are some known similar problems to this:
https://code.google.com/p/android/issues/detail?id=183122
https://medium.com/#Wingnut/installing-android-studio-and-an-ensuing-rabbit-hole-ac3d9a0d3115
However, the solutions proposed. I have removed API 22 and API 23 all places in Sdk manager and file system I could fine. I have changed build tools and appcompa version to 21.1.2
Nothing worked sofar
There's a couple things you can do in attempt to solve this:
Clean project option in Build
Rebuild (not build) project option in Build
Invalidate caches / Restart option in File
Try these, it's a glitch with Android Studio where it doesn't compile everything sometimes.
The com.android.support:appcompat-v7:22.2.1 dependency requires you to compile your project with at least API Version 22 (5.1 Lolipop).
You're currently targeting and compiling using API Version 17 (4.2 Jelly Bean). You can still leave the targetSdkVersion as 17 (if you want) but you must compile with API Version 22+.
Try changing:
compileSdkVersion 'Google Inc.:Google APIs:17'
to:
compileSdkVersion 22
Note: You may also need to download the API Version 22 platform.
Edit: I see you've updated your question that you've attempted to use the v7:21.x.x appcompat library instead. This would require you compile using at least API Level 21 compileSdkVersion 21.
I have gotten this error quite a few times. I compiled a list in this answer of every way I've ever gotten it working again.
EDIT: Just thought of another one that is more likely to be relevant to what you're describing. If you had been compiling against SDK 17, and when you reinstalled Java you upgraded to Java 8, this may cause incompatibilities. I believe only SDKs greater than 20 can compile against Java 8. Also, moving from SDK 17 to 20+ may break your styles, which will cause your xml files to be invalid, which will prevent R from building. Look in res/values/styles and see if it's failing to find your style. If so, change it to a valid style for your new SDK, clean and build.
I'm following the Google I/O conference and just a week before they announced that Android Studio 0.8 is available for downloading. Before that I used 0.6 and I was developing an application. Now I'm having both 0.6 and 0.8 on my Ubuntu. I added all the update from SDK for Android Watch and TV and all the Material Design stuffs. And today when I opened my project in the 0.8 version, after a few updates of some things, I'm receiving an error
Error:Execution failed for task ':app:processDebugManifest'.
> Manifest merger failed : uses-sdk:minSdkVersion 8 cannot be smaller than version L declared in library com.android.support:appcompat-v7:21.0.0-rc1
If someone has any idea what is this all about - share please. I tried to pull my project from my repository in GitHub, but without any result. Thank you.
It looks like you have declared a dependency on version 21 of appcompat-v7 in your build.gradle.
At this time, the preview of the Android L support libraries only works with apps that declare the L preview as their min SDK.
Either revert to a previous version of the support library (I believe the latest is com.android.support:appcompat-v7:19.1.0) or update your project to support a minimum of 'L'.
just try this:
android {
android {
compileSdkVersion 20 //or whatever you want
buildToolsVersion '19.1.0'
defaultConfig {
minSdkVersion 14 //or whatever you want
targetSdkVersion 20 //or whatever you want
}
}
dependencies {
compile 'com.android.support:appcompat-v7:19.+'
}
}
and if you have another module in your project, check manifest files in those modules too.
I had a similar issue like that before. After I updated to 0.8.1, it showed an error below when compiling my previous projects.
"uses-sdk:minSdkVersion 8 cannot be smaller than version L declared in library com.android.support:appcompat-v7:21.0.0-rc1".
This is how I fixed it.
In your project, find build.gradle file in app folder and open it.
At dependencies section, change the value of compile 'com.android.support:appcompat-v7'. For example, in my case, it was compile 'com.android.support:appcompat-v7:+', and I changed it to compile 'com.android.support:appcompat-v7:20.+'. Of course, you could change it to compile 'com.android.support:appcompat-v7:19.+' if you like.
I hope it would help. Let me know if you are still stuck on it.
I had similar problems. Although I'm not sure exactly what caused the problem or which step fixed the issue, I did the following and ultimately got things working again:
I closed down Android Studio
I ran SDK Manager and and checked that everything was up to date. I have the following installed:
Android SDK tools Rev. 23
Android SDK Platform-tools Rev. 20
Android SDK Build-tools Rev. 20
Android L (API 20, L preview)
Android 4.4W (API 20)
Android 4.4.2 (API 19)
I restarted Android Studio and started a new (blank) project to test and ran it -> Success!
I found the process pretty finickity, so your mileage might vary. Let me know how you go.
I had the same error. I found the solution.
dependencies {
compile ('com.android.support:support-v13:20.0.0'){
force = true
}
compile ('com.android.support:support-v4:20.0.0'){
force = true
}
compile ('com.android.support:appcompat-v7:20.0.0'){
force = true
}
}
I think that instead of 20.0.0, you can specify a different version if you use less than 20 targetSdkVersion.
I had the same issue.
I made the following changes to the dependencies section in build.grade file located in the app folder.
'com.android.support:appcompat-v7:20.0.0' to 'com.android.support:appcompat-v7:20.+'