Перейти к содержанию
Fire Monkey от А до Я

denfm

Пользователи
  • Постов

    1
  • Зарегистрирован

  • Посещение

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

Достижения denfm

  1. Относительно не сложно 1) сперва нужно сгенерировать java файлы на базе aidl интерфейсов Это можно сделать автоматически в Android Studio на пустом проекте(там aidl интерфейсы генерируются в java автоматом при сборке проекта ) или использовать aidl.exe, как-то так: set ANDROID_SDK="C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows" set ANDROID_PLATFORM=%ANDROID_SDK%\platforms\android-19 set ANDROID_BUILD_TOOLS=%ANDROID_SDK%\build-tools\28.0.3 set ANDROID_AIDL=%ANDROID_BUILD_TOOLS%\aidl.exe set AIDL_DIR=src_aidl set OUTPUT_DIR=src_java rmdir %OUTPUT_DIR% /s /q mkdir %OUTPUT_DIR% 2> nul %ANDROID_AIDL% -p%ANDROID_PLATFORM%\framework.aidl -o%OUTPUT_DIR% -d%OUTPUT_DIR%\f.d -I%AIDL_DIR% %путь к файлу%\file.aidl 2) далее, на базе статей delphifmandroid.blogspot.com, собрать jar библиотеку и pas-интерфейсы к ней @echo off setlocal rem Add to system path JAVA_BIN set JAVA_BIN= set ANDROID_SDK="C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows" set ANDROID_PLATFORM=%ANDROID_SDK%\platforms\android-19 set ANDROID_BUILD_TOOLS=%ANDROID_SDK%\build-tools\28.0.3 set JAVA2OP="C:\Program Files (x86)\Embarcadero\Studio\19.0\bin\converters\java2op\Java2OP.exe" set JAR_FILE_NAME=testFile set filtr_package=base_package_name set JAVA2OP_PARAMS=-classes %filtr_package%.* -unit Android.JNI.%JAR_FILE_NAME% set PACKAGE_MAIN=. set VERBOSE=0 set OUTPUT_DIR=build set SRC_DIR=src_java rmdir %OUTPUT_DIR% /s /q mkdir %OUTPUT_DIR% 2> nul echo === Fill list Java files === cd %SRC_DIR% dir /s /B *.java > ..\%OUTPUT_DIR%\src_list.txt cd.. set JAVA_FILES="@%OUTPUT_DIR%\src_list.txt" echo. echo === Compiling the Java source files === echo. mkdir %OUTPUT_DIR%\classes 2> nul if x%VERBOSE% == x1 SET VERBOSE_FLAG=-verbose %JAVA_BIN%javac %VERBOSE_FLAG% -cp %ANDROID_PLATFORM%\android.jar -d %OUTPUT_DIR%\classes %JAVA_FILES% echo. echo === Creating jar === echo. if x%VERBOSE% == x1 SET VERBOSE_FLAG=v %JAVA_BIN%jar c%VERBOSE_FLAG%f %OUTPUT_DIR%\%JAR_FILE_NAME%.jar -C %OUTPUT_DIR%\classes %PACKAGE_MAIN% echo. echo === Creating Interfaces === echo. cd %OUTPUT_DIR% %JAVA2OP% -jar %JAR_FILE_NAME%.jar %JAVA2OP_PARAMS% cd .. echo. echo === END === endlocal далее jar файл подключить к библиотекам Android(через IDE), а интерфейсы как модуль pas файл рекомендую почистить от лишних интерфейсов типа StringBuilder и пр. 3) На базе JServiceConnection реализовать подключение к вашему приложению готовое решение можно позаимствовать от сюда: Embarcadero\Studio\19.0\source\fmx\FMX.InAppPurchase.Android.pas, где само подключение к интерфейсу выглядит так: FService := TJIInAppBillingService_Stub.JavaClass.asInterface(service); также рекомендую обратить внимание на TRemoteServiceConnection класс, на основе реализаций которого можно набросать свой сервис
×
×
  • Создать...