-
Постов
63 -
Зарегистрирован
-
Посещение
-
Победитель дней
10
Весь контент CyberStorm
-
Вышла новая версия на днях. Список улучшений: https://blogs.embarcadero.com/announcing-the-availability-of-rad-studio-10-4-2-sydney-release-2/ Это хорошая новость для всех програмистов!
-
Решил покодить на IOS Купил ? Rad Studio 10.4.1 На том же сайте купил VMware + macOS Catalina 10.15.7 На Маке поставил последний Xcode + PAServer последний Пытаюсь запустить пустое приложение, но оно не запускается Чуется мне, что проблема в последнем Xcode. Верно ли моё предположение? А какой тогда нужно использовать?
-
Разработка кросплатформенных приложений в одном проекте
CyberStorm опубликовал тема в Основная информация
Я пишу один проект под несколько платформ. Нашел функцию TOSVersion - она определяет на какой платформе запущена программа. Windows или Android например. Пишу код типа: if TOSVersion=Windows then begin КОД end; if TOSVersion=Android then begin КОД end; Сейчас делаю топорно, если компилирую проект под виндой - то все что касается Андроида и других платформ прячу в фигурный скобки комментариев { } типа там и нет ничего. И наоборот - нужна другая платформа, убираю код в комментарии и работаю с другим блоком. Получается что то типа такого: if TOSVersion=Windows then begin КОД end; { if TOSVersion=Android then begin КОД end; } Дело в том, что под Windows есть некоторые рабочие функции и процедуры, которых нет в Андроиде, и наоборот. И при сборке проекта компилятор ругается на чужие функции и процедуры. Вопрос. А как сделать чтоб компилятор не ругался на чужеродный_для_этой_платформы_код. Что выбирают професиональные программисты на Rad Studio? -
Не слышал про курсы, есть хорошая книга Всеволода Леонова "Обучение мобильной разработке на Delphi", данный форум, и неплохой телеграм-канал https://t.me/TFMXGods где сидят гуру которые в одно-момент отвечают на все вопросы (что ставит под сомнение полезность этого форума).
-
Обычно когда я пишу вопрос свой на форуме, я сам сразу нахожу решение и топик приходится закрывать не публикуя. Но вот щас пишу, и ничего в голову не приходит всё равно. Пишу сетевой чатик на RadStrudio 1.4, нашел на просторах пример и все работает: Код клиента: form1.IdTCPClient1.Connect; form1.IdTCPClient1.Socket.WriteLn('HELLO'); form1.IdTCPClient1.Socket.ReadLn(s); Код сервера (там где Execute): AContext.Connection.Socket.ReadLn(s); AContext.Connection.Socket.WriteLn('TEST'); AContext.Connection.Socket.Дисконнект; Все так предельно просто и всё работает Но я вот решил оптимизировать приложение, и подумал - а не напряжно ли серверу постоянно обрабатывать Коннекты, а затем делать Дисконнекты на каждый запрос? Подумал, и сделал при старте клиента form1.IdTCPClient1.Connect; а у сервера убрал постоянный AContext.Connection.Socket.Дисконнект; Вот тут уже не все так гладко, при установке соеденения прием-передача строки производиться нормально, а затем передаются только пустые строки. Где ошибка?
-
Все нормально деплоится и запускается, на 32 и на 64. Сам тестирую устройства на Android 6. Было пару раз когда приложения не запускались и крашились, когда я забыл обновить библиотеки: И когда использовал InAppPurchase, решение нашли тут: А так всё работает и публикуется.
-
Странно, что никто не обратил внимание на важную для всех делфистов статью на хабре: https://habr.com/ru/post/481534/
-
Это вроде признанная(непризнанная) ошибка последней версии, тема на офф. форуме: https://community.idera.com/developer-tools/platforms/f/android-platform/70741/inapppurchase У себя пока сделал так (можно купить возможность убрать рекламу): try form1.InAppPurchase1.ApplicationLicenseKey:=key; form1.InAppPurchase1.ProductIDs.Add('no_banner'); form1.InAppPurchase1.SetupInAppPurchase; form1.InAppPurchase1.QueryProducts; except form1.BannerAd1.Visible:=false; end; end; тобишь в 32битных приложениях все работает, а в 64битных пока нету рекламы и нет дохода Вообщем очень обидно, и когда ждать патча - неизвестно(((
-
/////////// реклама //////////////////// try BannerAd1.AdUnitID := bkey; BannerAd1.LoadAd; except on E : Exception do ShowMessage(E.Message); end; вот используйте, ошибку напишет
-
Нужно библиотеки почистить: Вот тут еще много написано:
-
Спасибо! Благодаря вашим наводкам наткнулся на инструкцию как собрать бандлы: http://docwiki.embarcadero.com/RADStudio/Rio/en/Submitting_Your_Android_App_to_Google_Play Пришлось грузить гуглу зашифрованный ключ, пришлось помучаться (https://stackoverflow.com/questions/44103024/how-to-enable-google-play-app-signing) И теперь собираются полноценные рабочие приложения!
-
Привет всем! Используя Rad Studio 10.3.3 собрал 64-битное приложение для андроид, после загрузки на моём телефоне выдало такое: ИНТЕРЕСНО Посмотрел что у меня за телефон: Китайфон с 6-ым андроидом, AIDA показало такое: ИНТЕРЕСНО Предпологаю что мой процессор поддерживает 64-битные приложения, но сама OS установлена 32-битной ? Тогда вопрос, как мои остальные приложения из Google.Play обновляются? Если в октябре 32-ух битные приложения заблочили, и остались только 64-битные, то как оно всё работает? Всякие Яндекс.Такси, Вконтакте, Алиэкспресс. Или я чего-то не понимаю.
-
У Бровина в его роликах про FGX Native что-то похожее проскальзывало, все эти выравнивания по ширине-высоте, мне каж туда смотреть нужно. Но и даже без его компонентов я думаю можно забацать, но вручную обрабатывать координаты, размеры и положение картинок-карт.
-
Ответ: https://rutracker.org/forum/viewtopic.php?p=78350087#78350087 В: День добрый. У меня предыдущая версия (10.3.2). Нужно ли ее сносить перед установкой 10.3.3 ? О: Если новая версия отличается только последней цифрой, то нужно всегда, потому что она ставиться в ту же папку. А вот 10.3.3 и 10.4 можно будет ставить параллельно.
-
А стандартные библиотеки если использовать, типа System.Zip? zip: TZipFile; zip := TZipFile.Create; zip.Open(TPath.Combine(TPath.GetDocumentsPath, 'DATA.zip'), TZipMode.zmRead); zip.ExtractAll(TPath.GetDocumentsPath); zip.Close; zip.free;
-
А я помню когда-то вайбер при регистрации перехватывал мою смс-ку и код с неё брал как-то А заместо смс можно с сервера звонок отправлять, и его ловить как нибудь ?
-
В соседней ветке писали про обновление 32 битных приложений, и что нужно обращаться в тех.поддержку гугла - типа пояснить ситуацию и тогда разрешат обновлять 32-битные приложения. Возможно эта договоренность Google - Embarcadero касается и вновь публикуемых приложений. Лично я буду пробовать общаться с ними через пару месяцев, если конечно обновление студии не прилетит раньше.
- 3 ответа
-
- embarcadero
- delphi
-
(и ещё 2 )
C тегом:
-
Наверное нужно попробовать сделать Clean проекта и отдельно библиотек, у меня такая же беда была: