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

pie.o.my00

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

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

  • Посещение

Сообщения, опубликованные pie.o.my00

  1. Hi,

     

    I am trying to use Admob Rewarded Video on Delphi and found this solution https://enhance.co/documentation/native-android/rewarded-ads

     

    They have java connector and I converted this Jar library with Java2OP.exe to pascal. (files attached post)

    I can use basic java classes but I dont know how to use java procedures, I need help this level. can any one help me how can run this java example code on delphi.

    Thank you.

     

    This code working and showing rewarded video successful.

    if TJEnhance.JavaClass.isRewardedAdReady=true then
    begin
       TJEnhance.JavaClass.showRewardedAd(TJEnhance_RewardCallback.Wrap(TJEnhance.GetClsID));
    end;

     

    This is what I need to pascal

    if(Enhance.isRewardedAdReady()) {
        // The ad is ready, show it
        Enhance.showRewardedAd(new RewardCallback()
        {
            // Callbacks:
            @Override
            public void onRewardGranted(int rewardValue, RewardType rewardType)
            {
                if(rewardType == RewardType.ITEM)
                    writeLog("Reward granted (item)");
    
                else if(rewardType == RewardType.COINS)
                    writeLog("Reward granted (coins), value: " + rewardValue);
            }
    
            @Override
            public void onRewardDeclined()
            {
                writeLog("Reward declined");
            }
    
            @Override
            public void onRewardUnavailable()
            {
                writeLog("Reward unavailable");
            }   
        });    
    }

     

    Enhance-Connector.pas about TJEnhance_RewardCallback 

      JEnhance_RewardCallbackClass = interface(IJavaClass)
        ['{CC51ED09-CBAB-43A9-A7C7-73675C3B6F55}']
      end;
    
      [JavaSignature('co/enhance/Enhance$RewardCallback')]
      JEnhance_RewardCallback = interface(IJavaInstance)
        ['{46C10767-D981-4109-9D96-6B9C43900405}']
        procedure onRewardDeclined; cdecl;
        procedure onRewardGranted(P1: Integer; P2: JEnhance_RewardType); cdecl;
        procedure onRewardUnavailable; cdecl;
      end;
      TJEnhance_RewardCallback = class(TJavaGenericImport<JEnhance_RewardCallbackClass, JEnhance_RewardCallback>) end;
    
      JEnhance_RewardTypeClass = interface(JEnumClass)
        ['{BE09443C-986F-4419-9C51-30E565A4648D}']
        {class} function _GetCOINS: JEnhance_RewardType; cdecl;
        {class} function _GetITEM: JEnhance_RewardType; cdecl;
        {class} function valueOf(P1: JString): JEnhance_RewardType; cdecl;
        {class} function values: TJavaObjectArray<JEnhance_RewardType>; cdecl;
        {class} property COINS: JEnhance_RewardType read _GetCOINS;
        {class} property ITEM: JEnhance_RewardType read _GetITEM;
      end;
    
      [JavaSignature('co/enhance/Enhance$RewardType')]
      JEnhance_RewardType = interface(JEnum)
        ['{CA724C25-BB1E-41D7-B106-CBA3E07077E1}']
      end;
      TJEnhance_RewardType = class(TJavaGenericImport<JEnhance_RewardTypeClass, JEnhance_RewardType>) end;

     

     

     

    Enhance-Connector.rar

×
×
  • Создать...