1

無料版のAndroidウィジェットを作成していますが、その中に広告を表示したいと思います。しかし、私たちが次のようなxmlにGoogleAdsenseを追加すると

   <com.google.ads.GoogleAdView
    android:id="@+id/adview"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

次のエラーが表示されます。(jarファイルも追加しました)

09-04 11:14:00.418: W/AppWidgetHostView(2561): updateAppWidget couldn't find any view, using error view
09-04 11:14:00.418: W/AppWidgetHostView(2561): android.view.InflateException: Binary XML file line #16: Error inflating class com.google.ads.GoogleAdView
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:576)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.widget.RemoteViews.apply(RemoteViews.java:930)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.appwidget.AppWidgetHostView.updateAppWidget(AppWidgetHostView.java:219)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.appwidget.AppWidgetHost.updateAppWidgetView(AppWidgetHost.java:250)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.appwidget.AppWidgetHost$UpdateHandler.handleMessage(AppWidgetHost.java:73)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.os.Handler.dispatchMessage(Handler.java:99)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.os.Looper.loop(Looper.java:123)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.app.ActivityThread.main(ActivityThread.java:4627)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at java.lang.reflect.Method.invokeNative(Native Method)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at java.lang.reflect.Method.invoke(Method.java:521)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at dalvik.system.NativeStart.main(Native Method)
09-04 11:14:00.418: W/AppWidgetHostView(2561): Caused by: java.lang.ClassNotFoundException: com.google.ads.GoogleAdView in loader dalvik.system.PathClassLoader[.]
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.createView(LayoutInflater.java:466)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565)
09-04 11:14:00.418: W/AppWidgetHostView(2561):  ... 15 more

他の方法でAndroidウィジェットに広告を表示することは可能であると誰もが示唆しています。前もって感謝します。

4

2 に答える 2

6

ウィジェットはRemoteViews画面を表示するために使用します。RemoteViews通常、APK全体がロードされていなくても、すべての表示クラスが使用可能である必要があります。http://developer.android.com/guide/topics/appwidgets/index.html#CreatingLayoutは、使用できるビュークラスを示しています。現在、カスタムビューは使用できないため、現在、を使用する方法はありませんcom.google.ads.GoogleAdView。ウィジェット。

于 2012-09-04T06:14:29.817 に答える
1

実際には、ウィジェットにカスタムネイティブ広告を表示することができます。バナー広告インタースティシャル広告の代わりに、特定の種類のビューを使用するように強制することはありません。

ただし、このような場合、他に2つの問題が発生することに注意してください。

  1. アプリは、広告コンテンツの表示、クリックの処理、およびそれらについてのSDKへの通知を担当します。
  2. ウィジェット固有の問題。アプリがシステムによって強制終了されると、コンテンツデータオブジェクトが破壊される可能性があることに注意してください。ただし、ウィジェットの広告コンテンツは引き続き表示されます。これは、アプリの誤動作につながる可能性があります。

したがって、解像度では:

ウィジェットで一般的な広告を使用できないように見えることに同意します。ただし、ユーザーの操作やSDKへのクリックのレポートを必要としない画像やテキストを表示するだけでよい場合は、カスタムネイティブ広告を使用して、そのコンテンツをウィジェットに統合することができます。

于 2016-03-02T01:07:52.173 に答える