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

Android 64 ошибка "External exception 1."


Yuriy2606

Вопрос

Опубликовано (изменено)

Здравствуйте коллеги.

Переношу рабочий проект Android с 10.3.1 на 10.3.3. Уперся вот в такую проблему: в 64 бит приложение запускается, но спустя пару секунд выскакивает окно с надписью:

External exception 1.

Окно раз 10 мигает, после чего приложение падает. При этом постоянно закрывая окно можно поработать с приложением. В 32 бит полет нормальный.

Пока нашел только вот этот ответ о том, что это баг Rio. Отключение функции покупки в приложении убирает ошибку, но это не вариант.

Подскажите, как это решить?

Заранее спасибо за ответ.

Изменено пользователем Yuriy2606

Рекомендуемые сообщения

  • 0
Опубликовано (изменено)

Это вроде признанная(непризнанная) ошибка последней версии, тема на офф. форуме: 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битных пока нету рекламы :( и нет дохода :( 

Вообщем очень обидно, и когда ждать патча - неизвестно(((

 

Изменено пользователем CyberStorm
  • 0
Опубликовано

Да уж, не весело.

Я пока отключил эту функцию в 64 битной версии, тем более что у меня в приложении есть пополнение счета через LiqPay. InAppPurchase был альтернативным способом с 30% убытком :)

Спасибо за ответ.

  • 0
Опубликовано

Спасибо за ответ. Подробностей к сожалению нету, но выше я писал, ребята вроде бы разобрались что это баг. Если же у Вас работает, то я обязательно сниму стектрейс  и выложу сюда.

  • 0
  • Администраторы
Опубликовано

В общем исправление проблемы простое:

  1. Добавляете в свой проект файл FMX.Helpers.Android.pas.
  2. Находите там строчку:  
    FTimerHandle: Cardinal;
    Меняете ее на:
    FTimerHandle: TFmxHandle;
  3. Собираете и проблемы больше нет.
  • 0
Опубликовано

Ярослав, Вы как всегда - уровень "Бог". Решение работает. Огромное спасибо. ☝️?

Нужно тут оставить, может кому-то еще понадобится.

Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...