Failure [INSTALL_FAILED_DEXOPT] with Android Studio 0.8.1 - android

When I try to debug my app I am getting this error: Failure [INSTALL_FAILED_DEXOPT]
I am using Android Studio 0.8.1.
This is the log when I am trying to install and debug the app.
Installing <mypackage>
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/<mypackage>"
pkg: /data/local/tmp/<mypackage>
Failure [INSTALL_FAILED_DEXOPT]
Now it happens with all apps in my IDE, with all my real and virtual devices.
Logcat:
07-09 01:34:53.895 585-609/? I/PackageManager﹕ Running dexopt on: mypackage
07-09 01:34:53.915 17728-17728/? W/dalvikvm﹕ DexOptZ: zip archive '/data/app/mypackage-1.apk' does not include classes.dex
07-09 01:34:53.915 177-177/? W/installd﹕ DexInv: --- END '/data/app/mypackage-1.apk' --- status=0xff00, process failed
07-09 01:34:53.915 177-177/? E/installd﹕ dexopt in='/data/app/mypackage.apk' out='/data/dalvik-cache/data#app#mypackage-1.apk#classes.dex' res=65280
07-09 01:34:53.915 585-609/? W/PackageManager﹕ Couldn't delete native library directory /data/app-lib/mypackage

In my case this error appeared when i enabled again Instant Run. By disabling it dissapeared.

Solved invalidating the cache and deleting the .AndroidStudioBeta folder
To invalidate the cache use in Android Studio: File -> Invalidate Caches and restart

I faced the same problem. I have done the following steps to fix it
Android studio -> Build -> Clean Project
Android studio -> Build -> Rebuild Project

Use ProGuard to optimize your code.

Related

How to resolve gradle timeout waiting to lock file on MacOS m1?

I'm using Android Studio 2020.3.1 Patch 4(at 01-19-2022), Gradle 7.0.2. Java 11 Kotlin 1.6.10, mac Pro 16 m1 arm64(2021)
I'm new in macOS, jumped from Ubuntu, and found issues. I'm working with different projects and all time when I'm trying to switch to another one, I have the next error:
Gradle could not start your build.
Could not create service of type ResourceSnapshotterCacheService using
GradleUserHomeServices.createResourceSnapshotterCacheService(). Timeout waiting to lock file hash cache
It sometimes happens when I'm trying to run or sync the same project.
Solution as find ~/.gradle -type f -name "*.lock" -delete not useful because I run it all time when I complete changes on sdk project and test it on another one. Relevant solutions like kill not useful too
I hope, somebody has a solution for that. Thank you :)
Error text:
Gradle could not start your build.
Could not create service of type ResourceSnapshotterCacheService using GradleUserHomeServices.createResourceSnapshotterCacheService().
Timeout waiting to lock file hash cache (/Users/{user}/.gradle/caches/7.0.2/fileHashes). It is currently in use by another Gradle instance.
Owner PID: 73387
Our PID: 73419
Owner Operation:
Our operation:
Lock file: /Users/{user}/.gradle/caches/7.0.2/fileHashes/fileHashes.lock

Failed build Project after change directory to external storage; Timeout waiting to lock Java compile cache (/.gradle/7.0.2/javaCompile)

I have an issue when building project after created a new project in different volumes in Mac Os.
This what error said :
Could not create service of type DefaultGeneralCompileCaches using GradleScopeCompileServices.createGeneralCompileCaches().
> Timeout waiting to lock Java compile cache (/Volumes/SDMICRO/ANDROID/AwPlayerTes/.gradle/7.0.2/javaCompile). It is currently in use by another Gradle instance.
Owner PID: unknown
Our PID: 2394
Owner Operation: unknown
Our operation:
Lock file: /Volumes/SDMICRO/ANDROID/AwPlayerTes/.gradle/7.0.2/javaCompile/javaCompile.lock
Actually this is not my true directory in development project. But i have no choices because of run out of space. But this project are failure build. I have tried some solution like this. But none of them are works, FYI i use Mac and Android Studio Archtic Fox.
Please someone help me
please try to delete the Lock file, and then rebuild the project.
I encoutered the same problem and already solved it.

Can we debug the APK with ASAN active on Android Studio?

My project is a simple game with native C++ code and Java, which uses cmake to compile C/C++ code. I'm using address sanitizer to check my the code. I follow the instruction here
My OS is windows 10 64bit.
However, when I press debug on Android Studio, I got the message as
2020-03-19 13:50:56.946 5152-5152/? E/logwrapper: executing /data/app/com.indie.haiphan.Breakout-ZFFz_f8ETleajrgP6rg9gw==/lib/arm64/wrap.sh failed: No such file or directory
2020-03-19 13:50:56.946 5151-5151/? I/wrap.sh: executing /data/app/com.indie.haiphan.Breakout-ZFFz_f8ETleajrgP6rg9gw==/lib/arm64/wrap.sh failed: No such file or directory
2020-03-19 13:50:56.956 5151-5151/? I/wrap.sh: wrap.sh terminated by exit(255)
2020-03-19 13:50:56.957 873-873/? W/Zygote: Error reading pid from wrapped process, child may have died
I checked on my APK (with Analyze APK of Android Studio) the wrap.sh exist.
So my question is I can't debug with wrap.sh inside the APK?
Thanks
You probably have BOM or an extra carriage return at the end of the first line of your wrap.sh. Which is possible in windows.
To fix it you can use dos2unix tool.
See this: https://unix.stackexchange.com/a/27067/197738

java.lang.IllegalArgumentException: Error: Failed to parse APK file:

I have search stockoverflow and google with no luck. I recently migrated my app to androidx, after a lot of effort I was able to fix all the build fails. but now I am getting the following error when the app is installing on the emulator or the device. any help will be highly appreciated.
I have tried the following:
invalidate caches/restart
clean build and rebuild project
uninstalled app from the device
restarted my pc
Exception occurred while executing:
java.lang.IllegalArgumentException: Error: Failed to parse APK file: /data/local/tmp/...
at com.android.server.pm.PackageManagerShellCommand.setParamsSize(PackageManagerShellCommand.java:338)
at com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:906)
at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:158)
at android.os.ShellCommand.exec(ShellCommand.java:103)
at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:21328)
at android.os.Binder.shellCommand(Binder.java:634)
at android.os.Binder.onTransact(Binder.java:532)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:2821)
at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:3856)
at android.os.Binder.execTransact(Binder.java:731)
Caused by: android.content.pm.PackageParser$PackageParserException: Failed to parse /data/local/tmp/...
at android.content.pm.PackageParser.parseApkLiteInner(PackageParser.java:1590)
at android.content.pm.PackageParser.parseApkLite(PackageParser.java:1575)
at com.android.server.pm.PackageManagerShellCommand.setParamsSize(PackageManagerShellCommand.java:331)
... 9 more
$ adb shell pm uninstall ...
Unknown failure (at android.os.Binder.execTransact(Binder.java:731))
Error while Installing APK
Delete the previous app-release.apk file from the android folder:
\app\build\outputs\apk\release
Then clear all data from the emulator. Finally, rebuild the application.
Clean -> Rebuild -> and try to check both v1 and v2 while generating apk file
You should drop the cache on your mobile.
for example:
1- open your windows terminal on your computer
2 - enter the command >adb shell
you should be insite on your mobile
3 - enter to the tmp/appium_cache/ folder with >cd data/local/tmp/appium_cache
4 - write the command >ls to see all the elements that there is insite of that folder
5 - drop all that elements with the command >rm filename
hope to help you
just delete build folder and run again
android/app/build

Jenkins unable to locate files on my computer

when ever I try to build my android project on jenkins it fails by saying :
Started by user anonymous
Building in workspace /home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2
[mysteryshopper_version2] $ ant -Dlabel=trial1-9 clean debug
Buildfile: /home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml
BUILD FAILED
/home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml:90: Cannot find /home/tanzeelrana/android-sdk-linux/tools/ant/build.xml imported from /home/tanzeelrana/git/eventmatrix-cordova-app/mysteryshopper_version2/build.xml
Total time: 0 seconds
Build step 'Invoke Ant' marked build as failure
Finished: FAILURE
on line 90 in my build.xml file I have a tag with the following in it :
import file="/home/tanzeelrana/android-sdk-linux/tools/ant/build.xml"
does anyone know why it is unable to locate this file ? the file exist at the exact path ....
Jenkins usually runs with its own user (jenkins),
so it is probably an issue of permissions.
Try printing the current user from within your Jenkins job.
EDIT:
See here about running Jenkins as a daemon -
it also shows how to set it to run as a different user than 'jenkins':
Installing Jenkins as a Unix daemon

Categories

Resources