2012-04-07 15 views
1

ほとんどの人がAdDuplexにWP7アプリとゲームをクロスプロモーションすることを知っています。この広告エンジンは、XNAゲーム用とSilverlight用の2つのSDKを提供します。XNA-Silverlight WP7ハイブリッドアプリケーションでAdDuplexを使用する

私はSL-XNAハイブリッドゲームを持っており、そのような環境で広告を動作させる方法を見つけることができません。 XNAグラフィックス環境でSilverlight UIElementRendererを使用して広告をレンダリングできましたが、そのクリックを処理する方法が見つかりません。

<Grid Name="root" Margin="0,0,0,7000" Width="480" Height="90" Background="Black" > 
    <adduplex:AdControl x:Name="adDuplex" xmlns:adduplex="clr-namespace:AdDuplex;assembly=AdDuplex.AdControl.Silverlight" 
     AppId="10675" 
    /> 
</Grid> 

私は何人かの人々は、そのような環境でadDuplexを使用していることを聞いた:

これは、XAMLがどのように見えるかです。どのようにそれを行う上の任意のアイデア?ありがとう。

答えて

0

SL-XNAハイブリッドアプリ「Yaht 3D」でAdDuplexを使用していて問題はありません。あなたは正しいことをしているように思えます。 XAMLにSilverlightコントロールをドロップするだけです(自分のアプリケーションIDを使用して)。

 <adduplex:AdControl xmlns:adduplex="clr-namespace:AdDuplex;assembly=AdDuplex.AdControl.Silverlight" 
         AppId="1234"/> 

とAdDuplexコントロールは、あなたのためのクリックを処理する必要があります

elementRenderer.Render(); 
    spriteBatch.Begin(); 
    spriteBatch.Draw(elementRenderer.Texture, Vector2.Zero, Color.White); 
    spriteBatch.End(); 

あなたのOnDrawメソッド内の背後にあるコードでUIElementRendererを使用しています。

+0

ありがとうございました。私はこれを行い、私は実際に広告を見るが、ユーザーがクリックすると何も起こらない。あなたがやっているやり方はあなたに印象を与えるが、私が推測するのはクリックではない。 – xus

+0

クリックは正確に予想されます。おそらく、AdDuplexコントロールがクリックイベントを受信できないようにする何かがあります。おそらくXAMLに何かがありますか? XAMLを投稿できますか? – kelbicom

+0

ok、私はxamlを追加しただけで何が間違っているのか分かりません。ありがとう! – xus

1

完全なXAMLのコードを見ることなく、私は確かに言えませんが、手がかりはMargin = "0,0,0,7000"にあります。私の推測では、実際に配置されている場所とは異なる場所にAdDuplexコントロールを描画しています。

あなたはこの

renderer = new UIElementRenderer(adDuplex, 480, 90); 

ようUIElementRender何かを初期化し、その問題を説明するだろう。この

renderer.Render(); 
    spriteBatch.Begin(); 
    spriteBatch.Draw(renderer.Texture, Vector2.Zero, Color.White); 
    spriteBatch.End(); 

のように描画されている場合。代わりにAdDuplexコントロールでMargin = "0"(ページに表示されていることを確認)を設定し、ページのルート要素を使用してUIElementRendererを初期化します。デフォルトでは、これは「ルート」と呼ばれるグリッドですが、これを別のものに変更した可能性があります。

renderer = new UIElementRenderer(root, 480, 800); 

描画コードは上記と同じである必要があります。 AdDuplexコントロールは実際のコントロールと同じ場所に描画され、それをタップするとWebブラウザが起動するはずです。

各フレームに480,800ビットマップを描画したくない場合は、このソリューションをtweekしたいかもしれませんが、少なくともそれが問題を修正するかどうかテストします。

関連する問題