Jump to content

Dave Nottage

Members
  • Content Count

    1491
  • Joined

  • Last visited

  • Days Won

    36

Everything posted by Dave Nottage

  1. I tried reproducing it using your steps, and was unable to. What version of Delphi?
  2. Dave Nottage

    iOS: Add external SDK to Build Process

    Yes, as I've used CocoaPods to download SDKs before. It will be easier though if they have a direct download of their SDK. Which SDK is it?
  3. Possibly, via Tools | Manage Features: Ensure the OpenJDK is installed. (right hand side, scroll all the way down). If it is not, select it, and click Apply. Deselect the SDK/NDK, and click Apply Reselect the SDK/NDK, and click Apply. During these steps, you might need to re-open Tools | Manage Features. I can't remember if it closes after clicking Apply.
  4. I suspect the Android SDK was not installed completely. Check the SDK settings (Tools | Options > Deployment > SDK Manager)
  5. Dave Nottage

    Android 8.0.0 Crashes when useing camara.

    Works OK here. Either there's an issue with your device, or you need to provide more information, e.g. Are there any error messages when it crashes? Where in your code does it crash? Have you used a log viewer to check for error messages and if so, are there any? Is there any other relevant code you've left out in your post?
  6. Dave Nottage

    java.lang.indexoutofboundsexception

    Did you read the reply from bzwirs?:
  7. Dave Nottage

    AdMob in Delphi11

    Your screenshot looks very much like it is from an emulator I don't know, because you never really answered this question: No - it is built direct from the demo app, with no alterations, using Delphi 12.1
  8. Dave Nottage

    AdMob in Delphi11

    Does this happen also on a real device? Regardless, do any of these answers help?
  9. Dave Nottage

    AdMob in Delphi11

    Posted a 64-bit APK built with Delphi 12 here.
  10. Dave Nottage

    loadCSV android Multidevice

    Yes, it is a matter of that. It's explained in the demo in Kastri.
  11. You could use GetMousePos to check if the mouse is inside of it, like this: uses FMX.Platform; procedure TForm1.ParentPanelMouseLeave(Sender: TObject); var LService: IFMXMouseService; LPoint: TPointF; begin if TPlatformServices.Current.SupportsPlatformService(IFMXMouseService, LService) then begin LPoint := ScreenToClient(LService.GetMousePos); if not ParentPanel.AbsoluteRect.Contains(LPoint) then ParentPanel.Fill.Color := $FFE0E0E0; end; end;
  12. Dave Nottage

    AdMob in Delphi11

    Is this using the demo, unaltered, following all of the instructions? In which version of Delphi?
  13. Hopefully all sorted now, including: Added new API import DW.Androidapi.JNI.AssetDelivery.pas Added new jar files to the ThirdParty\Android folder in Kastri Updated DW.AssetDelivery.Android.pas Updated the demo, including the manifest template. Updated the batch files which are included with the demo, to account for the changed Android build process in Delphi 12.1 Updated Codex to also account for the changed Android build process in Delphi 12.1 As you may have guessed, it wasn't as simple as swapping the .jar file, especially since asset-delivery-2.2.2.jar is dependent on play-core-common-2.0.3.jar. Newer versions of Android also require this implementation to have the Foreground Service Data Sync permission. I am yet to test with an AAB that's actually on Play Store (whether internal or not), but "local" testing worked OK.
  14. As far as testing goes, so far this has not progressed well - the build process has changed which means the automation in Codex has broken, as well as the BuildBundle batch file that is provided with the demo. More later...
  15. I have done a more detailed check now (I had not when I sent the first message), and I can see that the classes/methods are all compatible and the namespacing of the classes is identical, so removing the old jar from the project and adding the new one should work, but I'll know for sure when I do a test, hopefully before the end of the weekend.
  16. As far as I can tell, you just need to switch from using play-core-1.10.0.jar to asset-delivery-2.2.2.jar. If that's not the case, let me know. asset-delivery-2.2.2.jar
  17. I'd try deleting AndroidManifest.template.xml in your project folder (back it up first if you customized it), then redeploy.
  18. You should not have to add that file yourself, as it is added automatically by the IDE. Here's the Deployment Manager for a typical Android project:
  19. Dave Nottage

    AdMob in Delphi11

    What make/model? And what version of Android is on it?
  20. Dave Nottage

    Delphi 12.1, Xcode 15.4 (iOS 17.5)

    Same here. I needed to use: GlobalUseMetal := True; (adding FMX.Types to the uses clause) In the project source to stop the app from crashing. Someone else (not sure where, exactly) reported that re-importing the iOS Simulator 17.5 SDK (first deleting the cache folders in the PAServer folder on the Mac) fixed it for them, but that didn't work for me.
  21. Dave Nottage

    Deploy Delphi 12 iOS 17 XCode 15.4

    So it's more than likely a profile/certificate issue, especially given the original message. You could use the Keychain Access app on the Mac to check whether certificates are valid, e.g. on mine:
  22. Dave Nottage

    Deploy Delphi 12 iOS 17 XCode 15.4

    What adjustments did you make? If it included the value for CFBundleIdentifier (in the Version Info section), I suspect it's related to that.
  23. Dave Nottage

    TLocationlistener.. fails in Delphi 12.

    Assuming that the above unit is a modified copy of System.Android.Sensors.pas from an earlier version of Delphi, you'll need to update it to align with Delphi 12.
  24. Dave Nottage

    New to Delphi 12, can't turn off adaptive icons

    I'm puzzled as to why you would post "Got it figured out", but not actually include the solution
  25. Dave Nottage

    AdMob in Delphi11

    Here is the problem: 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime FATAL EXCEPTION: Thread-6 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime Process: com.embarcadero.AdTestD12, PID: 12847 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/R$string; 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at com.google.android.gms.measurement.internal.zzga.zza(com.google.android.gms:play-services-measurement-base@@20.1.2:1) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at com.google.android.gms.internal.measurement.zzee.<init>(com.google.android.gms:play-services-measurement-sdk-api@@20.1.2:8) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at com.google.android.gms.internal.measurement.zzee.zzg(com.google.android.gms:play-services-measurement-sdk-api@@20.1.2:2) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at com.google.android.gms.measurement.api.AppMeasurementSdk.getInstance(com.google.android.gms:play-services-measurement-sdk-api@@20.1.2:3) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at com.google.android.gms.internal.ads.zzbnq.run(com.google.android.gms:play-services-ads-lite@@22.2.0:10) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at java.lang.Thread.run(Thread.java:1012) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.R$string" on path: DexPathList[[zip file "/data/app/~~aO0p4K6Hjy9h4IY8lEyzVQ==/com.embarcadero.AdTestD12-AUBcLSpltNJ395APPGwSJA==/base.apk"],nativeLibraryDirectories=[/data/app/~~aO0p4K6Hjy9h4IY8lEyzVQ==/com.embarcadero.AdTestD12-AUBcLSpltNJ395APPGwSJA==/lib/arm, /data/app/~~aO0p4K6Hjy9h4IY8lEyzVQ==/com.embarcadero.AdTestD12-AUBcLSpltNJ395APPGwSJA==/base.apk!/lib/armeabi-v7a, /system/lib, /system/system_ext/lib]] 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:379) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime at java.lang.ClassLoader.loadClass(ClassLoader.java:312) 2024.06.12 22:02:52.452 E com.embarcadero.AdTestD12 12847 15753 AndroidRuntime ... 6 more Not sure why this was not happening before. I see from your first post about this you are using an emulator? I strongly advise to use a real device. If you are unable to, make sure the emulator system image includes "Play Store":
×