Jump to content

Dave Nottage

Members
  • Content Count

    1718
  • Joined

  • Last visited

  • Days Won

    38

Everything posted by Dave Nottage

  1. Dave Nottage

    AdMob in Delphi11

    Did you read the details of the readme, here? https://github.com/DelphiWorlds/Playground/tree/main/Demos/AdMob#readme
  2. Dave Nottage

    Working with Delphi and Excel

    Without using OLE? Yes. An .xlsx file is in .zip format. You can extract the contents using TZipFile and read the (mostly) xml files inside. You could learn the spec and parse the xml. Here's some links that might help: https://docs.fileformat.com/spreadsheet/xlsx/ http://officeopenxml.com/anatomyofOOXML-xlsx.php https://www.brendanlong.com/the-minimum-viable-xlsx-reader.html https://c-rex.net/projects/samples/ooxml/e1/Whitepaper/spreadsheetml.html
  3. Dave Nottage

    Delphi 10.4.2 CE support Android API 30

    It's in the bin folder of your Delphi installation, e.g. C:\Program Files (x86)\Embarcadero\Studio\21.0\bin
  4. Dave Nottage

    IOS IPA File generation error

    From what I could see from the initial post, they have all that. This is usually due to the version of Xcode being incompatible with the version of PAServer. If the aim is to create an IPA to put on the App Store, it's not going to work since the App Store now requires Xcode 13, and 10.4.2 has a PAServer that is incompatible with Xcode 13. To produce .IPA files, I strongly recommend using Delphi 11.1. There is otherwise this workaround:
  5. Dave Nottage

    AdMob in Delphi11

    That's way too vague. Did you try the demo? Bear in mind (and if you read the readme) that it depends on the Kastri library.
  6. Your first post didn't seem to imply that there were any issues (other than it being confusing, which it is), in fact it stated: There isn't any way of "working around" the confusion - Embarcadero would need to change the way the IDE works, and/or make it clearer to the developer why it works this way
  7. Related reports: https://quality.embarcadero.com/browse/RSP-27501 https://quality.embarcadero.com/browse/RSP-26659
  8. Dave Nottage

    Notification demo android 12

    You don't see this part? 😉
  9. Dave Nottage

    Notification demo android 12

    If you're referring to this demo: https://github.com/Embarcadero/RADStudio11Demos/tree/main/Object Pascal/Multi-Device Samples/Device Sensors and Services/AndroidNotificationServiceDemo There seems to be some missing information in the project file because it does not even add the service to the manifest, and the service jar is not listed under the Libraries node of the Android platform in Project Manager. What I did to rectify this was to: Right-click the Android platform node in Project Manager Click Remove Android Services Select the checkbox next to the service in the list Click Next Click Finish Right-click the Android platform node in Project Manager again Click Add Android Service Click Next Select the path to the service, i.e. AndroidNotificationServiceDemo\NotificationService Click Select Folder Click Next Click Finish Then recompile/deploy/run After you click Start Service, a notification should appear soon after in the system status bar. Opening the notification and tapping on it should open the app and the notification info should appear in the memo
  10. Dave Nottage

    Admob

    This may be of interest to you: https://github.com/DelphiWorlds/Playground/tree/main/Demos/AdMob Once I have the events for the full screen ads sorted out on iOS, I plan on moving it over to Kastri
  11. Dave Nottage

    disabling fmx webbrowser dark mode

    It's possible there is. My question was: What are the steps to reproduce that the website will definitely show in dark mode? Then I can test that the code will force it into light mode
  12. Dave Nottage

    Play Store - Your Device Isn't Compatible with This Version

    Looks pretty normal. Your customer might want to visit this link: https://helpdeskgeek.com/help-desk/fix-your-device-isnt-compatible-with-this-version-on-android/
  13. Dave Nottage

    disabling fmx webbrowser dark mode

    I may have a solution, however I'm having trouble verifying that it works. What are the steps to reproduce that the website will definitely show in dark mode? At present, all I'm doing is navigating to https://www.google.com, and TWebBrowser shows the site in light mode, despite the Chrome app showing it in dark mode (which is what my device is set to)
  14. Dave Nottage

    Play Store - Your Device Isn't Compatible with This Version

    Please show what is in AndroidManifest.xml (i.e. not AndroidManifest.template.xml)
  15. Dave Nottage

    New bug with patch 1 for 11.1

    I'm not seeing that after applying Patch 1. What I mean by that is after saving, the buttons are not enabled, and the modified mark is removed. When opening a project, there's still the bug of the IDE thinking that the project has changed, even though no changes have been made.
  16. Dave Nottage

    Hardware ID

    I don't see how that would have ever compiled in that form. Since it's a standalone function, there's no "Self" for it to refer to. Perhaps InternalGetHardwareID was once a method of an object?
  17. Dave Nottage

    Error when compiler an Android App with KeyStore File

    Can you post what error messages you have? (like Johansy did)
  18. Dave Nottage

    How to know how app was started

    The notification is (at least when I last checked) "received" before the app becomes active, so you could have a flag that is set when the BecameActive event fires (to indicate the app was launched), and another to indicate whether the app went into the background, and set that when the EnteredBackground event fires, e.g.: unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, System.Messaging, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs; type TForm1 = class(TForm) private FIsLaunched: Boolean; FIsBackground: Boolean; procedure ApplicationEventMessageHandler(const Sender: TObject; const M: TMessage); public constructor Create(AOwner: TComponent); override; destructor Destroy; override; end; var Form1: TForm1; implementation {$R *.fmx} uses FMX.Platform; { TForm1 } constructor TForm1.Create(AOwner: TComponent); begin inherited; TMessageManager.DefaultManager.SubscribeToMessage(TApplicationEventMessage, ApplicationEventMessageHandler); FIsLaunched := False; FIsBackground := True; end; destructor TForm1.Destroy; begin TMessageManager.DefaultManager.Unsubscribe(TApplicationEventMessage, ApplicationEventMessageHandler); inherited; end; procedure TForm1.ApplicationEventMessageHandler(const Sender: TObject; const M: TMessage); begin case TApplicationEventMessage(M).Value.Event of TApplicationEvent.BecameActive: begin FIsLaunched := True; FIsBackground := False; end; TApplicationEvent.EnteredBackground: FIsBackground := True; end; end; end. When the app receives a notification: if the app was being launched from not running, FIsLaunched should be False (does not matter what FIsBackground is), if launched from the background, FIsLaunched and FIsBackground should be True.
  19. Dave Nottage

    FGX Native - crossplatform mobile native development

    Last time I tried FGX (a few months ago), this was not true (at least not entirely). Anything that relies on FMX could not be used, and I actually changed part of Kastri to allow for this (i.e. so that particular part of Kastri could still be used in FGX). That said, I concur that FGX is a fantastic product 🙂
  20. Dave Nottage

    Android: Opening files in external application

    By this do you mean the paths returned by, for example, GetSharedDocumentsPath and GetSharedDownloadsPath? Can you show what you have tried?
  21. Dave Nottage

    ZipMaster 1.9x with my minor fixes

    It does in Delphi 11: https://docwiki.embarcadero.com/RADStudio/Alexandria/en/New_features_and_customer_reported_issues_fixed_in_RAD_Studio_11.0
  22. Dave Nottage

    How to play sound via stream in android platform

    This suggests it can be done using TMediaPlayer: https://github.com/Embarcadero/RADStudio11Demos/tree/main/Object Pascal/Multi-Device Samples/Media/StreamingMedia
  23. Dave Nottage

    Delphi 11.1 is available

    Tracking of downloads has been set up for the "official" links would be my guess.
  24. I've extracted the steps from the article into this: https://github.com/DelphiWorlds/HowTo/tree/main/Solutions/AndroidLowerVersions Can you confirm you've followed the steps exactly? Check that the generated AndroidManifest.xml has the correct value for minSdkVersion, and perhaps post a screenshot here of your NDK settings.
  25. Dave Nottage

    Delphi 10.4.2 with XCode13 SDK15.0 packaging ipa fail

    On April 1st, when deploying to App Store, Xcode 13 will be required, so in this case reverting to Xcode 12 is not a solution. See the earlier replies regarding using Mosco (and Codex) as a potential workaround for this Delphi 10.4.2 issue
×