我的集成了Chartboost sdk的应用出现了下一个错误: 我的应用可以正常运行并显示静态和视频插页式广告,我可以多次启动我的应用,并且始终可以正常显示广告,但是当我退出应用并关闭Android应用时,如果使用Android最新按钮,则我的应用会在启动时崩溃(我初始化Chartboost SDK在主活动应用启动时),但如果我退出Chartboost SDK,则不会发生此行为。您的应用程序也会发生同样的事情吗? 看到下面的图片,谢谢。
Eclipse错误日志:
FATAL EXCEPTION: main
Process: com.ticogames.relaxing.help, PID: 21839
java.lang.NoSuchMethodError: No static method checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I in class Landroid/support/v4/content/ContextCompat; or its super classes (declaration of 'android.support.v4.content.ContextCompat' appears in /data/app /com.ticogames.relaxing.help-1/base.apk)
at com.moat.analytics.mobile.cha.n.ͺ(SourceFile:5303)
at com.moat.analytics.mobile.cha.n.ʽ(SourceFile:178)
at com.moat.analytics.mobile.cha.n.ˎ(SourceFile:144)
at com.moat.analytics.mobile.cha.n.<init>(SourceFile:81)
at com.moat.analytics.mobile.cha.n.ˏ(SourceFile:63)
at com.moat.analytics.mobile.cha.f.ˎ(SourceFile:108)
at com.moat.analytics.mobile.cha.t$2$2.ˏ(SourceFile:135)
at com.moat.analytics.mobile.cha.t$d$5.run(SourceFile:245)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5421)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
答案 0 :(得分:0)
该错误消息涉及支持库,该支持库必须为>=
版本23.0.0
。此问题可以通过模块级build-gradle
及其相关性来解决:
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:support-v4:27.1.1'
,并且必须实现以下方法,才能转发接口方法:
@Override
public void onStart() {
super.onStart();
Chartboost.onStart(this);
}
@Override
public void onResume() {
super.onResume();
Chartboost.onResume(this);
}
@Override
public void onPause() {
super.onPause();
Chartboost.onPause(this);
}
@Override
public void onStop() {
super.onStop();
Chartboost.onStop(this);
}
@Override
public void onDestroy() {
super.onDestroy();
Chartboost.onDestroy(this);
}
@Override
public void onBackPressed() {
// If an interstitial is on screen, close it.
if (Chartboost.onBackPressed()) {
return;
} else {
super.onBackPressed();
}
}
here基本上已经详细解释了...例如。尚不支持Android API级别27-因此,API级别26是可用的最高级别(但仍然可以使用那些27.1.1
支持库)。
在每种情况下,堆栈跟踪和错误描述都根本不匹配。