问题
Newbie here.....I made my first game with Godot game engine and exported to android successfully.....copied to my phone, it installs and runs fine. After a couple of hours, I made some changes and exported it again.....Again copied the apk but now when I try to install it, It does not complete installation. I tried to change the export settings so many times but it wont install. Please help.
Tried installing using adb and I get this:
C:\Users\Suhail\AppData\Local\Android\Sdk\platform-tools>adb install -r .apk
adb: failed to install .apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Package /data/app/vmdl1790547402.tmp/base.apk has no certificates at entry AndroidManifest.xml]
I am using jarsigner from oracle jdk 10(the latest version), and the debug keystore was created by the same jdk. My device runs on Android 8.0
I downloaded APK Editor on my phone.....chose my apk….. and tried different 'install location' settings inside it. It was by default on Auto (OS Make Decision)…..changed it to 'Internal only'......still did not install...….changed it to Default(Not Specified) and it installed and works fine. So does all this help my case any bit? I should not have to use APK Editor every time after exporting. Thanks for your time anyways
When I try one-click deploy in Godot:
Exception occurred while executing:
java.lang.IllegalArgumentException: Unknown package: org.godotengine.dangerousplane
at com.android.server.pm.Settings.getInstallerPackageNameLPr(Settings.java:5053)
at com.android.server.pm.PackageManagerService.getInstallerPackageName(PackageManagerService.java:27945)
at com.android.server.pm.PackageManagerService.isOrphaned(PackageManagerService.java:27951)
at com.android.server.pm.PackageManagerService.deletePackageVersioned(PackageManagerService.java:24078)
at com.android.server.pm.PackageInstallerService.uninstall(PackageInstallerService.java:996)
at com.android.server.pm.PackageManagerShellCommand.runUninstall(PackageManagerShellCommand.java:912)
at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:134)
at android.os.ShellCommand.exec(ShellCommand.java:96)
at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:28755)
at android.os.Binder.shellCommand(Binder.java:581)
at android.os.Binder.onTransact(Binder.java:481)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:3211)
at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:5111)
at android.os.Binder.execTransact(Binder.java:682)
Installing into device (please wait..): Samsung SM-A520F
running cmdline: "C:/Users/Suhail/AppData/Local/Android/Sdk/platform-tools/adb.exe" "-s" "5210d5c5e2787409" "install" "-r" "C:\Users\Suhail\AppData\Local\Temp/Godot/tmpexport.apk"
adb: failed to install C:\Users\Suhail\AppData\Local\Temp/Godot/tmpexport.apk: Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Package /data/app/vmdl2125437658.tmp/base.apk has no certificates at entry AndroidManifest.xml]
running cmdline: "C:/Users/Suhail/AppData/Local/Android/Sdk/platform-tools/adb.exe" "-s" "5210d5c5e2787409" "shell" "am" "start" "-a" "android.intent.action.MAIN" "-n" "org.godotengine.dangerousplane/org.godotengine.godot.Godot"
Starting: Intent { act=android.intent.action.MAIN cmp=org.godotengine.dangerousplane/org.godotengine.godot.Godot }
Error type 3
Error: Activity class {org.godotengine.dangerousplane/org.godotengine.godot.Godot} does not exist.
I just want to enjoy making games but this Android is giving me a headache.
回答1:
Go to /data/local/tmp in your your device folders Like this.
Delete the folder with your package name.
Rebuild/clean & build project.
Click on run
回答2:
This happened to me when i tried to install older version of apk while the latest version is still active.
Fix: Check the versions of the app and increment the version in your build.gradle file,
android {
..
..
defaultConfig {
..
..
versionCode <increment the version here>
..
..
}
..
}
Uninstall the older version and Install this version upgraded apk -or- This upgraded apk will get installed on top of any old
回答3:
It happen to me recently and i could not find the app folder inside /data/local/tmp.
i solve this by
- build apk
- transfer apk to phone and install from there
- uninstall the app on phone
- try run back from android studio
回答4:
I have faced the same issue trying to install an application on Android emulator with insufficient free space on the internal phone memory. After uninstalling of a couple other apps this error have been disappeared.
回答5:
after spending some hours i found the solution as follows:
- Run uninstallAll from Gradle app > Tasks > install > uninstallAll (Check the picture)
- Then install on to device. (Problem Remains)
- Then Uninstall & install from Android Studio. Solved.
回答6:
I deleted the build folder and rebuild the project again. After rebuilding the project, the apk was installed easily.
回答7:
If the above steps don't work, you can also try this:-
switch to "guest user" in your mobile device and search if old version of the app is available. If it is available, uninstall it.
Sometimes, even after uninstalling the app from the device, it's still remain installed in the guest session of the device.
This might work.
回答8:
I found the solution I discovered that
The phone memory is full and you should free up some memory space
回答9:
Solution 1:
In my case I encountered this error after following:
1. I have created a copy of source folder.
2. The original folder was lying there itself.
3. when I opened this folder as android project and tried to run the app, it threw this msg.
4. I simply changed the original folder name and new folder's name to original. The error was gone.
Solution 2:
Import project from current folder as new.
来源:https://stackoverflow.com/questions/52060284/android-app-not-installed