Jump to content

Dave Nottage

Members
  • Content Count

    1296
  • Joined

  • Last visited

  • Days Won

    29

Everything posted by Dave Nottage

  1. Dave Nottage

    Rules for changing cursor to HourGlass and back

    Consider if DoSomeLongProcess causes an exception.. what will happen to the cursor if there was no try..finally? Consider also if the cursor was something other than the default before you changed it to an HourGlass? Should you restore it to default, or to what it was before you changed it?
  2. Dave Nottage

    Rules for changing cursor to HourGlass and back

    These days, I avoid changing the cursor at all, but provide feedback in other ways. If it's a long running process, it'll be performed in a background thread. If you really must change the cursor, be sure to save its current value, and wrap it all in a try..finally, e.g. SaveTheCurrentCursorAndChangeToHourGlass; try DoSomeLongProcess; finally RestoreCursorToWhatItWas; end;
  3. Dave Nottage

    Communicating RFID with APDU commands

    In Kotlin, however does this help at all? https://medium.com/the-almanac/how-to-build-a-simple-smart-card-emulator-reader-for-android-7975fae4040f It uses the IsoDep class to send the APDU commands
  4. Dave Nottage

    Issue with a new and a (rather old) App for iOS with Rio

    Sounds like your .deployproj may have problems and/or your IDE. Make a backup of the .deployproj file, delete the existing one, do a Clean, Build, and try again.
  5. Dave Nottage

    installing support for Android and Linux platforms

    If you installed via ISO, you need to uninstall, then re-install selecting all desired platforms. If you installed via ESD, you'll have an option from the Delphi menu in Tools|Manage Platforms
  6. Dave Nottage

    news about the beta of 10.3.4

    If you're a subscription customer, you should have received an invitation to participate, as per this blog article: https://community.idera.com/developer-tools/b/blog/posts/august-2019-delphi-android-beta-plans-august-roadmap-update "Weโ€™re planning on kicking off an NDA Beta for the 10.3.3 release, codenamed Sugarloaf, later this month. All customers on Update Subscription will be invited to participate in the Beta and will be able to start migrating their applications even earlier with Beta versions, which will include a specific Beta EULA waiver permitting Google Play Store deployment"
  7. Dave Nottage

    Android Firebase Push Notifications Patch Released

    With 10.3.2, there's just a few of the steps needed from the original tutorial: https://community.idera.com/developer-tools/b/blog/posts/firebase-android-push-notification-support-with-rad-studio-10-3-1 Which are: 8 through 10, 14, one step that's actually missing from the tutorial: In Project Options, select Application > Version Info and modify the value for "package" to match the identifier you have for the project in Firebase Console and one additional step, which is what I expect you may be missing, namely: In Project Options, select Application > Entitlement List, and check the Receive Push Notifications checkbox. I think that's everything ๐Ÿ™‚
  8. Dave Nottage

    Code formatter in CnPack

    It has a "begin style" but no "end style": So my guess is: no.
  9. Good question. You could simulate this by transfering the APK to the device, and install it by opening it from whatever File Manager app is on the device. -cleaninstall is supposed to work for iOS also.
  10. Yes, as per the documentation: http://docwiki.embarcadero.com/RADStudio/Rio/en/Deployment_Manager If you're running the app from the IDE, you could use the -cleaninstall option as described here: http://docwiki.embarcadero.com/RADStudio/Rio/en/Running_Your_Android_Application_on_an_Android_Device
  11. As Remy says, you cannot. Add a feature request ๐Ÿ˜‰ I know how hard that can be to track down, even with debugging Delphi from Delphi. You might want to disable other experts one by one at least to find the culprit.
  12. Why not just keep your own list? i.e. when you call AddWizard to add a wizard, save the index and the name (via GetName or GetIDString on the wizard) in your own list.
  13. Dave Nottage

    Delphi 10.3.2 Android Application is Not Starting

    Thanks for the log! You may need to revise your NDK settings too, given it solved this persons problem: https://community.idera.com/developer-tools/platforms/f/android-platform/67751/10-3-android-5-crash I have mine set at Android-22. The relevant part in your log is: 08-31 13:08:02.182: E/AndroidRuntime(1527): java.lang.RuntimeException: Unable to start activity ComponentInfo{cy.com.wagamama.ordercy/com.embarcadero.firemonkey.FMXNativeActivity}: java.lang.IllegalArgumentException: Unable to load native library: /data/app/cy.com.wagamama.ordercy-2/lib/arm/libWagaAppClient.so 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3151) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3261) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread.access$1000(ActivityThread.java:219) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1735) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.os.Handler.dispatchMessage(Handler.java:102) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.os.Looper.loop(Looper.java:145) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread.main(ActivityThread.java:6939) 08-31 13:08:02.182: E/AndroidRuntime(1527): at java.lang.reflect.Method.invoke(Native Method) 08-31 13:08:02.182: E/AndroidRuntime(1527): at java.lang.reflect.Method.invoke(Method.java:372) 08-31 13:08:02.182: E/AndroidRuntime(1527): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404) 08-31 13:08:02.182: E/AndroidRuntime(1527): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199) 08-31 13:08:02.182: E/AndroidRuntime(1527): Caused by: java.lang.IllegalArgumentException: Unable to load native library: /data/app/cy.com.wagamama.ordercy-2/lib/arm/libWagaAppClient.so 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.NativeActivity.onCreate(NativeActivity.java:182) 08-31 13:08:02.182: E/AndroidRuntime(1527): at com.embarcadero.firemonkey.FMXNativeActivity.onCreate(FMXNativeActivity.java:105) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.Activity.performCreate(Activity.java:6609) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1134) 08-31 13:08:02.182: E/AndroidRuntime(1527): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3104)
  14. Dave Nottage

    Delphi 10.3.2 Android Application is Not Starting

    You might want to wind your build tools back to 28.0.3. Other than that, use a logcat viewer to find out what errors have been thrown, if any. I have a logcat viewer called DeviceLens that's in development: https://github.com/DelphiWorlds/MiscStuff/blob/master/Test/DeviceLens.zip
  15. Dave Nottage

    Application Loader no longer included in Xcode11

    That's correct. There already is (in "beta"), however yes. Mosco is just macOS related.. Codex already does some "Android-y" things: https://www.delphiworlds.com/codex/ I am considering supporting creation of Application Bundles for that, however that's dependent on how much time I have.
  16. Dave Nottage

    Application Loader no longer included in Xcode11

    Correct. Applications can be loaded to the App Store from the command line xcrun altool, e.g: https://medium.com/xcblog/xcodebuild-deploy-ios-app-from-command-line-c6defff0d8b8 I'm planning to add App Store upload functionality to Mosco: https://www.delphiworlds.com/2019/07/delphi-10-3-2-released-introducing-mosco/
  17. Dave Nottage

    Resolve a uses clause unit path?

    Which part? In any event, I use them successfully in my own experts.
  18. Dave Nottage

    Parsing Google Search Results redux

    I doubt that's the reason Now that sounds more like a reason ๐Ÿ˜‰ Having said that, if you're using text-based parsing it'd be possible to workaround the lack of a <body> tag. I started looking at doing this programmatically using TWebBrowser a few days ago. If I had more time, I'd continue with it
  19. Dave Nottage

    IDE adds {$R} between units

    When you say this, do you mean for a particular project, or for any? The IDE is known to "mess up" the .dpr if you modify certain parts of it. Examples of what can happen: https://stackoverflow.com/questions/758047/how-do-you-deal-with-ifdefs-in-dpr-uses-section https://stackoverflow.com/questions/6762194/how-to-prevent-delphi-modifying-its-dpr-project-source-unexpectedly https://stackoverflow.com/questions/317997/delphi-adding-r-res-in-the-dpr-file https://wiert.me/2018/12/20/do-not-put-ifdef-with-relative-paths-in-your-dpr-as-the-delphi-ide-cannot-match-them-in-the-dproj/
  20. Dave Nottage

    Resolve a uses clause unit path?

    Thanks for the link! Pretty much describes what I said ๐Ÿ™‚
  21. Dave Nottage

    Running the IDE in a VM on Mac Book Pro?

    Correct, however I did specify that I have a Mac. For a while I thought "well, that's ridiculous.. I have the Mac already, why would I want to run it in a VM?" ๐Ÿ˜‰
  22. Dave Nottage

    Running the IDE in a VM on Mac Book Pro?

    My 2c: I have a MacBook Pro, and for Windows, VirtualBox has served me very well for > 7 years. I also use Parallels, however only for macOS VMs, because VirtualBox has been lagging behind in supporting newer versions of macOS. I use macOS VMs on macOS to test Delphi (and other software) against macOS betas and Xcode betas ๐Ÿ™‚
  23. Dave Nottage

    cocos2d multiplatform

    I don't have time to help with this particular project, however for iOS and macOS you should be using Metal: https://developer.apple.com/documentation/metal?language=objc Which is what Delphi is moving towards (from 10.4, apparently)
  24. Dave Nottage

    Resolve a uses clause unit path?

    "Easy" can be subjective ๐Ÿ™‚ You'd need to have both the IDE search paths *and* the project paths. For the first, you could read the values from Search Path value for the appropriate platform in the Library subkey in the registry. For the second, you could obtain an IOTABuildConfiguration (for the relevant config) from the IOTAProjectOptionsConfigurations for the active project, and call GetValues for sUnitSearchPath (from DCCStrs). You'd also need to expand any macros in the paths. Then, starting from the project paths first, check each path (in order) for existence of the file. I think they have code for retrieving the paths somewhere inside CnWizards: https://github.com/cnpack/cnwizards
  25. From the documentation: http://docwiki.embarcadero.com/Libraries/Rio/en/System.Bluetooth.Components.TBluetoothLE.GetCharacteristic "Warning: You must read the value of the AService.Characteristics property before you call GetCharacteristic. Otherwise, GetCharacteristic returns nil."
ร—