2017-02-03 8 views
1

私はアンドロイドアプリでネイティブカスタムテンプレート広告を実装していますが、私のビューでカスタムテンプレート広告を取得してレンダリングするためのコードは次のとおりです。ユーザーがdfpポータルで設定したクリックスルーURLを使用して広告をクリックしたときにウェブビューを開きたいのですが、そのURLを取得する方法やドキュメントは表示されません。ネイティブカスタムテンプレート広告のクリックスルーURLを取得する方法

private void fetchAd(final View convertView, final int position) { 

     templateAdLoadedListener = new NativeCustomTemplateAd.OnCustomTemplateAdLoadedListener() { 
        @Override 
        public void onCustomTemplateAdLoaded(NativeCustomTemplateAd nativeCustomTemplateAd) { 
         populateAd(nativeCustomTemplateAd, convertView); 
         nativeCustomTemplateAd.recordImpression(); 
        } 
       }; 

       templateAdClickListener = new NativeCustomTemplateAd.OnCustomClickListener() { 
        @Override 
        public void onCustomClick(NativeCustomTemplateAd nativeCustomTemplateAd, String s) { 
         Intent intent = new Intent(context, AboutWebActivity.class); 
         intent.putExtra("TYPE", "AD"); 
         intent.putExtra("TITLE", nativeCustomTemplateAd.getText("Advertiser")); 
         Log.d(TAG, "onCustomClick: s = " + s); 
         intent.putExtra("URL","url will go here"); 
         context.startActivity(intent); 
        } 
       }; 
       adLoader = new AdLoader.Builder(context, ad_unit_id) 
         .forCustomTemplateAd(ad_template_id, templateAdLoadedListener, templateAdClickListener) 
         .withAdListener(new AdListener() { 
          @Override 
          public void onAdFailedToLoad(int errorCode) { 
           Log.d(TAG, "onCustomTemplateAdFailedToLoad: error code"); 
          } 
         }).build(); 

       adLoader.loadAd(new PublisherAdRequest.Builder().build()); 
      } 
     }; 
} 

答えて

0

DFPサーバーから広告アセットとしてテキストとしてクリックスルーURLを送信することで解決しました。

あなたは今、あなたはすべての操作を実行するには、この値を使用することができます方法

CharSequence calltoactionURL = nativeCustomTemplateAd.getText(AdConstants.DFP_CALL_TO_ACTION_URL);

を使用して、そのURLへの参照を取得することができます。

関連する問題