Jump to content
corneliusdavid

Android project deployment messed up

Recommended Posts

I have two different, very simple, cross-platform projects I'm using for development testing, one works fine, the other used to but is now getting a strange error when I try to deploy it to my Android device:

Quote

 

Unable to create process: Performing Streamed Install adb: failed to stat
V:\DelphiVersionsMobile\bin\DelphiVersionsMobile.apk:

No such file or directory.

 

 

The project that deploys fine has the same base project filename as the folder in which it resides. The second project (the one with the problem), DelphiVersions, is one of several projects in a folder, each project's name is appended with the type of platform it's for. The folder name is V:\DelphiVersions and I have DelphiVersionsConsole, DelphiVersionsVCL, and DelphiVersionsMobile in that folder. The last one, of course, uses FireMonkey, and is deployed to Android and iOS.

 

I'm using Delphi 10.4 and had this working a few months ago but since Android 11 and API 30 was released I wanted to have more direct control over where and which SDK was installed and found this excellent blog that helped me get there. This also meant I switched to using OpenJDK and changed the location of the SDK and tools. Should still be good, right?

 

As I examined the project trying to figure this out, I deleted temporary files, even removed Android support from the project and re-added it, and checked a few other things. The only thing I can think of that is different where deployment is concerned, is that the DelphiVersions one has "Mobile" appended to the end of the project name and one of the build tools must assume the project name is the same as the folder name.

 

The obvious thing to try is rename the project to just DelphiVersions to match the folder name--I did that but it gave a similar error, this time with the path "V:\DelphiVersions\bin\DelphiVersions.apk" not found. So mismatched project name is not the source of the problem.

 

Another thing to note is that I have projects for several versions of Delphi in sub folders and for Delphi 10.4 it's in a "104Sydney" folder and it actually generates "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\bin\DelphiVersionsMobile.apk" (the file is actually where it should be!).  I also looked at the deployment file list and the manifest file--still no clue.

 

Why is the deployment process removing the first two sub-levels of folders in the filename?

Share this post


Link to post

Does a blank project deploy OK? What path do you have for the output folder of the project that is having problems?

Share this post


Link to post

The Output Directory for the project is blank for all targets, so it should just be going to the default folder--and indeed the .apk file is generated in the folder I would expect: V:\DelphiVersions\104Sydney\DelphiVersionsMobile\bin.

 

I added a new FM project to the project group and it deployed to my Android device and ran. I can't debug it because it gets an error: "tcp:64311: cannot resolve name: No address associated with hostname" but I can run without debugging--I had noticed that error with other Android projects as well. That's a separate problem but it bothers me and I'd like to get that resolved as well.

Share this post


Link to post

 

11 hours ago, corneliusdavid said:

I can't debug it because it gets an error: "tcp:64311: cannot resolve name: No address associated with hostname"

   What version of Android is on the device? If it's 8.0, you'll need to upgrade it to 8.1, if possible. Otherwise, it could be an issue with which NDK is being used: https://stackoverflow.com/questions/69238129/delphi-11-tcp64311-cannot-resolve-name-no-address-associated-with-hostname

Share this post


Link to post
4 hours ago, Dave Nottage said:

What version of Android is on the device?

I was testing on an old ZTE with Android 7.1.1. I switched over to my Google Pixel with Android 11 and can debug just fine now--thanks!

Share this post


Link to post

Back to the DelphiVersions project, I deleted all temporary files, even including the .dproj, .deployproj, and .res files and opened the project back up, reset some simple version info and rebuilt (still using Delphi 10.4). Now, it's not even getting to the deploy stage because it can't finish building the package, giving me this error: "Resource package cannot be an empty string (at 'src' with value '@drawable/splash_image')" and references the file, splash_image_def.xml.

 

But looking more carefully at Delphi build output, I think one of the SDK tools is configured incorrectly:

 

[PAClient Error] Error: E2312 Unable to execute '"C:\Users\Public\Documents\Embarcadero\Studio\AndroidSDK\build-tools\30.0.3\aapt.exe" package -f -M "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\AndroidManifest.xml" -F "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\bin\DelphiVersionsMobile-unsigned.apk" -I "C:\Users\Public\Documents\Embarcadero\Studio\AndroidSDK\platforms\android-30\android.jar" -S "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\res" -A "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\assets" "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\library" "V:\DelphiVersions\104Sydney\DelphiVersionsMobile\classes"' (Error 1)

 

Maybe I should reinstall Delphi 10.4's Android development.

Share this post


Link to post

I decided to move up to Delphi 11 and just use their default platform installer for Android. I also decided to retire the old Android ZTE phone. I'm able to compile, debug, and run both Android and iOS apps from Delphi 11 now.

 

I was still getting the weird error listed in my previous post for the DelphiVersions project though, even after deleting all temporary files and recompiling. Finally, I just renamed the project to DelphiVersionsMobileBroken, created a new blank mobile app, added the forms, removed the default form, set up the icons and version info--and it works!

 

Something was seriously amiss--but everything is back working now--and in Delphi 11. Whew!

  • Like 1

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×