Sdkbox with creator i tried to use sdkbox through the official document admob interstatial

but i got a fatal erro in androidstudio
post the info below
crash when i close the test ads

-10 08:59:15.140 23142-23142/org.cocos2d.helloworld E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.cocos2d.helloworld, PID: 23142
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/safetynet/SafetyNet;
at com.google.android.gms.internal.zzafx.zza(Unknown Source)
at com.google.android.gms.internal.zzafs.zzha(Unknown Source)
at com.google.android.gms.internal.zzaln.reset(Unknown Source)
at com.google.android.gms.internal.zzama.destroy(Unknown Source)
at com.google.android.gms.internal.zzalz.destroy(Unknown Source)
at com.google.android.gms.ads.internal.zzbt.zzbZ(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzba(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzao(Unknown Source)
at com.google.android.gms.ads.internal.zzd.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfM(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfL(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.onPause(Unknown Source)
at com.google.android.gms.ads.AdActivity.onPause(Unknown Source)
at android.app.Activity.performPause(Activity.java:6138)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1305)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3452)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3425)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3400)
at android.app.ActivityThread.access$1400(ActivityThread.java:152)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: java.lang.ClassNotFoundException: Didn’t find class “com.google.android.gms.safetynet.SafetyNet” on path: DexPathList[[zip file “/data/app/org.cocos2d.helloworld-2/base.apk”],nativeLibraryDirectories=[/data/app/org.cocos2d.helloworld-2/lib/arm, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at com.google.android.gms.internal.zzafx.zza(Unknown Source)
at com.google.android.gms.internal.zzafs.zzha(Unknown Source)
at com.google.android.gms.internal.zzaln.reset(Unknown Source)
at com.google.android.gms.internal.zzama.destroy(Unknown Source)
at com.google.android.gms.internal.zzalz.destroy(Unknown Source)
at com.google.android.gms.ads.internal.zzbt.zzbZ(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzba(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzao(Unknown Source)
at com.google.android.gms.ads.internal.zzd.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfM(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfL(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.onPause(Unknown Source)
at com.google.android.gms.ads.AdActivity.onPause(Unknown Source)
at android.app.Activity.performPause(Activity.java:6138)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1305)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3452)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3425)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3400)
at android.app.ActivityThread.access$1400(ActivityThread.java:152)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Suppressed: java.lang.ClassNotFoundException: com.google.android.gms.safetynet.SafetyNet
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
… 29 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

Test with AdMob Ad ?

THANKS.
I test it with AdMob with devices huawei.
The ad shows.but when i try to close the ads,the app crash.

Can you send the crash log?

it is the demo I run it with Android Studio 2.2.3 .my test devices is huawei.
I AM SORRY the cocos picture may cover half of the CACHE ad and SHOW ad button .
thank you for your help.

Thanks.
crash logs
07-12 12:33:40.997 31237-31237/org.cocos.helloworld E/AndroidRuntime: FATAL EXCEPTION: main
Process: org.cocos.helloworld, PID: 31237
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/safetynet/SafetyNet;
at com.google.android.gms.internal.zzafx.zza(Unknown Source)
at com.google.android.gms.internal.zzafs.zzha(Unknown Source)
at com.google.android.gms.internal.zzaln.reset(Unknown Source)
at com.google.android.gms.internal.zzama.destroy(Unknown Source)
at com.google.android.gms.internal.zzalz.destroy(Unknown Source)
at com.google.android.gms.ads.internal.zzbt.zzbZ(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzba(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzao(Unknown Source)
at com.google.android.gms.ads.internal.zzd.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfM(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfL(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.onPause(Unknown Source)
at com.google.android.gms.ads.AdActivity.onPause(Unknown Source)
at android.app.Activity.performPause(Activity.java:6138)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1305)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3452)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3425)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3400)
at android.app.ActivityThread.access$1400(ActivityThread.java:152)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: java.lang.ClassNotFoundException: Didn’t find class “com.google.android.gms.safetynet.SafetyNet” on path: DexPathList[[zip file “/data/app/org.cocos.helloworld-1/base.apk”],nativeLibraryDirectories=[/data/app/org.cocos.helloworld-1/lib/arm, /vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
at com.google.android.gms.internal.zzafx.zza(Unknown Source)
at com.google.android.gms.internal.zzafs.zzha(Unknown Source)
at com.google.android.gms.internal.zzaln.reset(Unknown Source)
at com.google.android.gms.internal.zzama.destroy(Unknown Source)
at com.google.android.gms.internal.zzalz.destroy(Unknown Source)
at com.google.android.gms.ads.internal.zzbt.zzbZ(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzba(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzao(Unknown Source)
at com.google.android.gms.ads.internal.zzd.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.zzal.zzaz(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfM(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.zzfL(Unknown Source)
at com.google.android.gms.ads.internal.overlay.zzm.onPause(Unknown Source)
at com.google.android.gms.ads.AdActivity.onPause(Unknown Source)
at android.app.Activity.performPause(Activity.java:6138)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1305)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3452)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3425)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3400)
at android.app.ActivityThread.access$1400(ActivityThread.java:152)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5539)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Suppressed: java.lang.ClassNotFoundException: com.google.android.gms.safetynet.SafetyNet
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
… 29 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available

cc.Class({
extends: cc.Component,

properties: {

},

// use this for initialization
onLoad: function () {
     this.admobInit();

},
       


admobInit: function() {
        if(cc.sys.isMobile) {
        var self = this;
        sdkbox.PluginAdMob.init();
    }
},

cacheInterstitial: function() {
     if(cc.sys.isMobile) {
        sdkbox.PluginAdMob.cache('gameover');
    }
},

showInterstitial: function() {
    if(cc.sys.isMobile) {
        sdkbox.PluginAdMob.show('gameover');
    }
},

});

I didn’t see any screenshot, can you post it again?

@yinjimmy maybe this is the issue, we might want to switch to gradle build for android-studio

I check the https://github.com/darkdukey/Google-Play-Service-Lite/blob/master/gms_lite.conf#L26

safetynet=false

in gps-lite.

@caooo Could you please use the proj.android/libs/gps/libs/google-play-services.jar.full, just rename proj.android/libs/gps/libs/google-play-services.jar.full to proj.android/libs/gps/libs/google-play-services.jar.

It should fix the issue.

Thank you very much.
The problem solved perfectly!

Hi yinjimmy, I’m having same problem. I’m working on cocos2dx 12 version and latest sdkbox and on adndroid studio.

where I can find proj.android/libs/gps/libs/google-play-services.jar.full

In my project’s lib folder there is only one folder armeabi. I did not find gps folder.

I’m running project using command line tool.

Please help me.

Thanks.

sdkbox import googleplayservices

then you’ll get the gps folder.

I have done this process. Should I re import it ?
Ads are coming properly. But crashes on closing interstitial ad.

./cocos2d/cocos/platform/android/java/libs/gps when you using full source project,
./proj.android/libs/gps when you using prebuild-lib project.

find . -name "gps"

will help you find the gps folder.

Now I founded that folder.

Four files are there google-play-services.jar, google-play-services.jar.full, google-play-services.jar.properties, readme.txt

Now should I rename google-play-services.jar.full to google-play-services.jar ?

Thank you problem solved by removing google-play-services.jar and renaming google-play-services.jar.full to google-play-services.jar

Thanks.

good news.