java LeadBolt Ad集成到AndEngine中
我正在尝试将leadbolt的“应用程序广告”和“应用程序通知”集成到我用AndEngine制作的游戏中
当我开始游戏时,我会出现以下错误:
07-09 11:42:16.566: D/LBAdController(1262): org.json.JSONException: No value for notificationtype
07-09 11:42:16.566: D/LBAdController(1262): at org.json.JSONObject.get(JSONObject.java:354)
07-09 11:42:16.566: D/LBAdController(1262): at org.json.JSONObject.getString(JSONObject.java:510)
07-09 11:42:16.566: D/LBAdController(1262): at com.Leadbolt.AdController.setNotification(AdController.java:653)
07-09 11:42:16.566: D/LBAdController(1262): at com.Leadbolt.AdController.initialize(AdController.java:593)
07-09 11:42:16.566: D/LBAdController(1262): at com.Leadbolt.AdController.loadAd(AdController.java:1103)
07-09 11:42:16.566: D/LBAdController(1262): at ShogunArts.Tengu.TenguMain.onLoadEngine(TenguMain.java:152)
07-09 11:42:16.566: D/LBAdController(1262): at org.anddev.andengine.ui.activity.BaseGameActivity.onCreate(BaseGameActivity.java:61)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.ActivityThread.access$2300(ActivityThread.java:125)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.os.Handler.dispatchMessage(Handler.java:99)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.os.Looper.loop(Looper.java:123)
07-09 11:42:16.566: D/LBAdController(1262): at 安卓.app.ActivityThread.main(ActivityThread.java:4627)
07-09 11:42:16.566: D/LBAdController(1262): at java.lang.reflect.Method.invokeNative(Native Method)
07-09 11:42:16.566: D/LBAdController(1262): at java.lang.reflect.Method.invoke(Method.java:521)
07-09 11:42:16.566: D/LBAdController(1262): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-09 11:42:16.566: D/LBAdController(1262): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-09 11:42:16.566: D/LBAdController(1262): at dalvik.system.NativeStart.main(Native Method)
及
07-09 11:42:20.715: D/LBAdController(1262): java.lang.NullPointerException
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.view.ViewConfiguration.get(ViewConfiguration.java:211)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.view.View.<init>(View.java:1814)
07-09 11:42:20.715: D/LBAdController(1262): at com.Leadbolt.AdController.displayAd(AdController.java:1393)
07-09 11:42:20.715: D/LBAdController(1262): at com.Leadbolt.AdController.access$2(AdController.java:1260)
07-09 11:42:20.715: D/LBAdController(1262): at com.Leadbolt.AdController$PollRequest.onPostExecute(AdController.java:2456)
07-09 11:42:20.715: D/LBAdController(1262): at com.Leadbolt.AdController$PollRequest.onPostExecute(AdController.java:1)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.os.AsyncTask.finish(AsyncTask.java:417)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.os.AsyncTask.access$300(AsyncTask.java:127)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:429)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.os.Handler.dispatchMessage(Handler.java:99)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.os.Looper.loop(Looper.java:123)
07-09 11:42:20.715: D/LBAdController(1262): at 安卓.app.ActivityThread.main(ActivityThread.java:4627)
07-09 11:42:20.715: D/LBAdController(1262): at java.lang.reflect.Method.invokeNative(Native Method)
07-09 11:42:20.715: D/LBAdController(1262): at java.lang.reflect.Method.invoke(Method.java:521)
07-09 11:42:20.715: D/LBAdController(1262): at com.安卓.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-09 11:42:20.715: D/LBAdController(1262): at com.安卓.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-09 11:42:20.715: D/LBAdController(1262): at dalvik.system.NativeStart.main(Native Method)
07-09 11:42:20.715: D/AdController(1262): Exception - null
我将以下代码添加到onLoadEngine方法中的主类中,并在onLoadComplete方法中对其进行了测试
public Engine onLoadEngine() { / public void onLoadComplete() {
myController1 = new AdController(getApplicationContext(), "277481637");
myController1.setAsynchTask(true);
myController1.loadNotification();
myController2 = new AdController(getApplicationContext(), "497251530");
myController2.loadAd();
//MORE CODE
return engine;
}
我创建了一个BootReceiver类(我使用了正确的packagename):
package <PackageName>;
import com.Leadbolt.AdController;
import 安卓.content.BroadcastReceiver;
import 安卓.content.Context;
import 安卓.content.Intent;
public class BootReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context arg0, Intent arg1) {
//register the notification on reboot
AdController mycontroller = new AdController(arg0, "277481637");
mycontroller.loadNotification();
}
}
并将此添加到我的清单中:
<uses-permission 安卓:name="安卓.permission.WAKE_LOCK" />
<uses-permission 安卓:name="安卓.permission.INTERNET" />
<uses-permission 安卓:name="安卓.permission.ACCESS_NETWORK_STATE"/>
<uses-permission 安卓:name="安卓.permission.READ_PHONE_STATE" />
<uses-permission 安卓:name="安卓.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission 安卓:name="安卓.permission.ACCESS_FINE_LOCATION"/>
<uses-permission 安卓:name="安卓.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
<uses-permission 安卓:name="安卓.permission.RECEIVE_BOOT_COMPLETED" />
<receiver 安卓:name=".BootReceiver">
<intent-filter>
<action 安卓:name="安卓.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
也许有人能帮我
# 1 楼答案
经过审查,我发现您的代码中的这一行是错误的:
无法在应用程序上下文中传递广告,您需要在活动中传递
在清单文件中,还包括以下行:
这一行需要出现在标记之前的清单文件中
希望这有帮助,你可以随时联系我们support@leadbolt.com如果您继续遇到问题