Jump to content

Dave Nottage

Members
  • Content Count

    1609
  • Joined

  • Last visited

  • Days Won

    37

Posts posted by Dave Nottage


  1. 3 minutes ago, scamp said:

    So clearly the Delphi installer is not correctly/fully installing it.

    It's likely because you have an incompatible JDK present on the machine. This is a potential fix:

     

    1. Make sure JAVA_HOME environment variable is set to the Adoptium JDK:

    JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-11.0.15.10-hotspot

    2. Add missing build-tools by going to:

    C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.50491.5718\cmdline-tools\latest\bin

    In a command prompt and issue these commands:

    sdkmanager “build-tools;33.0.2”
    sdkmanager “platforms;android-33”

     

    • Like 5

  2. 20 minutes ago, PeterPanettone said:

    Sadly, Embarcadero did not contact the registered and confirmed participants to inform them that they were excluded.

    Exclusion happens when you attempt to join. GotoWebinar has a limit of 3000 attendees (Enterprise level). Once the limit has been reached, it refuses subsequent attempts to join.


  3. 10 hours ago, Vanar said:

    Problem solved!

    Good to hear

    10 hours ago, Vanar said:

    Do you think this is an original solution or a crutch?🙂

    Well, it's a solution, apparently? I assume whatever implementation you are using sends a local notification, which to my mind is unnecessary. I use Delphi's built-in FCM support, however even if the messages are not going via FCM, it should be a simple matter of subscribing to TPushRemoteNotificationMessage, e.g.:

      TMessageManager.DefaultManager.SubscribeToMessage(TPushRemoteNotificationMessage, PushRemoteNotificationMessageHandler);

    ..and in the handler:

    procedure TForm1.PushRemoteNotificationMessageHandler(const Sender: TObject; const M: TMessage);
    begin
      if M is TPushRemoteNotificationMessage then
        // Use this value (which is JSON): TPushRemoteNotificationMessage(M).Value.Notification
    end;

     

    • Thanks 1

  4. 16 minutes ago, Vanar said:

    My PUSH contains all the data (it is well formed and carries useful information).

    Does it contain content-available, as I mentioned?

    16 minutes ago, Vanar said:

    At what point can I receive PUSH data:
    when PUSH came to the phone

    Yes

    16 minutes ago, Vanar said:

    when do I activate the application?

    What do you mean by "activate the application"? The OS "wakes up" the application in the background, and the message receive handler (in your case, apparently OnReceiveNotificationEvent) gets called, when the message is received.

    16 minutes ago, Vanar said:

    The fact is that when I exit the background state of the application, I cannot read the information in PUSH.

    Possibly because you do not have the content-available member in the payload of the message.

    16 minutes ago, Vanar said:

    In what way can you get it, using what event?

    As mentioned, in the message receive handler

    16 minutes ago, Vanar said:

    I will be able to not only wake up the application, but also perform some logic (depending on the content of the PUSH data).

    . As per the section "Receive Background Notifications" in the same link, you have up to 30 seconds of processing time. Ignore the parts about the app delegate and completion handler - they are handled for you in the FMX code.

     

    Incidentally, I've found that trying to make background notifications like this work is a complete nightmare, mainly because of this (from the same link):

     

    "The system treats background notifications as low priority: you can use them to refresh your app’s content, but the system doesn’t guarantee their delivery. In addition, the system may throttle the delivery of background notifications if the total number becomes excessive. The number of background notifications allowed by the system depends on current conditions, but don’t try to send more than two or three per hour."


    It makes testing such things extremely difficult. Whatever you're attempting to do, you might need to do it some other way.


  5. 7 hours ago, Vanar said:

    I need to process the PUSH data, perform some actions, and not just open the application.

    If you want to be able to process the notification without user interaction (i.e. not open the application visibly), you need to follow the rules set out here:

     

    https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/pushing_background_updates_to_your_app?language=objc

     


  6. 11 minutes ago, softtouch said:

    When I close a form on macOS by clicking the top/left red close button of the form, the onClose event of the form is not trigggered

    Works for me in Delphi 11.3.

     

    EDIT: That's when the form is not opened modally - I do note that there are these issues outstanding related to modal forms: 

    https://quality.embarcadero.com/browse/RSP-39547
    https://quality.embarcadero.com/browse/RSP-40158

    So you may need to be more specific about how you are showing the form(s)
     


  7. 31 minutes ago, Uwe Raabe said:

    During the beta I use private forks of the public repositories to store all the changes. On release date the fork is merged into public. I don't distinguish code I may publish or not.

    Isn't this statement a breach of the NDA? 😉

     

    If I was participating (in theory, because I am not admitting either way), that's what I'd do, because I think the conditions are still fuzzy 🙂

     


  8. 1 hour ago, Ian Barker said:

    as long as they did not refer to or expose any functionality which was specific to version 12

    What about when a third party has both source code changes that make the code compatible (i.e. doesn't refer to new functionality), in addition to having code that does take advantage of new features (i.e. both kinds of changes in the same release)? It would seem to exclude them from doing anything at all, or at least hold off on the latter part, since it would be a breach? I wonder how many this would apply to? I know from the changes going from Delphi 10.4 to Delphi 11 that it would definitely apply to me.

     


  9. 1 hour ago, RDP1974 said:

    if I deploy a ios fmx app with this toolchain, a iphone with ios 15 or previous will run the app?

    11.3 is backward compatible for devices that have at least iOS 14, possibly earlier


  10. On 10/13/2023 at 3:17 AM, dummzeuch said:

    Does that mean everything works fine and nobody has any ideas on improving that functionality?

    Something is amiss for me: I'm building from r4065 and I can see files referring to Instant Grep, but there appears to be no menu item - is it not under the GExperts item?

     

    On a side note: is there a plan to make GExperts respect the IDE theme? 


  11. 6 hours ago, FabDev said:

    The one you can found in default "File" application and after "On my Iphone"("sur mon Iphone" in french) :

    I have added a demo to the HowTo repo that demonstrates how to achieve this.

     

    Please read the readme for instructions. Note that there is no special folder - it's a case of configuration in order to share files from the documents folder.

    • Like 2
    • Thanks 2
×