Я использую в своем приложении admob interstitial, и у меня очень фатальная проблема. Через некоторое время приложение выполнит sh скачок без ошибок.
Я использую баннер admob внутри промежуточной рекламы. и у меня возникает вот такая ошибка, когда я использую промежуточную рекламу.
мое состояние:
implementation 'com.google.android.gms:play-services-ads:19.1.0'
compileSdkVersion 28
multiDexEnabled true
некоторые из моих ошибок на android панели запуска студии:
E/art: invalid stream - problem with parameter iterator in /data/data/com.google.android.gms/app_chimera/m/0000001f/dl-AdsFdrDynamite.integ_21460000004.apk for method void com.google.android.gms.ads.nonagon.ad.event.p.a(java.lang.Object)
и в последней ошибке:
W/BindingManager: Cannot call determinedVisibility() - never saw a connection for the pid: 31485
W/Ads: #004 The webview is destroyed. Ignoring action.
W/Ads: #004 The webview is destroyed. Ignoring action.
#004 The webview is destroyed. Ignoring action.
D/StateSaver: onDestroy() called with: savedState = [null]
D/DynamitePackage: Instantiating com.google.android.gms.ads.ChimeraAdManagerCreatorImpl
I/Ads: This request is sent from a test device.
W/Ads: #004 The webview is destroyed. Ignoring action.
#004 The webview is destroyed. Ignoring action.
W/Ads: #004 The webview is destroyed. Ignoring action.
W/Ads: #004 The webview is destroyed. Ignoring action.
W/ScreenOrientationListener: Removing an inexistent observer!
I/art: Explicit concurrent mark sweep GC freed 76971(4MB) AllocSpace objects, 39(1242KB) LOS objects, 25% free, 46MB/62MB, paused 2.487ms total 237.228ms
W/google-breakpad: ### ### ### ### ### ### ### ### ### ### ### ### ###
Chrome build fingerprint:
1
1
cdd40672-1595-45ee-a623-1018fca0e2a6
### ### ### ### ### ### ### ### ### ### ### ### ###
E/chromium: ### WebView Version 42.0.2311.137 (code 2311137)
A/libc: Fatal signal 11 (SIGSEGV), code -6, fault addr 0x7afd in tid 31485 (pers.myplayer)
и в другом случае: я запустил приложение в Debug (Shift + F9), он находит ошибку на нативном. но они не могут показать это, потому что это было из библиотеки admob.
MyCode:
@Override
protected void initViews(View rootView, Bundle savedInstanceState) {
super.initViews(rootView, savedInstanceState);
prefs = getActivity().getSharedPreferences("org.andlopers.tplayer_preferences", MODE_PRIVATE);
fullid = prefs.getString("fullid", "");
aplayer(rootView);
}
public void aplayer(View rootView) {
try {
new Handler().postDelayed(
new Runnable() {
@Override
public void run() {
if (getadac().equals("1") || getadac().equals("")) {
String appid = prefs.getString("appid", "");
String bannerid = prefs.getString("bannerid", "");
String fullid = prefs.getString("fullid", "");
if (!appid.equals("") || !bannerid.equals("") || !fullid.equals("")) {
MobileAds.initialize(getActivity(), appid);
List<String> testDeviceIds = Arrays.asList("C009A2721C419BF15906A3218869F2BC");
RequestConfiguration configuration =
new RequestConfiguration.Builder().setTestDeviceIds(testDeviceIds).build();
MobileAds.setRequestConfiguration(configuration);
ableua = new AdView(getActivity());
ableua.setAdSize(AdSize.BANNER);
ableua.setAdUnitId(bannerid);
AdRequest adRequest = new AdRequest.Builder().build();
ableua.loadAd(adRequest);
layAbd = (LinearLayout) rootView.findViewById(R.id.record_banner);
layAbd.addView(ableua);
LinearLayout top_layad = (LinearLayout) rootView.findViewById(R.id.top_layad);
ableua.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
top_layad.setVisibility(View.VISIBLE);
top_layad.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
top_layad.setVisibility(View.GONE);
}
});
}
});
fulldialogload();
}
}
}
}, 100);
} catch (Exception e) {
}
}
public void fulldialogload() {
if (checktimes(0)) {
fulltubs = new InterstitialAd(getActivity());
fulltubs.setAdUnitId(fullid);
AdRequest adRequestFull = new AdRequest.Builder().build();
fulltubs.loadAd(adRequestFull);
fulltubs.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
// Load the next interstitial.
fulltubs.loadAd(new AdRequest.Builder().build());
}
});
}
}
@Override
public void
onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (fulltubs != null && fulltubs.isLoaded()) {
SimpleDateFormat sdf = new SimpleDateFormat("HHmm", Locale.ENGLISH);
String currentDateandTime = sdf.format(new Date());
setAdcheckTimes(currentDateandTime);
fulltubs.show();
}
}