Reputation: 2723
My android application using Kotlin is throwing this exception when I try to Run 'app' in the emulator o in my cellphone. When I build my project it runs well, with no errors.
I am using:
org.gradle.internal.exceptions.LocationAwareException: buildOutput.apkData must not be null
at org.gradle.initialization.exception.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:99)
at org.gradle.initialization.exception.DefaultExceptionAnalyser.collectFailures(DefaultExceptionAnalyser.java:65)
at org.gradle.initialization.exception.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:39)
at org.gradle.initialization.exception.StackTraceSanitizingExceptionAnalyser.transform(StackTraceSanitizingExceptionAnalyser.java:29)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:194)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:141)
...
Caused by: java.lang.IllegalStateException: buildOutput.apkData must not be null
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:103)
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:67)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:174)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:691)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:721)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:712)
...
Upvotes: 270
Views: 80915
Reputation: 405
In my case, the path was pointing to e: drive and other solutions didn't work for me. I did:
c:
driveIt solved the problem
Upvotes: 0
Reputation: 428
enter code here
If your using different build variants, Select the specific folder to generate signin apk file. When you are trying to generate signin apk flow, you can change the path. For me, this worked.
Upvotes: 0
Reputation: 12708
For Android Studio 3.5 & 3.6 Update (APK signed issue)
Step 1: I have resolved this issue by modifying the Destination Folder location.
Before
c:\user\folder\project\app
After
c:\user\folder\project\apk
For Android Studio
3.4
Update.
Step 1: After update Android Studio 3.4 you need to add all the dependency that used in your module or library in your app-level build.gradle
.
Step 2: Clean Project(Build > Clean Project)
Step 3: Rebuild Project(Build > Rebuild Project)
Now, Your Project will compile Perfectly.
Upvotes: 162
Reputation: 2383
FOR Android Studio 3.5 | 3.6
debug builds finish without any error. Creating a signed .apk leads to the same error
buildOutput.apkData must not be null
the Simple solution that I found is. During the signing of the apk after entering the signing credentials when you navigate to the next screen then it will ask for the destination folder just change the default path.
Let's assume the current destination path is
c:\user\folder\project\app
change it to
c:\user\folder\project\
then it will generate the signed apk successfully.
Upvotes: 165
Reputation: 1000
AS 4.0.1 (installed via snap)
Ubuntu 18.04 lts
configuring builds via build variant.
Combinations of invalidate cache / build / clean etc didnt help on their own, the only thing that helped was to switch build the active build variant back to armDebug
and clean / rebuild after that.
Once I switched back to the desired variant I could build correctly.
Upvotes: 0
Reputation: 4277
The solution :-
1- Build -> Clean Project
didn't help
2-Build -> Make Project
didn't help
3- restart android studio didn't help
4- Manually remove Build folder from app
and project
didn't help
the only solution for me was to remove all old builds from destination folder
Upvotes: 3
Reputation: 1146
I have android studio 3.5.1 . For me below steps are worked
Upvotes: 2
Reputation: 2474
Usually this issue happen on updating android Studio V3.4 to V3.5.
Try to delete debug/output.json
and release/output.json
files.
Then Try these steps:
Step 1: Clean Project(Build > Clean Project)
Step 2: Rebuild Project(Build > Rebuild Project)
Upvotes: 2
Reputation: 720
Generate Signed APK for debug, and then you can generate signed APK for release.
Upvotes: 1
Reputation: 189
Manually delete all the exiting build variant folder as well build folder in project folder worked for me.
Upvotes: 2
Reputation: 1037
1- Delete all generated app bundles (.aab) and APKs for all variants.
2- Delete the build folder
3- clean project
Upvotes: 1
Reputation: 7220
Just change the Apk release/debug location.
EX:
/home/sanaebadi/Desktop
after change :
/home/sanaebadi/apk
Upvotes: 4
Reputation: 2013
I tried above multiple solutions but nothing has happened then I found this this and worked for me
deleting debug/output.json and release/output.json solved my problem
Now I am able to generate apk
Upvotes: 9
Reputation: 133
the only solution that works for me is using in my root gradle
classpath 'com.android.tools.build:gradle:3.3.0'
what i've tried : - clear all build folder manually - invalidate cache but none of these is work
PS: i'm using android studio 3.5 btw
Update :
just like @Vishrut Mavani, changing the destination folder of your release version is work
Upvotes: 3
Reputation: 11
I was also annoyed by the same bug. But changing my Signed apk destination from c/users/project/app to c/users/project worked for me.
Upvotes: 1
Reputation: 221
This issue happens after update my Android studio v3.4 to v3.5 Now, it is working fine
I fixed this issue by deleting debug/output.json and release/output.json files
Android Studio 3.5 compilesdkVersion 28
apk generating working
Upvotes: 1
Reputation: 31
All the solutions didn't work with me
In my case from AndroidStudio 3.4+ update to 3.5.
And finally I solve it by modify 'Destination Folder' to "app/build/outputs/apk"
detail pic
Upvotes: 3
Reputation: 127
All the solutions didn't work with me
Android Studio V 3.5
Android gradle plugin V 3.4.2
Gradle Version V 5.1.1
Upvotes: 9
Reputation: 738
The solution for me was to delete all files and folders from the apk output folder.
I had this problem when creating a signed apk for a "production" flavor and the output.json
in the "feature" output folder causes the problem -> Android Studio 3.6 Canary 7
showed me the correct error message.
It is also working now for AS 3.5 stable with Gradle Plugin 3.5.0.
Upvotes: 3
Reputation: 3003
I've tried all solutions and non of them helped! finally after many trying, I figured it out, just follow the tips:
yourProject/app/
MYAPP_RELEASE_STORE_FILE=KEYSTROK_NAME
MYAPP_RELEASE_KEY_ALIAS=KEY_ALIAS
MYAPP_RELEASE_STORE_PASSWORD=R_PASS
MYAPP_RELEASE_KEY_PASSWORD=K_PASS
android.enableR8=true
app level build.gradle (inside android):
signingConfigs{
release{
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
configurations {
cleanedAnnotations
compile.exclude group: 'org.jetbrains' , module:'annotations'
}
release {
manifestPlaceholders = [analytics_deactivated: "false"]
minifyEnabled true
signingConfig signingConfigs.release
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
mac: ./gradlew clean assemble_YOUR_FAVOR_Release
win: gradlew clean assemble_YOUR_FAVOR_Release
where _YOUR_FAVOR_
is your optional favor, if you are not using any favor, just simply use assembleRelease
instead of assemble_YOUR_FAVOR_Release
Upvotes: 1
Reputation: 188
I've tried many things to solve the issue, but nothing helped. I get this error when trying to generate a signed apk.
Downgrading to older versions of Android Studio helped (3.4.2) worked, however this is not the solution.
The 'Clean Project' function in AS does not clean the place where your generated apk is created and there is one file that may be blocking the whole procedure: output.json
Try removing output.json from .../app/projectname/release/output.json
Upvotes: 7
Reputation: 2318
This issue is happens usually when you are running multiple android studio window with different projects.
The solution is
please ref screen shot attached
Upvotes: 4
Reputation: 126563
Updating to Android Studio 3.4.?, i get the message
Cause: buildOutput.apkData must not be null
looking for an answer i found the procedure:
Build
-> Clean Project
but it doesn´t worked, i know that this procedure will delete the content into the /build
directory but for my experience it doesn´t work in all cases, so i tried the "raw" way, deleting the directory:
/app/build/
then i rebuild the project and it worked.
Upvotes: 18
Reputation: 617
Seems cleaning the project may resolve the issue, but for me it worked like this.
File->sync project with gradle files.
Upvotes: 0
Reputation: 6275
In my case build and launch project with different build configs was successful. But generating signed apk throws error Cause: buildOutput.apkData must not be null
on the other hand apk was generated and Build Output toggle view prints BUILD SUCCESSFUL
. Manual installation ends with message App not installed
. My fault was using compileSdkVersion 'android-P'
and after changing to compileSdkVersion 28
all goes well.
Upvotes: 1
Reputation: 12372
I was using Android Studio 3.5 beta 2 and I was having the exact same error but only on my release build. After trying every other solution I found, the only way I was able to compile again was to go back to Android Studio 3.4.
Upvotes: 5
Reputation: 3242
It works for me:
delete build folder from your project manually.
in terminal of android studio type this command
if windows user
gradlew clean build
if linux user
./gradlew clean build
Upvotes: 4
Reputation: 1370
I was getting this error also, when trying to "Generate Signed APK" for my release version. I tried all of the above methods, unfortunately none worked for me.
What worked, was generating first the debug signed version of the app, and then generating again the release one.
I do not know what exactly changed or what the original problem was, but it worked. I hope it will help you too, because this error is quite annoying...
Upvotes: 53
Reputation: 7703
Cleaning the project didn't help me but manually deleting all the auto-generated build folders in all modules helped.
Upvotes: 23
Reputation: 12627
Click Build
-> Clean Project
Then Build
-> Make Project
Tested on gradle 3.5.0-alpha3, -alpha5 and 3.4.0 (project gradle)
classpath 'com.android.tools.build:gradle:3.5.0-alpha03'
Upvotes: 326