2016-10-10 3 views
1

Ich habe eine App entwickelt. In dem Level muss ein Spieler ein belohntes Video kaufen oder ansehen. Um einen belohnten Videoplayer anzusehen, müssen Sie eine Taste drücken oder tippen. aber wenn ich einen Knopf drücke, passiert nichts !!belohnte Videoanzeige zeigt keine Einheit Android-Spiel

Ich habe eine Datei „AdManager.cs“ erstellt und der Code ist wie folgt:

public class AdManager : MonoBehaviour { 
    // before codes 
    . 
    . 
    . 
    //I have created an instance to admanager 
    public static AdManager Instance {set;get;} 
    . 
    . 
    . 
    . 
    void Awake(){ 
    Instance=this; 
    } 
    . 
. 
. 
. 
    //few more codes 
. 
. 
. 
    public void showRewardBasedVideoAd(){ 
     #if UNITY_ANDROID 
     string adUnitId = "xxxxxxxxxxxxxxxxxxxxxxx"; 
     #elif UNITY_IPHONE 
     string adUnitId = "INSERT_IOS_BANNER_AD_UNIT_ID_HERE"; 
     #else 
     string adUnitId = "unexpected_platform"; 
     #endif 
     rewardBasedVideoAd = RewardBasedVideoAd.Instance; 

     rewardBasedVideoAd.OnAdLoaded += HandleOnrewardBasedVideoAdLoaded; 

     rewardBasedVideoAd.OnAdFailedToLoad +=  HandleOnrewardBasedVideoAdFailedToLoad; 

     rewardBasedVideoAd.OnAdOpening += HandleOnrewardBasedVideoAdOpening; 

     rewardBasedVideoAd.OnAdRewarded += HandleOnrewardBasedVideoAdRewarded; 
     rewardBasedVideoAd.OnAdClosed += HandleOnrewardBasedVideoAdClosed; 

     rewardBasedVideoAd.OnAdLeavingApplication += HandleOnrewardBasedVideoAdLeavingApplication; 

     AdRequest request = new AdRequest.Builder().Build(); 
     rewardBasedVideoAd.LoadAd (request, adUnitId); 

     if (rewardBasedVideoAd.IsLoaded()) { 
     rewardBasedVideoAd.Show(); 
     } else { 
     Debug.Log ("Rewarded Video Ad is not Yet ready!!!!"); 
     } 
     } 

     public void HandleOnrewardBasedVideoAdFailedToLoad(object sender, AdFailedToLoadEventArgs args) 
     { 
     print("Interstitial Failed to load: " + args.Message); 

     } 
     public void HandleOnrewardBasedVideoAdLoaded(object sender, EventArgs args) 
     { 
     print("OnAdLoaded event received."); 

     } 
     public void HandleOnrewardBasedVideoAdOpening(object sender, EventArgs args) 
     { 
     print("OnAdLoaded event received."); 

     } 
     public void HandleOnrewardBasedVideoAdClosed(object sender, EventArgs args) 
     { 
     print("OnAdLoaded event received."); 

     } 
     public void HandleOnrewardBasedVideoAdLeavingApplication(object sender, EventArgs args) 
     { 
     print("OnAdLoaded event received."); 

     } 
     public void HandleOnrewardBasedVideoAdRewarded(object sender, Reward args) 
     { 
     string type = args.Type; 
     double amount = args.Amount; 
     print("User rewarded with: " + amount.ToString() + " " + type); 
     totalPoints += 100; 
     Debug.Log("100granted"); 
     } 
    // rest codes 
    } 

ich diese App in der Einheit entwickle und für Android-Plattform. Ich habe in admob belohnt Video AdUnit Abschnitt Unityad Mediation erstellt. Es gibt eine Markierung, die ausstehend ist. Ich konnte nicht herausfinden, wo das Problem liegt.

Führen Sie mich in dieser Hinsicht !!

Antwort

0

Wenn Sie nur ein Netzwerk zum Anzeigen von belohntem Video verwenden, können Sie einfach Unity ADS SDK verwenden, ohne dass etwas dazu gehört. Ich hatte dasselbe Problem und nach ein paar Monaten gab ich auf. Ich verwendete Admob für Banner/Interstitials und UnityAds für belohntes Video und es funktioniert super.

+0

Yeah Alter. Ich habe dasselbe gemacht. Ich habe auch aufgegeben, admob belohnt und interstitial/banner von admob und belohnen Video von der Einheit. – user3487813