1

我的 Android 项目中有一个 jar 库,并且在运行应用程序时开始出现很多错误:

VFY: unable to find class referenced in signature <...>
Failed resolving Lcom/mad/ad/AdWhirlMadAdapter; interface 835 'Lcom/adwhirl/AdWhirlLayout$AdWhirlInterface;'
Link of class 'Lcom/mad/ad/AdWhirlMadAdapter;' failed

我见过很多类似的问题,但解决方案是针对 Eclipse 的,我使用的是 IntelliJ IDEA 12。如何解决?

4

2 回答 2

1

引自 adwhirl.com

重要通知:我们将于 2013 年 9 月 30 日停用 AdWhirl。可以使用 AdMob 中介来管理广告网络中介,这是一款免费且强大的工具,具有网络级报告、国家级分配和支持更多广告格式等功能。在此处注册并按照以下步骤将您的展示位置导入 AdMob。

MADNET 不再支持 AdWhirl 中介,请使用 AdMob 中介。

  • 可以找到新版本的库 - MADNET SDK 5187v
  • 用户指南 - MADNET SDK 指南 5187v(您可以评论此文档)。
  • 请注意广告空间生命周期(在指南中)的变化。
  • 从您的清单中删除 OpenUDID 和 MadProvider。
于 2013-07-22T04:38:48.617 回答
1

如果您使用 proguard 来构建您的应用程序,您应该将 MADNET SDK 的类保持为公共的。为此,只需将下一个字符串添加到您的 proguard 文件中:

-keep public class com.mad.** {
  public protected *;
}

此外,如果您使用 AdMob 或 AdWhirl 中介,请将其添加到 proguard 排除中,例如:

-keep public class com.google.ads.** {
  public protected *;
}

请同时检查 AdMob 中介的 xml 设置

<com.mad.ad.AdMobFloatingLayout
     xmlns:mad="http://schemas.android.com/apk/lib/com.mad.ad"
     xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
     android:id="@+id/adFloatingLayout"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"

     mad:admobExtraLabel = "mAdtestevent"
     ads:adSize="BANNER"       
     ads:adUnitId="e1a33043e60c4126">

     <ListView
         android:id="@android:id/list"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         />
 </com.mad.ad.AdMobFloatingLayout>

此处: mad:admobExtraLabel - customEvent 的标签,在 AdMob 网站上指定 ads:adSize - Google 广告的 AdSize。 ads:adUnitId - 您的中介 ID。

可以通过skype-call,加速解决问题吗?

于 2013-07-23T07:35:10.410 回答