Jump to content

Dave Nottage

Members
  • Content Count

    1608
  • Joined

  • Last visited

  • Days Won

    36

Posts posted by Dave Nottage


  1. 9 hours ago, Cristian Peța said:

    I also had issues with iOS platform in the past and solution was to install MacOS platform too.

    I always install macOS support anyway, so had not noticed. I haven't seen the requirement anywhere (as yet), so someone might want to report the issue 😉

     


  2. dsymutil.exe should be in the bin folder of your Delphi install, e.g. C:\Program Files (x86)\Embarcadero\Studio\22.0\bin

     

    If it is not, then it seems your install of Delphi did not complete correctly, which may mean you need to reinstall. Less drastic is perhaps uninstall iOS support and reinstall it using Tools | Manage Platforms


  3. 3 hours ago, RokWeb said:

    If I understand correctly, the problem was solved by updating XCode to 15 Beta 6 and using the current version of the iOS SDK.

    If I understand correctly, the current beta of Xcode is relevant only to those developing for Vision OS -  it is otherwise the same as the released version.

    3 hours ago, RokWeb said:

    The exception occurs in the code section of the idGlobal.pas module

    Can you provide evidence that this is the case? Regardless, I'm not sure why Indy chooses to use its own function over the one in System.pas - the code for it is executed differently on iOS than on Windows.


  4. 1 hour ago, John van de Waeter said:

    Does NOT work in a TWebbrowser on Android.

    After a bit of experimenting and searching around, it appears it's currently not possible. Here is one link relating to the issue:

     

      https://bugs.chromium.org/p/chromium/issues/detail?id=669492

     

    I expect you'll need to implement photo taking in the app itself, and then when the user taps "Select Photo" or "Take A Photo" link in the TWebBrowser, they'll be able to select the image that has been taken.


  5. 29 minutes ago, grantful said:

    I have looked at the uses clause in the demo and I have the same  thing in mine.  I am sure i am not including something.

    Your project appears to include a folder in its search path that contains the file Macapi.ObjectiveC.pas, which by default is in the source\rtl\osx folder in the Delphi install, but perhaps you have a copy of the file elsewhere. The fact that it reports: Undeclared identifier: 'SObjCClassRegistrationFailed' means that there's a mismatch between the Macapi.ObjectiveC.pas it finds, and the System.RTL.Consts unit, which contains the missing identifier.


  6. 6 minutes ago, grantful said:

    here is the error  FShareSheet.SharedFileName is the undeclared identifier. 

     

    so the .sharedFileName is the issue.

     

    i am looking in the FMX.MediaLibrary.Actions and can not see anything about the shared file name.

    Where did you have the idea that SharedFileName was a property of TShowShareSheetAction? This class supports sharing only images and text.

     

    If you want to share a file, you may be interested in this: https://github.com/DelphiWorlds/Kastri/tree/master/Demos/ShareItems


  7. 47 minutes ago, tdalke said:

    Has this issue been resolved? (Delphi app crashing on iOS 17)

    No official fix as yet, however I have come up with the following workaround - Note: this has had no testing beyond a blank app:

     

    1. Copy FMX.Platform.iOS from source\fmx into your project folder.

     

    2. In the TApplicationDelegate.applicationDidFinishLaunchingWithOptions method towards the end, make the following change (i.e. add the one line of code indicated😞

        // Creating window
        WindowManager := PlatformCocoaTouch.WindowManager;
        WindowManager.Window := TFMXWindow.Create(MainScreen.bounds);
        WindowManager.RootViewController := TFMXViewController.Create;
        // *** iOS17 SDK crash issue - Add the following line: ***
        WindowManager.RootViewController.Super.init;
        WindowManager.NativeWindow.makeKeyAndVisible;

    Note also that this measure is needed only if you are building against the iOS 17 SDK - it is not required when building against earlier SDKs.

    • Like 2
    • Thanks 3

  8. 39 minutes ago, Hans♫ said:

    t's strange that we have not had any reports from iOS 17 users, and our own tests on iOS 17 also runs fine.

    The In-App purchase issue might have been occurring only on earlier betas. Chris has extreme users 😉

     

    • Like 1

  9. 36 minutes ago, Dave Nottage said:

    What happens if you run it via the debugger?

    Never mind - it seems debugging from Delphi is not possible for iOS 17 devices at the moment. I confirm that apps built against iOS 17 SDK crash on start. For now, you'll need to use an older SDK (e.g. iOS 16.4 SDK), if you had imported that earlier.

    • Like 1

  10. 2 hours ago, avesuvorov said:

    I'm creating a simple "Hello world" application. When opened on iPhone, the program closes.

    I changed the FMX.inAppPurchase.iOS.pas file on the advice of Chris Pim, but nothing helped

    If it's just a simple "Hello world", you will not need to modify FMX.inAppPurchase.iOS, since it won't be using it. 

     

    Does this happen if you start a completely blank project, and run that?


  11. The process on Android is to:

     

    Check the checkbox for Camera permission in the Uses Permissions of the Project Options

     

    Request the permission at runtime, e.g:

      PermissionsService.RequestPermissions(['android.permission.CAMERA'],
        procedure(const APermissions: TClassicStringDynArray; const AGrantResults: TClassicPermissionStatusDynArray)
        begin
          if AGrantResults[0] = TPermissionStatus.Granted then
            // Permission was granted
        end
      );

     

    • Like 2

  12. 19 hours ago, Marcelo Bernardi said:

    Remembering that this only happens if the device is running Android 13

    It's because changes are required to the FMX code, specifically in FMX.MediaLibrary.Android.pas. If you have a Delphi subscription, you would be able to take advantage of changes in the Yukon beta, as per this information.

×