我正在尝试将Mopub for Android集成到我的Unity项目中。我按照这里的说明进行操作:
https://github.com/mopub/mopub-unity-android-plugin
使用Android支持构建mopub sdk,然后将其添加到我的Unity项目中。我已经将相应的条目添加到我的AndroidManifest.xml中:
<activity android:name="com.mopub.mobileads.MoPubActivity"
android:configChanges="keyboardHidden|orientation|screenSize"/>
<activity android:name="com.mopub.mobileads.MraidActivity"
android:configChanges="keyboardHidden|orientation|screenSize"/>
<activity android:name="com.mopub.common.MoPubBrowser"
android:configChanges="keyboardHidden|orientation|screenSize"/>
<activity android:name="com.mopub.mobileads.MraidVideoPlayerActivity"
android:configChanges="keyboardHidden|orientation|screenSize"/>
<activity android:name="com.millennialmedia.android.MMActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation" />
<activity android:name="com.millennialmedia.android.VideoPlayer" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:configChanges="keyboardHidden|orientation|keyboard" />
<activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
<activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" />
...
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
该项目构建良好,但当我在设备上运行时,我在请求插页式广告或横幅广告时发生了崩溃。这是logcat:
E/AndroidRuntime(15901): FATAL EXCEPTION: main
E/AndroidRuntime(15901): java.lang.Error: FATAL EXCEPTION [main]
E/AndroidRuntime(15901): Unity version : 4.6.1f1
E/AndroidRuntime(15901): Device model : samsung GT-I9300
E/AndroidRuntime(15901): Device fingerprint: samsung/m0xx/m0:4.3/JSS15J/I9300XXUGNH4:user/release-keys
E/AndroidRuntime(15901):
E/AndroidRuntime(15901): Caused by: java.lang.Error: Unresolved compilation problem:
E/AndroidRuntime(15901): NonNull cannot be resolved to a type
E/AndroidRuntime(15901):
E/AndroidRuntime(15901): at com.mopub.common.util.ManifestUtils.checkWebViewActivitiesDeclared(ManifestUtils.java:51)
E/AndroidRuntime(15901): at com.mopub.mobileads.MoPubView.<init>(MoPubView.java:64)
E/AndroidRuntime(15901): at com.mopub.mobileads.MoPubView.<init>(MoPubView.java:58)
E/AndroidRuntime(15901): at com.mopub.mobileads.MoPubUnityPlugin$1.run(MoPubUnityPlugin.java:43)
E/AndroidRuntime(15901): at android.os.Handler.handleCallback(Handler.java:730)
E/AndroidRuntime(15901): at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(15901): at android.os.Looper.loop(Looper.java:176)
E/AndroidRuntime(15901): at android.app.ActivityThread.main(ActivityThread.java:5419)
E/AndroidRuntime(15901): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(15901): at java.lang.reflect.Method.invoke(Method.java:525)
E/AndroidRuntime(15901): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046)
E/AndroidRuntime(15901): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862)
E/AndroidRuntime(15901): at dalvik.system.NativeStart.main(Native Method)
I/ActivityManager( 2344): Notify an ApplicationCrash
我尝试过使用mopub Unity插件附带的示例Unity场景,并且发生了同样的事情。看看checkWebViewActivitiesDeclared here给了我一些线索,说明我的活动可能有问题,但我看不出我在做什么错误。
答案 0 :(得分:0)
我对Android不是很熟悉,但有一句话说:
NonNull无法解析为类型
所以,它可能是崩溃的根源。
您是否尝试导入: android-support-annotations.jar
?
尝试导入android-support-annotations.jar
。它应解决NonNull。