Posted April 20, 20232 yr Добрый день. Вопрос по работе с библиотекой: FB4D, на 20.04.2023 г. https://github.com/SchneiderInfosystems/FB4D Delphi 11.3, Java JDK (Java 19), FGX-Native 1.15.4.0 1. Создал новый проект, добавил компонеты: TfgPushNotificationService, TfgFirebaseAnalytics, настроил, запустил приложение, Token от Firebase принимается, Push приходит, Аналитика в консоль передается, Firebase работает! 2. Добавляю в проект один (любой) модуль, например FB4D.Interfaces.pas, никакого кода еще не пишу, приложение собирается без ошибок, показывается заставка, и на ней приложение зависает. 3. Беру пример из билиотеки FB4D: "FSSimpleChat.dproj", компилирую под Windows, работает (новый пользователь в Authentication создается, существующий пользователь логинится, если пароль забыл, на E-mail приходит письмо сменить пароль, в Firestore Database пишутся сообщения): 4. Тот же пример из билиотеки FB4D: "FSSimpleChat.dproj", компилирую FMX под Andriod 32-bit, ошибки при сборке. Возможно FB4D не обновляется, Java JDK (Java 19) не воспринимается? Можно ли как-то работать с FB4D в версии FGX-Native 1.15.4.0 и последующих? Пол года назад, осенью, еще на Delphi 10.4.2 с FGX-Native более ранней версии, этот пример FMX собирался и работал под Andriod 32-bit. Edited April 25, 20232 yr by Александр Клопоцкий
April 21, 20232 yr Administrators Добрый вечер, В 20.04.2023 в 20:33, Александр Клопоцкий сказал: 2. Добавляю в проект один (любой) модуль, например FB4D.Interfaces.pas, никакого кода еще не пишу, приложение собирается без ошибок, показывается заставка, и на ней приложение зависает. Что в логах приложения? Что в стектрейсе, если запускать с отладкой. В 20.04.2023 в 20:33, Александр Клопоцкий сказал: 4. Тот же пример из билиотеки FB4D: "FSSimpleChat.dproj", компилирую FMX под Andriod 32-bit, ошибки при сборке. Вам нужно обновить список используемых Jar-библиотек в FMX. Для этого на ветке Libraries нужно в контекстном меню выбрать Reverts to default. После этого, указанные выше ошибки сборки, должны пройти.
April 22, 20232 yr Author 8 часов назад, Yaroslav Brovin сказал: Вам нужно обновить список используемых Jar-библиотек в FMX. Для этого на ветке Libraries нужно в контекстном меню выбрать Reverts to default. После этого, указанные выше ошибки сборки, должны пройти. Да, ошибки сборки пропали, загружается FMX под Andriod 32-bit.
April 22, 20232 yr Author 8 часов назад, Yaroslav Brovin сказал: Что в логах приложения? Логи от запуска приложения до зависания на заставке: "22.04.2023 8:13:06.576","I","ActivityThread",11028,11028,"smart_link is not supported!!!" "22.04.2023 8:13:06.579","W","libEGL",11028,11093,"EGLNativeWindowType 0xecc91528 disconnect failed" "22.04.2023 8:13:06.605","I","gralloc4",11028,11093,"register: id=22000002760" "22.04.2023 8:13:06.653","I","gralloc4",11028,11093,"unregister: id=22000002760" "22.04.2023 8:13:06.654","W","libEGL",11028,11093,"EGLNativeWindowType 0xecc8b068 disconnect failed" "22.04.2023 8:13:06.660","I","gralloc4",11028,11093,"register: id=22000002763"
April 22, 20232 yr Author 9 часов назад, Yaroslav Brovin сказал: Что в стектрейсе, если запускать с отладкой. First chance exception at $BE4E8F19. Exception class EJNIException with message 'java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/firebase/messaging/RemoteMessage;'. Process Faberlic.apk (23071) Events.txt Edited April 22, 20232 yr by Александр Клопоцкий
April 22, 20232 yr Administrators 5 часов назад, Александр Клопоцкий сказал: First chance exception at $BE4E8F19. Exception class EJNIException with message 'java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/firebase/messaging/RemoteMessage;'. Process Faberlic.apk (23071) Нужно в настройках проекта поставил галку Push Notification. Указанный класс из Push-нотификации Firebase. Он подключается только при включении настройки в проекте.
April 25, 20232 yr Hi I hope I am answering the right question... google translate may have caused confusion. I am using FB4D very successfully under FGX. with minor changes Have you defined the TOKENJWT? I also defined a FGX Conditional In the FB4D.Helpers I added to the implementation uses : {$ELSEIF Defined(FGX)} FGX.Types, FGX.Forms, You need to add all FB4D units to your project. Hope this helps. This should allow you access to all the FB4D functions.. I don't use push so not sure about that.
April 25, 20232 yr Author 5 часов назад, Alan сказал: I also defined a FGX Conditional In the FB4D.Helpers I added to the implementation uses : {$ELSEIF Defined(FGX)} FGX.Types, FGX.Forms, Thank you Alan, for your answer. 1. Created a new project, added components: TfgPushNotificationService, TfgFirebaseAnalytics, configured, launched the application,Token from Firebase is accepted, Push arrives, Analytics are transmitted to the console, Firebase is working! 2. I am adding a module "FB4D.Helpers.pas" to this project, warning:"FB4D.Helpers.pas" uses unit ".Types" from the "FMX" framework which is not compatible with the project. 3. I changed the file "FB4D.Helpers.pas" as you wrote. And the compilation began to pass without errors! Thank you! Edited April 25, 20232 yr by Александр Клопоцкий
April 25, 20232 yr 35 минут назад, Александр Клопоцкий сказал: How did you change this file: "FB4D.Helpers.pas"? вероятно речь идет о коде https://github.com/SchneiderInfosystems/FB4D/blob/master/Source/FB4D.Helpers.pas#L244-L246 изменить {$ELSE} на {$ELSEIF Defined(FGX)} FGX.Types, FGX.Forms,
April 25, 20232 yr Author 57 минут назад, Dmitry Sh. сказал: вероятно речь идет о коде https://github.com/SchneiderInfosystems/FB4D/blob/master/Source/FB4D.Helpers.pas#L244-L246 изменить {$ELSE} на {$ELSEIF Defined(FGX)} FGX.Types, FGX.Forms, Спасибо Dmitry Sh., изменил FB4D.Helpers.pas, компилируется! Edited April 25, 20232 yr by Александр Клопоцкий
April 25, 20232 yr Administrators I opened Pull Request for adding FGX define to this project:https://github.com/SchneiderInfosystems/FB4D/pull/158/files So you can use this patch for local adopting code for FGX Native and don't forget add FGX define to project options.
April 26, 20232 yr Author В 25.04.2023 в 10:17, Alan сказал: Have you defined the TOKENJWT? After adding the "FB4D.OAuth.pas" module to the project, compilation errors appear: FB4D.OAuth.pas(35,40): error E2003: E2003 Undeclared identifier: 'ITokenJWT' FB4D.OAuth.pas(93,13): error E2003: E2003 Undeclared identifier: 'ETokenJWT' FB4D.OAuth.pas(93,29): error E2382: E2382 Cannot call constructors using instance variables C:\Faberlic\Faberlic.dpr(22,2): error F2063: F2063 Could not compile used unit 'FB4D.OAuth.pas' How to define interfaces correctly? Edited April 26, 20232 yr by Александр Клопоцкий
April 26, 20232 yr Administrators Hello @Александр Клопоцкий, You should also add to your project sources of the dependent library JOSE.
April 26, 20232 yr Author В 26.04.2023 в 00:24, Yaroslav Brovin сказал: I opened Pull Request for adding FGX define to this project:https://github.com/SchneiderInfosystems/FB4D/pull/158/files So you can use this patch for local adopting code for FGX Native and don't forget add FGX define to project options. Чистое приложение, добавлен только FB4D.Helpers.pas из Pull Request: 27.04.2023 8:05:20.779,"E","libc",27668,27714,"Access denied finding property ""persist.vendor.sf.fbc""" 27.04.2023 8:05:20.779,"E","libc",27668,27714,"Access denied finding property ""persist.vendor.gpu.fbc""" 27.04.2023 8:05:20.779,"E","libc",27668,27714,"Access denied finding property ""persist.vendor.vsp.fbc"" First chance exception at $BC357666. Exception class Segmentation fault (11). Process Project1.apk (27986) Edited April 27, 20232 yr by Александр Клопоцкий
April 26, 20232 yr Author В 26.04.2023 в 13:14, Yaroslav Brovin сказал: Hello @Александр Клопоцкий, You should also add to your project sources of the dependent library JOSE. Все sources билиотеки JOSE добавлял в проект, не помогает, не компилируется. Edited April 28, 20232 yr by Александр Клопоцкий
April 27, 20232 yr Administrators 19 hours ago, Александр Клопоцкий said: Если добавить в проект этот исправленный FB4D.Helpers.pas из Pull Request, то приложение виснит после заставки, как и с первоначальным из библиотеки. Дефайн FGX добавлен в настройки проекта?
April 27, 20232 yr Author 15 часов назад, Yaroslav Brovin сказал: Дефайн FGX добавлен в настройки проекта? Да, FGX define - не был добавлен в настройках проекта. После копиляции: сначала FGX.Logs не нашел, исправил на FGX.Log, потом ошибки: Build started 27.04.2023 20:52:26. __________________________________________________ Project "C:\Projects\Project1\Project1.dproj" (Make target(s)): Target _PasCoreCompile: c:\delphi\bin\dccaarm.exe -$O- --no-config -M -Q -TX.so -AGenerics.Collections=System.Generics.Collections;Generics.Defaults=System.Generics.Defaults -DFGX;DEBUG;;FRAMEWORK_xfm -E.\Android\Debug -Ic:\delphi\lib\Android\debug;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Debug";c:\delphi\lib\Android\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Release";"C:\Users\User\AppData\Local\FGX Native\Libs\Common\Android\Debug\armeabi-v7a";C:\Delphi\Add\UniDAC\Lib\Android32;C:\Delphi\Add\UniDAC\Demos\TechnologySpecific\SecureBridge;C:\Delphi\Add\JOSE\Source\Common;C:\Delphi\Add\JOSE\Source\JOSE;C:\Delphi\Add\FB4D\Source;C:\Delphi\Add\FB4D\GUIPatterns\FMX -LEC:\Users\Public\Documents\Embarcadero\Studio\22.0\Bpl\Android -LNC:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android -NU.\Android\Debug -NSSystem;Xml;Data;Datasnap;Web;Soap; -Oc:\delphi\lib\Android\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Release";"C:\Users\User\AppData\Local\FGX Native\Libs\Common\Android\Debug\armeabi-v7a";C:\Delphi\Add\UniDAC\Lib\Android32;C:\Delphi\Add\UniDAC\Demos\TechnologySpecific\SecureBridge;C:\Delphi\Add\JOSE\Source\Common;C:\Delphi\Add\JOSE\Source\JOSE;C:\Delphi\Add\FB4D\Source;C:\Delphi\Add\FB4D\GUIPatterns\FMX -Rc:\delphi\lib\Android\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Release";"C:\Users\User\AppData\Local\FGX Native\Libs\Common\Android\Debug\armeabi-v7a";C:\Delphi\Add\UniDAC\Lib\Android32;C:\Delphi\Add\UniDAC\Demos\TechnologySpecific\SecureBridge;C:\Delphi\Add\JOSE\Source\Common;C:\Delphi\Add\JOSE\Source\JOSE;C:\Delphi\Add\FB4D\Source;C:\Delphi\Add\FB4D\GUIPatterns\FMX -Uc:\delphi\lib\Android\debug;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Debug";c:\delphi\lib\Android\Release;C:\Users\Public\Documents\Embarcadero\Studio\22.0\Dcp\Android;"C:\Users\User\AppData\Local\FGX Native\Libs\280\Android\Release";"C:\Users\User\AppData\Local\FGX Native\Libs\Common\Android\Debug\armeabi-v7a";C:\Delphi\Add\UniDAC\Lib\Android32;C:\Delphi\Add\UniDAC\Demos\TechnologySpecific\SecureBridge;C:\Delphi\Add\JOSE\Source\Common;C:\Delphi\Add\JOSE\Source\JOSE;C:\Delphi\Add\FB4D\Source;C:\Delphi\Add\FB4D\GUIPatterns\FMX --libpath:C:\Delphi\CatalogRepository\AndroidNDK-21-22.0.47991.2819\android-ndk-r21\platforms\android-23\arch-arm\usr\lib;C:\Delphi\CatalogRepository\AndroidNDK-21-22.0.47991.2819\android-ndk-r21\sources\cxx-stl\llvm-libc++\libs\armeabi-v7a --linker:C:\Delphi\CatalogRepository\AndroidNDK-21-22.0.47991.2819\android-ndk-r21\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin\arm-linux-androideabi-ld.exe -V -VN -NO.\Android\Debug Project1.dpr C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(678,15): error E2003: E2003 Undeclared identifier: 'SJPGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(680,15): error E2003: E2003 Undeclared identifier: 'SGIFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(682,15): error E2003: E2003 Undeclared identifier: 'SPNGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(684,15): error E2003: E2003 Undeclared identifier: 'STIFFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(717,14): error E2003: E2003 Undeclared identifier: 'TImageTypeChecker' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(717,32): error E2066: E2066 Missing operator or semicolon C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(718,16): error E2003: E2003 Undeclared identifier: 'SJPGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(718,35): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(720,21): error E2003: E2003 Undeclared identifier: 'SGIFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(720,40): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(722,21): error E2003: E2003 Undeclared identifier: 'SPNGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(722,40): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(724,21): error E2003: E2003 Undeclared identifier: 'STIFFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(724,41): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Projects\Project1\Project1.dpr(8,2): error F2063: F2063 Could not compile used unit 'FB4D.Helpers.pas' Done building target "_PasCoreCompile" in project "Project1.dproj" -- FAILED. Done building project "Project1.dproj" -- FAILED. Build FAILED. C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(718,35): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(720,40): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(722,40): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(724,41): warning W1058: W1058 Implicit string cast with potential data loss from 'string' to 'ShortString' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(678,15): error E2003: E2003 Undeclared identifier: 'SJPGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(680,15): error E2003: E2003 Undeclared identifier: 'SGIFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(682,15): error E2003: E2003 Undeclared identifier: 'SPNGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(684,15): error E2003: E2003 Undeclared identifier: 'STIFFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(717,14): error E2003: E2003 Undeclared identifier: 'TImageTypeChecker' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(717,32): error E2066: E2066 Missing operator or semicolon C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(718,16): error E2003: E2003 Undeclared identifier: 'SJPGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(720,21): error E2003: E2003 Undeclared identifier: 'SGIFImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(722,21): error E2003: E2003 Undeclared identifier: 'SPNGImageExtension' C:\Delphi\Add\FB4D\Source\FB4D.Helpers.pas(724,21): error E2003: E2003 Undeclared identifier: 'STIFFImageExtension' C:\Projects\Project1\Project1.dpr(8,2): error F2063: F2063 Could not compile used unit 'FB4D.Helpers.pas' 4 Warning(s) 11 Error(s) Time Elapsed 00:00:00.29 Добавил все "FB4D Source" и "JOSE Source" в проект, все равно те же ошибки. Edited April 28, 20232 yr by Александр Клопоцкий
April 28, 20232 yr Author 4 часа назад, Alan сказал: I see you don't have TOKENJWT in your defines? Yes, now added TOKENJWT in defines. Yes, it compiles without errors, gets into the phone and works! Thank you! Edited April 28, 20232 yr by Александр Клопоцкий
Create an account or sign in to comment