接mbridge 1.0.2(3)
This commit is contained in:
parent
7c34021efd
commit
e81a4b71e9
@ -16,8 +16,8 @@ android {
|
|||||||
applicationId = "com.key.keyboardskins.test"
|
applicationId = "com.key.keyboardskins.test"
|
||||||
minSdk = 23
|
minSdk = 23
|
||||||
targetSdk = 34
|
targetSdk = 34
|
||||||
versionCode = 2
|
versionCode = 3
|
||||||
versionName = "1.0.1"
|
versionName = "1.0.2"
|
||||||
setProperty("archivesBaseName", "keyboardskins_V" + versionName + "(${versionCode})_$timestamp")
|
setProperty("archivesBaseName", "keyboardskins_V" + versionName + "(${versionCode})_$timestamp")
|
||||||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||||
}
|
}
|
||||||
@ -55,6 +55,7 @@ dependencies {
|
|||||||
implementation("com.google.firebase:firebase-analytics-ktx")
|
implementation("com.google.firebase:firebase-analytics-ktx")
|
||||||
implementation ("com.google.firebase:firebase-crashlytics-ktx")
|
implementation ("com.google.firebase:firebase-crashlytics-ktx")
|
||||||
|
|
||||||
|
implementation("com.mbridge.msdk.oversea:newinterstitial:16.7.51")
|
||||||
|
implementation ("com.mbridge.msdk.oversea:mbbid:16.7.51")
|
||||||
|
|
||||||
}
|
}
|
||||||
29
app/google-services.json
Normal file
29
app/google-services.json
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"project_info": {
|
||||||
|
"project_number": "792062570245",
|
||||||
|
"project_id": "keyboard-skins-d06e1",
|
||||||
|
"storage_bucket": "keyboard-skins-d06e1.appspot.com"
|
||||||
|
},
|
||||||
|
"client": [
|
||||||
|
{
|
||||||
|
"client_info": {
|
||||||
|
"mobilesdk_app_id": "1:792062570245:android:5dc674c9f224da7c87116c",
|
||||||
|
"android_client_info": {
|
||||||
|
"package_name": "com.key.keyboardskins"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"oauth_client": [],
|
||||||
|
"api_key": [
|
||||||
|
{
|
||||||
|
"current_key": "AIzaSyCYcuE9Leq0YS5dH4yoBbiBAooCO8b7qIw"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"services": {
|
||||||
|
"appinvite_service": {
|
||||||
|
"other_platform_oauth_client": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"configuration_version": "1"
|
||||||
|
}
|
||||||
24
app/proguard-rules.pro
vendored
24
app/proguard-rules.pro
vendored
@ -21,3 +21,27 @@
|
|||||||
#-renamesourcefileattribute SourceFile
|
#-renamesourcefileattribute SourceFile
|
||||||
-keep class com.omicronapplications.** { *; }
|
-keep class com.omicronapplications.** { *; }
|
||||||
-keep class net.sf.sevenzipjbinding.** { *; }
|
-keep class net.sf.sevenzipjbinding.** { *; }
|
||||||
|
|
||||||
|
-keepattributes Signature
|
||||||
|
-keepattributes *Annotation*
|
||||||
|
-keep class com.mbridge.** {*; }
|
||||||
|
-keep interface com.mbridge.** {*; }
|
||||||
|
-dontwarn com.mbridge.**
|
||||||
|
-keepclassmembers class **.R$* { public static final int mbridge*; }
|
||||||
|
|
||||||
|
-keep public class com.mbridge.* extends androidx.** { *; }
|
||||||
|
-keep public class androidx.viewpager.widget.PagerAdapter{*;}
|
||||||
|
-keep public class androidx.viewpager.widget.ViewPager.OnPageChangeListener{*;}
|
||||||
|
-keep interface androidx.annotation.IntDef{*;}
|
||||||
|
-keep interface androidx.annotation.Nullable{*;}
|
||||||
|
-keep interface androidx.annotation.CheckResult{*;}
|
||||||
|
-keep interface androidx.annotation.NonNull{*;}
|
||||||
|
-keep public class androidx.fragment.app.Fragment{*;}
|
||||||
|
-keep public class androidx.core.content.FileProvider{*;}
|
||||||
|
-keep public class androidx.core.app.NotificationCompat{*;}
|
||||||
|
-keep public class androidx.appcompat.widget.AppCompatImageView {*;}
|
||||||
|
-keep public class androidx.recyclerview.*{*;}
|
||||||
|
-keep class com.mbridge.msdk.foundation.tools.FastKV{*;}
|
||||||
|
-keep class com.mbridge.msdk.foundation.tools.FastKV$Builder{*;}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -10,10 +10,15 @@ import androidx.localbroadcastmanager.content.LocalBroadcastManager;
|
|||||||
|
|
||||||
|
|
||||||
import com.exquisite.data.Mydata;
|
import com.exquisite.data.Mydata;
|
||||||
|
import com.exquisite.mintegral.MBrManager;
|
||||||
import com.exquisite.tools.Mytools;
|
import com.exquisite.tools.Mytools;
|
||||||
|
import com.mbridge.msdk.MBridgeSDK;
|
||||||
|
import com.mbridge.msdk.out.MBridgeSDKFactory;
|
||||||
|
import com.mbridge.msdk.out.SDKInitStatusListener;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
public class KeyboardSkin extends Application {
|
public class KeyboardSkin extends Application {
|
||||||
public static KeyboardSkin app;
|
public static KeyboardSkin app;
|
||||||
@ -22,17 +27,39 @@ public class KeyboardSkin extends Application {
|
|||||||
private static final String MAX_SDK = "JE7gVeObwAxnnPBv2tb61lNAIEHd4Udk3kac0g2rNpfhmVP0m6PwUH38KLK7yVPblRTBpgFf8ansDbsMtQJ3mx";
|
private static final String MAX_SDK = "JE7gVeObwAxnnPBv2tb61lNAIEHd4Udk3kac0g2rNpfhmVP0m6PwUH38KLK7yVPblRTBpgFf8ansDbsMtQJ3mx";
|
||||||
public static final String AD_BROADCAST = "on_success_action";
|
public static final String AD_BROADCAST = "on_success_action";
|
||||||
public static Boolean initSDK = false;
|
public static Boolean initSDK = false;
|
||||||
|
public static final String Place_1="1628319";
|
||||||
|
public static final String AD_2="Keyboard_inter_mintegral_2nd";
|
||||||
|
public static final String AD_3="Keyboard_inter_mintegral_3rd";
|
||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
context = getApplicationContext();
|
context = getApplicationContext();
|
||||||
app = this;
|
app = this;
|
||||||
// initSDK();
|
// initSDK();
|
||||||
|
initSdk();
|
||||||
List<Mydata> myData = Mytools.parseJsonToList("keyboard.json");
|
List<Mydata> myData = Mytools.parseJsonToList("keyboard.json");
|
||||||
myDataArrayList = myData;
|
myDataArrayList = myData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void initSdk() {
|
||||||
|
MBridgeSDK sdk = MBridgeSDKFactory.getMBridgeSDK();
|
||||||
|
Map<String, String> map = sdk.getMBConfigurationMap("301174", "8fe84f59b43d24c2aa49154f37e47bae");
|
||||||
|
sdk.init(map, this,new SDKInitStatusListener() {
|
||||||
|
@Override
|
||||||
|
public void onInitSuccess() {
|
||||||
|
initSDK = true;
|
||||||
|
Log.e("SDKInitStatus", "onInitSuccess");
|
||||||
|
LocalBroadcastManager.getInstance(context).sendBroadcast(new Intent(AD_BROADCAST));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onInitFail(String errorMsg) {
|
||||||
|
Log.e("SDKInitStatusFail", errorMsg);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public static Context getAppContext() {
|
public static Context getAppContext() {
|
||||||
return context;
|
return context;
|
||||||
}
|
}
|
||||||
@ -47,6 +74,8 @@ public class KeyboardSkin extends Application {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// private void initSDK() {
|
// private void initSDK() {
|
||||||
// AppLovinSdkInitializationConfiguration initConfig = AppLovinSdkInitializationConfiguration.builder(MAX_SDK, this)
|
// AppLovinSdkInitializationConfiguration initConfig = AppLovinSdkInitializationConfiguration.builder(MAX_SDK, this)
|
||||||
// .setMediationProvider(AppLovinMediationProvider.MAX)
|
// .setMediationProvider(AppLovinMediationProvider.MAX)
|
||||||
|
|||||||
@ -17,6 +17,10 @@ import android.widget.LinearLayout;
|
|||||||
|
|
||||||
import com.exquisite.fragment.AllFragment;
|
import com.exquisite.fragment.AllFragment;
|
||||||
import com.exquisite.demo08.R;
|
import com.exquisite.demo08.R;
|
||||||
|
import com.exquisite.mintegral.ADBean;
|
||||||
|
import com.exquisite.mintegral.MBrManager;
|
||||||
|
import com.exquisite.mintegral.Mylistener;
|
||||||
|
import com.exquisite.mintegral.onAdStatusListener;
|
||||||
import com.exquisite.tools.Mytools;
|
import com.exquisite.tools.Mytools;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -59,10 +63,46 @@ public class AllActivity extends AppCompatActivity implements View.OnClickListen
|
|||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
if (v.getId() == R.id.back) {
|
if (v.getId() == R.id.back) {
|
||||||
// showAd();
|
// showAd();
|
||||||
finish();
|
startShowAd(new Mylistener() {
|
||||||
|
@Override
|
||||||
|
public void actuion(boolean go) {
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
private void startShowAd(Mylistener mylistener){
|
||||||
|
ADBean cache = MBrManager.getCache();
|
||||||
|
if(cache == null){
|
||||||
|
mylistener.actuion(false);
|
||||||
|
}else{
|
||||||
|
MBrManager.setCallBack(cache.getInterstitialHandler(), new onAdStatusListener() {
|
||||||
|
@Override
|
||||||
|
public void onLoaded() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoadFail() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onShowFail() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClose() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
cache.getInterstitialHandler().showFromBid();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
// private void showAd() {
|
// private void showAd() {
|
||||||
// MaxInterstitialAd cachedAd = Mytools.onCache(adsList);
|
// MaxInterstitialAd cachedAd = Mytools.onCache(adsList);
|
||||||
// if (cachedAd == null) {
|
// if (cachedAd == null) {
|
||||||
@ -85,6 +125,12 @@ public class AllActivity extends AppCompatActivity implements View.OnClickListen
|
|||||||
@Override
|
@Override
|
||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
super.onBackPressed();
|
super.onBackPressed();
|
||||||
// showAd();
|
startShowAd(new Mylistener() {
|
||||||
|
@Override
|
||||||
|
public void actuion(boolean go) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -33,6 +33,10 @@ import com.exquisite.callback.DownloadCallback;
|
|||||||
import com.exquisite.callback.UnzipCallback;
|
import com.exquisite.callback.UnzipCallback;
|
||||||
import com.exquisite.data.StaticValue;
|
import com.exquisite.data.StaticValue;
|
||||||
import com.exquisite.demo08.R;
|
import com.exquisite.demo08.R;
|
||||||
|
import com.exquisite.mintegral.ADBean;
|
||||||
|
import com.exquisite.mintegral.MBrManager;
|
||||||
|
import com.exquisite.mintegral.Mylistener;
|
||||||
|
import com.exquisite.mintegral.onAdStatusListener;
|
||||||
import com.exquisite.tools.Mytools;
|
import com.exquisite.tools.Mytools;
|
||||||
import com.exquisite.tools.SpaceItem;
|
import com.exquisite.tools.SpaceItem;
|
||||||
|
|
||||||
@ -150,8 +154,13 @@ public class PreviewActivity extends AppCompatActivity implements View.OnClickLi
|
|||||||
StaticValue.PATH = resDirPath;
|
StaticValue.PATH = resDirPath;
|
||||||
Toast.makeText(PreviewActivity.this, getString(R.string.set_successful), Toast.LENGTH_SHORT).show();
|
Toast.makeText(PreviewActivity.this, getString(R.string.set_successful), Toast.LENGTH_SHORT).show();
|
||||||
progressBarDownload.setVisibility(View.GONE);
|
progressBarDownload.setVisibility(View.GONE);
|
||||||
// showAd();
|
startShowAd(new Mylistener() {
|
||||||
finish();
|
@Override
|
||||||
|
public void actuion(boolean go) {
|
||||||
|
finish();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -159,6 +168,37 @@ public class PreviewActivity extends AppCompatActivity implements View.OnClickLi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void startShowAd(Mylistener mylistener) {
|
||||||
|
ADBean cache = MBrManager.getCache();
|
||||||
|
if (cache == null) {
|
||||||
|
mylistener.actuion(false);
|
||||||
|
} else {
|
||||||
|
MBrManager.setCallBack(cache.getInterstitialHandler(), new onAdStatusListener() {
|
||||||
|
@Override
|
||||||
|
public void onLoaded() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoadFail() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onShowFail() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClose() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
cache.getInterstitialHandler().showFromBid();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
// private void showAd() {
|
// private void showAd() {
|
||||||
// MaxInterstitialAd cachedAd = Mytools.onCache(adsList);
|
// MaxInterstitialAd cachedAd = Mytools.onCache(adsList);
|
||||||
// if (cachedAd == null) {
|
// if (cachedAd == null) {
|
||||||
|
|||||||
@ -17,8 +17,17 @@ import android.os.CountDownTimer;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
|
|
||||||
|
import com.exquisite.KeyboardSkin;
|
||||||
import com.exquisite.demo08.R;
|
import com.exquisite.demo08.R;
|
||||||
|
import com.exquisite.mintegral.ADBean;
|
||||||
|
import com.exquisite.mintegral.MBrManager;
|
||||||
|
import com.exquisite.mintegral.Mylistener;
|
||||||
|
import com.exquisite.mintegral.onAdStatusListener;
|
||||||
|
import com.exquisite.mintegral.onInterHandlerListener;
|
||||||
import com.exquisite.tools.Mytools;
|
import com.exquisite.tools.Mytools;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidListennning;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidManager;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidResponsed;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -27,7 +36,6 @@ public class SplashActivity extends AppCompatActivity {
|
|||||||
private boolean needShow = true;
|
private boolean needShow = true;
|
||||||
private boolean key = true;
|
private boolean key = true;
|
||||||
// private static List<MaxInterstitialAd> adsList;
|
// private static List<MaxInterstitialAd> adsList;
|
||||||
|
|
||||||
@SuppressLint("MissingInflatedId")
|
@SuppressLint("MissingInflatedId")
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
@ -40,22 +48,91 @@ public class SplashActivity extends AppCompatActivity {
|
|||||||
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
|
||||||
return insets;
|
return insets;
|
||||||
});
|
});
|
||||||
countDownTimer = new CountDownTimer(1000, 100) {
|
countDownTimer = new CountDownTimer(11000, 100) {
|
||||||
@Override
|
@Override
|
||||||
public void onTick(long l) {
|
public void onTick(long l) {
|
||||||
|
if (needShow) {
|
||||||
|
startShowAd(new Mylistener() {
|
||||||
|
@Override
|
||||||
|
public void actuion(boolean go) {
|
||||||
|
if (go){
|
||||||
|
startView();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFinish() {
|
public void onFinish() {
|
||||||
startView();
|
if (needShow) {
|
||||||
|
startShowAd(new Mylistener() {
|
||||||
|
@Override
|
||||||
|
public void actuion(boolean go) {
|
||||||
|
startView();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
countDownTimer.start();
|
starAd();
|
||||||
// initializeCountDownTimer();
|
// initializeCountDownTimer();
|
||||||
// loadAndStartAd();
|
// loadAndStartAd();
|
||||||
}
|
}
|
||||||
|
private void startShowAd(Mylistener mylistener){
|
||||||
|
ADBean cache = MBrManager.getCache();
|
||||||
|
if(cache == null){
|
||||||
|
mylistener.actuion(false);
|
||||||
|
}else{
|
||||||
|
needShow = false;
|
||||||
|
MBrManager.setCallBack(cache.getInterstitialHandler(), new onAdStatusListener() {
|
||||||
|
@Override
|
||||||
|
public void onLoaded() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoadFail() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onShowFail() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClose() {
|
||||||
|
mylistener.actuion(true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
cache.getInterstitialHandler().showFromBid();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
private void starAd() {
|
||||||
|
if (!KeyboardSkin.initSDK){
|
||||||
|
LocalBroadcastManager.getInstance(this).registerReceiver(new BroadcastReceiver() {
|
||||||
|
@Override
|
||||||
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
initAD();
|
||||||
|
}
|
||||||
|
}, new IntentFilter(KeyboardSkin.AD_BROADCAST));
|
||||||
|
}else {
|
||||||
|
initAD();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initAD() {
|
||||||
|
MBrManager.init(this, new onInterHandlerListener() {
|
||||||
|
@Override
|
||||||
|
public void onAddOK() {
|
||||||
|
countDownTimer.start();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
// private void initializeCountDownTimer() {
|
// private void initializeCountDownTimer() {
|
||||||
// countDownTimer = new CountDownTimer(1000, 100) {
|
// countDownTimer = new CountDownTimer(1000, 100) {
|
||||||
// @Override
|
// @Override
|
||||||
|
|||||||
25
app/src/main/java/com/exquisite/mintegral/ADBean.java
Normal file
25
app/src/main/java/com/exquisite/mintegral/ADBean.java
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
import com.mbridge.msdk.newinterstitial.out.MBBidNewInterstitialHandler;
|
||||||
|
|
||||||
|
public class ADBean {
|
||||||
|
|
||||||
|
private MBBidNewInterstitialHandler interstitialHandler;
|
||||||
|
private String token;
|
||||||
|
|
||||||
|
public void setInterstitialHandler(MBBidNewInterstitialHandler interstitialHandler) {
|
||||||
|
this.interstitialHandler = interstitialHandler;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setToken(String token) {
|
||||||
|
this.token = token;
|
||||||
|
}
|
||||||
|
|
||||||
|
public MBBidNewInterstitialHandler getInterstitialHandler() {
|
||||||
|
return interstitialHandler;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getToken() {
|
||||||
|
return token;
|
||||||
|
}
|
||||||
|
}
|
||||||
213
app/src/main/java/com/exquisite/mintegral/MBrManager.java
Normal file
213
app/src/main/java/com/exquisite/mintegral/MBrManager.java
Normal file
@ -0,0 +1,213 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.exquisite.KeyboardSkin;
|
||||||
|
import com.mbridge.msdk.MBridgeConstans;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidListennning;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidManager;
|
||||||
|
import com.mbridge.msdk.mbbid.out.BidResponsed;
|
||||||
|
import com.mbridge.msdk.newinterstitial.out.MBBidNewInterstitialHandler;
|
||||||
|
import com.mbridge.msdk.newinterstitial.out.NewInterstitialListener;
|
||||||
|
import com.mbridge.msdk.out.MBridgeIds;
|
||||||
|
import com.mbridge.msdk.out.RewardInfo;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class MBrManager {
|
||||||
|
|
||||||
|
public static String TAG = "------------ltt";
|
||||||
|
|
||||||
|
public static String[] placeIDs = new String[]{"1628304", "1628319", "1628321"};
|
||||||
|
|
||||||
|
public static String[] unitIDs = new String[]{"3491035", "3491052", "3491054"};
|
||||||
|
|
||||||
|
public static List<ADBean> AdInstances = new ArrayList<>();
|
||||||
|
|
||||||
|
public static void getToken(String placeId, String unitId, onBidTokenListener listener) {
|
||||||
|
BidManager manager = new BidManager(placeId, unitId);
|
||||||
|
manager.setBidListener(new BidListennning() {
|
||||||
|
@Override
|
||||||
|
public void onFailed(String s) {
|
||||||
|
listener.onBidToken("");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onSuccessed(BidResponsed bidResponsed) {
|
||||||
|
String mBidToken = bidResponsed.getBidToken();
|
||||||
|
listener.onBidToken(mBidToken);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
manager.bid();
|
||||||
|
}
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
public static void init(Activity activity, onInterHandlerListener listener) {
|
||||||
|
for (int i = 0; i < 3; i++) {
|
||||||
|
String finalPlaceId = placeIDs[i];
|
||||||
|
String unitId = unitIDs[i];
|
||||||
|
getToken(finalPlaceId, unitId, new onBidTokenListener() {
|
||||||
|
@Override
|
||||||
|
public void onBidToken(String token) {
|
||||||
|
MBBidNewInterstitialHandler mMBBidNewInterstitialHandler = new MBBidNewInterstitialHandler(KeyboardSkin.getAppContext(), finalPlaceId, unitId);
|
||||||
|
ADBean adBean = new ADBean();
|
||||||
|
Log.d(TAG, "------------token=" + token);
|
||||||
|
adBean.setToken(token);
|
||||||
|
adBean.setInterstitialHandler(mMBBidNewInterstitialHandler);
|
||||||
|
mMBBidNewInterstitialHandler.loadFromBid(token);
|
||||||
|
AdInstances.add(adBean);
|
||||||
|
listener.onAddOK();
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void loadAllAd() {
|
||||||
|
if (AdInstances.size() > 0) {
|
||||||
|
for (ADBean adBean : AdInstances) {
|
||||||
|
if (!adBean.getInterstitialHandler().isBidReady()) {
|
||||||
|
adBean.getInterstitialHandler().loadFromBid(adBean.getToken());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ADBean getCache() {
|
||||||
|
Collections.shuffle(AdInstances);
|
||||||
|
for (ADBean adBean : AdInstances) {
|
||||||
|
if (adBean.getInterstitialHandler().isBidReady()) {
|
||||||
|
return adBean;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void setCallBack(MBBidNewInterstitialHandler mbBidNewInterstitialHandler, onAdStatusListener listener) {
|
||||||
|
mbBidNewInterstitialHandler.setInterstitialVideoListener(new NewInterstitialListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onLoadCampaignSuccess(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 广告已填充
|
||||||
|
* @param ids 封装的广告id对象
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onLoadCampaignSuccess: " + Thread.currentThread() + " " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onResourceLoadSuccess(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 广告资源加载成功,可以播放
|
||||||
|
* @param ids 封装的广告id对象
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onResourceLoadSuccess: " + Thread.currentThread() + " " + ids.toString());
|
||||||
|
listener.onLoaded();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onResourceLoadFail(MBridgeIds ids, String errorMsg) {
|
||||||
|
/**
|
||||||
|
* 广告加载失败
|
||||||
|
* @param errorMsg 加载错误原因
|
||||||
|
*/
|
||||||
|
listener.onLoadFail();
|
||||||
|
Log.e(TAG, "onResourceLoadFail errorMsg: " + errorMsg + " " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onShowFail(MBridgeIds ids, String errorMsg) {
|
||||||
|
/**
|
||||||
|
* 广告播放失败
|
||||||
|
* @param errorMsg 错误原因
|
||||||
|
*/
|
||||||
|
listener.onShowFail();
|
||||||
|
Log.e(TAG, "onShowFail: " + errorMsg + " " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAdShow(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 广告成功展示
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onAdShow: " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAdClose(MBridgeIds ids, RewardInfo info) {
|
||||||
|
/**
|
||||||
|
* 广告关闭时调用
|
||||||
|
* @param info.isCompleteView如果为true,则表示已完全观看了视频
|
||||||
|
*/
|
||||||
|
listener.onClose();
|
||||||
|
loadAllAd();
|
||||||
|
Log.i(TAG, "onAdClose: " + "isCompleteView:" + info.isCompleteView() + " " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAdClicked(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 广告被点击
|
||||||
|
* @param 封装的广告id对象
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onAdClicked: " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onVideoComplete(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 广告播放完成时调用
|
||||||
|
* @param ids 封装的广告id对象
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onVideoComplete: " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onAdCloseWithNIReward(MBridgeIds ids, RewardInfo info) {
|
||||||
|
/**
|
||||||
|
* 如果开发人员设置了IV奖励,则在广告关闭时调用.
|
||||||
|
*
|
||||||
|
* @param 封装的广告id对象
|
||||||
|
* @param info.isCompleteView() 是否完全观看
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onAdCloseWithNIReward: " + ids.toString() + " " + info.toString());
|
||||||
|
|
||||||
|
Log.i(TAG, info.isCompleteView() ? "Video playback/playable is complete." : "Video playback/playable is not complete.");
|
||||||
|
|
||||||
|
int rewardAlertStatus = info.getRewardAlertStatus();
|
||||||
|
|
||||||
|
if (rewardAlertStatus == MBridgeConstans.IVREWARDALERT_STATUS_NOTSHOWN) {
|
||||||
|
Log.e(TAG, "The dialog is not show.");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rewardAlertStatus == MBridgeConstans.IVREWARDALERT_STATUS_CLICKCONTINUE) {
|
||||||
|
Log.e(TAG, "The dialog's continue button clicked.");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rewardAlertStatus == MBridgeConstans.IVREWARDALERT_STATUS_CLICKCANCEL) {
|
||||||
|
Log.e(TAG, "The dialog's cancel button clicked.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onEndcardShow(MBridgeIds ids) {
|
||||||
|
/**
|
||||||
|
* 展示广告落地页时调用
|
||||||
|
* @param ids 封装的广告id对象
|
||||||
|
*/
|
||||||
|
Log.i(TAG, "onEndcardShow: " + ids.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,5 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
public interface Mylistener {
|
||||||
|
void actuion(boolean go);
|
||||||
|
}
|
||||||
@ -0,0 +1,12 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
import com.mbridge.msdk.newinterstitial.out.MBBidNewInterstitialHandler;
|
||||||
|
|
||||||
|
public interface onAdStatusListener {
|
||||||
|
|
||||||
|
void onLoaded();
|
||||||
|
void onLoadFail();
|
||||||
|
void onShowFail();
|
||||||
|
|
||||||
|
void onClose();
|
||||||
|
}
|
||||||
@ -0,0 +1,6 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
public interface onBidTokenListener {
|
||||||
|
|
||||||
|
void onBidToken(String token);
|
||||||
|
}
|
||||||
@ -0,0 +1,15 @@
|
|||||||
|
package com.exquisite.mintegral;
|
||||||
|
|
||||||
|
import com.mbridge.msdk.newinterstitial.out.MBBidNewInterstitialHandler;
|
||||||
|
|
||||||
|
public interface onInterHandlerListener {
|
||||||
|
|
||||||
|
void onAddOK();
|
||||||
|
|
||||||
|
|
||||||
|
// void onLoaded();
|
||||||
|
// void onLoadFail();
|
||||||
|
// void onShowFail();
|
||||||
|
//
|
||||||
|
// void onClose();
|
||||||
|
}
|
||||||
@ -12,6 +12,7 @@ dependencyResolutionManagement {
|
|||||||
google()
|
google()
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
maven("https://jitpack.io")
|
maven("https://jitpack.io")
|
||||||
|
maven{url = uri("https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea")}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user