2014-11-03 76 views
0

我正在嘗試在我的應用中整合Tapjoy提供的牆。Tapjoy viewDidClose被調用兩次

我的代碼:

// Get notifications when Tapjoy views open or close. 
    TapjoyConnect.getTapjoyConnectInstance().setTapjoyViewNotifier(new TapjoyViewNotifier() 
    { 
     @Override 
     public void viewWillOpen(int viewType) 
     { 
      TapjoyLog.i(TAG, "viewWillOpen: "); 
     } 

     @Override 
     public void viewWillClose(int viewType) 
     { 
      TapjoyLog.i(TAG, "viewWillClose: "); 
     } 

     @Override 
     public void viewDidOpen(int viewType) 
     { 
      TapjoyLog.i(TAG, "viewDidOpen: "); 
     } 

     @Override 
     public void viewDidClose(int viewType) 
     { 
      TapjoyLog.i(TAG, "viewDidClose: "); 

      TapjoyConnect.getTapjoyConnectInstance().getTapPoints(new TapjoyNotifier() 
      { 

       @Override 
       public void getUpdatePointsFailed(String arg0) 
       { 
        System.out.println(arg0); 

       } 

       @Override 
       public void getUpdatePoints(String arg0, int arg1) 
       { 

        System.out.println(arg0); 
        System.out.println(arg1); 
        if(arg1 > 0) 
        { 
         AppResources.setValueToShredPrefrences("gold_coins",   
    AppResources.gold_coins + arg1); 
        } 
        AppResources.ShowToast(m_context, "gold coin earned: " + arg1, Toast.LENGTH_SHORT); 


       } 
      }); 

      finish(); 

     } 
    }); 

的問題是,裏面viewDidClose方法getUpdatePoints總是返回1,這意味着用戶獲得1分即使用戶沒有做任何事情。

此外,當用戶做了一些事情之後,像viewDidClose之類的事情調用兩次,讓用戶得到兩分,當他應該得到1分。

這是測試場景,我很樂意看到一個整合Tapjoy提供牆壁的例子,謝謝!

回答

1

(不能發表,因爲低信譽評論)

我已經得到了同樣的問題,無論是在viewDidClose被調用兩次,getTapPoints始終返回1。然而,我注意到,它返回0,直到該設備完成至少一個測試報價。

我會更新這個答案,如果我發現別的東西。

更新1

這兩個問題已在移動到另一臺設備消失。這導致我相信,a)我使用的設備給出錯誤的標識符/否則不被支持,或者b)測試模式當前被破壞。

更新2

使測試模式,用於該第二設備後,viewDidClose再次被調用兩次。對於一個單位的貨幣,測試報價已被添加到以getTapPoints發送的總數中(所以現在每次關閉視圖時,我都會得到4而不是1,就像我在其他設備上那樣),因爲我已經完成了3個單位)

總而言之,viewDidClose被調用兩次的問題似乎是由測試模式引起的,getTapPoints的值爲1是測試報價僅計數的結果一次達到您的總可贖回價值。

更多信息

重讀你的問題,你似乎誤解,當你調用getTapPoints是被髮回的價值。這是該設備的累計總贏得積分,而不是自上次被叫後獲得的積分數。因此,如果您沒有完成任何優惠,您將獲得與以前相同的價值。我通常在我的應用程序中保留前一個值的值,然後僅向用戶提供該值與getTapPoints返回的值之間的差異。

所有這些都是在tapjoyconnectlibrary的10.1.1版本中完成的。