Jump to content

corneliusdavid

Members
  • Content Count

    417
  • Joined

  • Last visited

  • Days Won

    6

Posts posted by corneliusdavid


  1. 7 hours ago, Rollo62 said:

    A complete clearing of the SDK's in SdkManager and folders in Delphi, and a new addition to the SDK-Manager with Update local cache helped with that.

    I've tried that. I removed the iOS platform from Delphi, deleted the folders, did a total clean of the project (and also tried a brand new project), re-added the platform which re-added the SDK folders...  Still got same linker error.

     

    7 hours ago, Rollo62 said:

    CanIUse: Monterey

     

    Nope :classic_sad:

    So this is a problem with Monterey? Doesn't Delphi import the libraries and frameworks from Xcode? I can build a bare-bones Xcode project on Monterey to my iPhone. 


  2. I have the following:

    • Delphi 11 on Windows 10 and Windows 11
    • Mac Mini with macOS Monterey 12.0.1 on a 3 GHz Intel Core i5
    • Platform Assistant Server vr. 13.0.12.0
    • iPad and iPhone both running iOS 15.1

     

    I've had problems in the linker process trying to get even the simplest bare-bones app to build for iOS. I have no problem with Android or MacOS--it's just iOS. At first, I had an error finding the /System/Library/PrivateFrameworks directory. Looking through the SDK Manager for iPhoneOS 15.0, I found a the Remote Path with that entry and removed it--since it didn't exist on the mace where I found other framework folders. Now I get the following error:

     

    [DCC Error] E2597 ld: file not found: /System/Library/PrivateFrameworks/DocumentManager.framework/DocumentManager for architecture arm64

    I cannot figure out why it tries to link that file and why, if it expects it, that directory does not exist on the Mac--like I mentioned, other "framework" folders exist. I've removed and re-added the iOS platform looked through the .dproj, and refreshed cached SDK files.  I've got this problem on two different computers and have run out of ideas--and patience.

     

    Anyone have any suggestions?


  3. 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

  4. 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.


  5. 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.


  6. 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?


  7. I read an article years ago about how office workers complained of the slow speed of elevators in a tall building, especially at 8:00 in the morning when everyone was arriving for work. Without changing anything with the elevators at all, the building owners simply installed big mirrors in the lobby and the complaints nearly stopped.

     

    A lot of times, it's just a distraction that is needed or visual activity which gives the impatient user a feeling like there's something going on and significantly reduces the stress of waiting.

    • Like 1

  8. On a more serious note, I often use a ListBox or something and show the types of things that are being loaded which are taking time, such as opening datasets or connecting to a remote resource. Not only does it inform the user of what is happening but also might show (visually) where the bottlenecks are when there's a pause in the scrolling list of activities.

    • Like 2

  9. 6 hours ago, Uwe Raabe said:

    It happens only when there already are build groups defined in the project group

    Not for me. I had never used Build Groups before, opened a project group, clicked the Build Groups button and saw the Project pane go blank.

     

    That was last night. Tried it again this morning and it works fine. Defined a Build Group, compiled, closed down Delphi 11, brought it back up, reopened the Build Group--still see it.

     

    That was weird but at least it works again.


  10. 16 minutes ago, Mike Torrettinni said:

    a TList variable points to a reserved space in memory (4 bytes?), but not initialized

    No, a TList is similar to the dynamic array with no elements in this case, it's just declared but doesn't point to anything yet until the Create constructor is called, THEN it points to the allocated memory for the TList. Even though TList, at that point, doesn't have any items, it still has other properties like Count which is initialized at Create to 0. The dynamic array isn't a class, in other words, it doesn't have other properties, such as Count, which is why you have to use the Length() function.


  11. So what I would suggest is either try out Uwe's code above or look at the GExperts code (it's open source) to figure out how they do it. Also, since you're specifically wanting to use the three components generated by the REST Debugger, you could compare the components it creates with the values in the paste buffer and do a little parsing to set the values for those specific components.


  12. To expand on what Uwe said, an array declaration allocates space for the variable and creates it when it's declared, much like an integer or string. Changing it's length sort-of redeclares it.

     

    This is in contrast to the TList<T> where the declaration doesn't allocate space for the variable (instantiate it) so you have to actually call its Create constructor. Before it's "created" then, it's nil.

    • Like 1
×