Подружить GODOT экспорт в Android и OK.RU, написав плугин на C++
Подружить GODOT экспорт в Android(https://github.com/godotengine/godot/tree/3.1) и API Одноклассники https://apiok.ru/dev/sdk/android
Как пишутся плугины для GODOT:
https://www.youtube.com/watch?v=LFtNGsjM8Js
https://www.youtube.com/watch?v=2hK7vOigbLQ
Выдаю проект-болванку(прикреплен сюда). Эти все функции должны работать в Android в живую:
При нажатии на кнопку LOGIN должно появляться такое окно:
Затем такое:
Кнопки Invite и Suggest(отличия минимальны по сути) должны вызывать такое окно с переданными в них параметрами(текст в данном случае, и остальное)
Кнопка Publish to Feed вызывает такое окно(только без картинки в посте, только текст, запрос будет в проекте-болванке):
В случае если на смартфоне установлено приложение соц сети ОК, то должны появляться окна из него, по сути такие же самые только желтые. Это в принципе делает сам SDK, смотрит есть ли в Андройде приложение ОК и использует его.
Но на всякий случай этот момент опишу. Вот так они выглядят:
Результаты действий должны приходить обратно в GODOT и вызываться соответствующие callback.
Rest функцию сделать универсальной rest(<метод апи>, <параметры>, callback, callback_error)
Соответственно на callback приходят ответы от API в виде строки содержащей сырой ответ в JSON от API.
Для сборки Android export template исходники брать тут: https://github.com/godotengine/godot ВНИМАНИЕ ветку 3.1(работаем только с ней)
Есть правило: версия редактора и export templates должна быть собрана на базе одной версии(и с плугином, который вы напишите)
Для примера как запаковываются готовые export templates: https://downloads.tuxfamily.org/godotengine/3.1.1/Godot_v3.1.1-stable_export_templates.tpz
Android SDK для сборки брать минимальной версии согласно рекомендациям по сборке с сайта GODOT.
Собирать Android экспорт такой строкой(*обсуждаемо):
scons p=android target=release android_arch=armv7 optimize=speed tools=no use_lto=no deprecated=no gdscript=yes minizip=no xaudio2=no verbose=yes progress=yes warnings=all werror=no dev=no vsproj=no macports_clang=no disable_3d=yes disable_advanced_gui=yes no_editor_splash=yes builtin_bullet=no builtin_certs=yes builtin_enet=no builtin_freetype=yes builtin_libogg=yes builtin_libpng=yes builtin_libtheora=no builtin_libvorbis=yes builtin_libvpx=no builtin_libwebp=yes builtin_libwebsockets=yes builtin_mbedtls=no builtin_miniupnpc=no builtin_opus=no builtin_pcre2=yes builtin_recast=no builtin_squish=no builtin_thekla_atlas=no builtin_xatlas=no builtin_zlib=yes builtin_zstd=yes javascript_eval=yes use_llvm=no use_static_cpp=yes debug_symbols=no module_bmp_enabled=yes module_bullet_enabled=no module_csg_enabled=no module_cvtt_enabled=no module_dds_enabled=no module_enet_enabled=no module_etc_enabled=yes module_freetype_enabled=yes module_gdnative_enabled=no module_gdscript_enabled=yes module_gridmap_enabled=no module_hdr_enabled=no module_jpg_enabled=yes module_mbedtls_enabled=no module_mobile_vr_enabled=no module_mono_enabled=no module_ogg_enabled=yes module_opensimplex_enabled=no module_opus_enabled=no module_pvr_enabled=no module_recast_enabled=no module_regex_enabled=no module_squish_enabled=no module_stb_vorbis_enabled=yes module_svg_enabled=yes module_tga_enabled=no module_thekla_unwrap_enabled=no module_theora_enabled=no module_tinyexr_enabled=no module_upnp_enabled=no module_visual_script_enabled=no module_vorbis_enabled=no module_webm_enabled=no module_webp_enabled=yes module_websocket_enabled=yes module_xatlas_unwrap_enabled=no
* например может быть target=release_debug на этапе разработки плугина.
А на выходе target=release и две сборки под архитектуры arch=armv7 и arm64v8
А редактор под windows как описано тут: https://docs.godotengine.org/en/3.1/development/compiling/compiling_for_windows.html
Архитектура: x64
После компиляции, собранный экспорт лучше(скриптом) запаковать в ZIP(с нужной структурой, там все очень просто, подсмотреть в готовых exports templates) и чтобы каждый раз руками не инсталлировать, закинуть в "C:\Documents and Settings\%USER%\AppData\Roaming\Godot\templates"\
Далее делаете Project -> Export, настраиваете(один раз)
Отладку думаю лучше делать на живом аппарате Android, подключить шнурком к USB, adb отладка что была включена, драйвера/сам adb и в GODOT при подключении смарфона он вверху справа(в строке с GLES2) добавит маленький значок Android нажав по нему, он все сам соберет, сам запустит на девайсе. Это ускорит процесс.
Мелочи:
Думаю это не нужно, в проекте GODOT флаг и так всегда включен <uses-permission android:name="android.permission.INTERNET"/>
Проект-болванка GODOT прикреплена ниже.
На выходе от вас:
1. Плугин и его исходники и собранный на его базе экспорт для Android и двух архитектур(armv7 и arm64v8).
2. Скомпилированный редактор Godot под Windows x64, с требуемым плугином.
Как закончите написание плугина, перед выдачей мне результата сделаете git pull и компилируйте выход.
Нужно тоже самое для Одноклассников
Applications 1
-
94 4 0 Напишите мне в личку обсудим цену и сроки выполнения. Как я понял нужно написать скрипт на с++ чтоб свзящать уже готовый интерфейс с GODOT.
Current freelance projects in the category C & C++
Reverse engineering of console utilities for querying SSD controllers (Flash ID)1. Purpose of the work Extraction of the application programming interface (API) for interaction with SSD/NVMe controllers from the provided set of console utilities (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron, etc.). The result should be working code in C/C++… C & C++, Desktop Apps ∙ 1 day 6 hours back ∙ 5 proposals |
Development of a Minecraft Java Seed Map / Seed Viewer for the websiteDevelopment of Minecraft Java Seed Map / Seed Viewer for the websiteProject Description A browser-based tool Minecraft Java Seed Map / Seed Viewer needs to be developed, which will work on our website and allow the user to enter a seed from Minecraft Java Edition and view an… C & C++, HTML & CSS ∙ 1 day 13 hours back ∙ 13 proposals |
Comparative analysis of the effectiveness of custom software (v2.2-field) and reference software (Meshtastic v2.x)
22 USD
Comparative analysis of the effectiveness of custom software (v2.2-field) and reference software (Meshtastic v2.x) on the identical hardware platform (ESP32 + SX1268, 2W) based on the criteria of range, throughput, link stability, and power consumption. Conduct tests with… C & C++, C# ∙ 5 days 20 hours back ∙ 2 proposals |
Consultation and audit of the current project on Odoo 19 Community EditionWe are looking for an Odoo Developer — a solo developer with experience in Odoo 19 Community Edition, including using Claude Code. We need a specialist who has successfully implemented projects in Odoo and practical experience in development using Claude Code. Important: we only… C & C++, Javascript and Typescript ∙ 8 days 21 hours back ∙ 8 proposals |
Software development for Arduino (RF modules 3–7.5 GHz, automatic frequency scanning)It is necessary to develop a system on Arduino for the automatic search of active analog video signals and the automatic tuning of the transmitter to the detected frequency.It is planned to use three separate transceiver modules: 3000–4200 MHz; 4900–6000 MHz; 6100–7500… C & C++, Embedded Systems & Microcontrollers ∙ 9 days 22 hours back ∙ 4 proposals |
