2016-06-20 1 views
2

Я пытался связать свой проект с помощью this, но тем не менее я не в состоянии достигнуть так я получаю ошибки как noClassDefFoundFor NSObjectROBOVM + robopods + AdMob ИОС связывания

я также пытался добавить старую версию т.е. this но здесь я не могу связать модуль AdMob моей ошибки модуля Иос, который я получать в этом случае не является: не найдено для конфигурации «по умолчанию»

я использую последнюю версию LibGDX.

журнал сниппет:

ava.lang.NoClassDefFoundError: org/robovm/apple/foundation/NSObject$Handle 
at org.robovm.pods.google.mobileads.GADRequest.<init>(GADRequest.java) 
at com.blurpixel.arcpop.ViewController.createAndLoadBanner(ViewController.java) 
at com.blurpixel.arcpop.ViewController.intializeAds(ViewController.java) 
at com.blurpixel.arcpop.ViewController.showAds(ViewController.java) 
at com.blurpixel.arcpop.Menu.show(Menu.java) 
at com.badlogic.gdx.Game.setScreen(Game.java) 
at com.blurpixel.arcpop.GameClass.create(GameClass.java) 
at com.badlogic.gdx.backends.iosrobovm.IOSGraphics.draw(IOSGraphics.java) 
at com.badlogic.gdx.backends.iosrobovm.IOSGraphics$1.draw(IOSGraphics.java) 
at com.badlogic.gdx.backends.iosrobovm.IOSGraphics$1.$cb$drawRect$(IOSGraphics.java) 
at org.robovm.apple.uikit.UIApplication.main(Native Method) 
at org.robovm.apple.uikit.UIApplication.main(UIApplication.java) 
at com.blurpixel.arcpop.IOSLauncher.main(IOSLauncher.java) 

и то, что я делаю в моем коде:

adView = new GADBannerView(GADAdSize.SmartBannerPortrait()); 
    adView.setAdUnitID("xxxxxxxxxxxxxxx"); 
    adView.setRootViewController(UIApplication.getSharedApplication().getKeyWindow().getRootViewController()); 
    UIApplication.getSharedApplication().getKeyWindow().getRootViewController().getView().addSubview(adView); 

    GADRequest request = new GADRequest();//this line is creating this error if i am commenting this line + the adview.loadAd line i am getting my game running without ads. 
    request.setTestDevices(Arrays.asList(GADRequest.getSimulatorID())); 
    adView.setDelegate(new GADBannerViewDelegateAdapter() { 
     @Override 
     public void didReceiveAd(GADBannerView view) { 
      super.didReceiveAd(view); 
     } 
     @Override 
     public void didFailToReceiveAd(GADBannerView view, GADRequestError error) { 
      super.didFailToReceiveAd(view, error); 
      System.out.println("Failed to recieve "); 
     } 
    }); 
    adView.loadRequest(request); 

Gradle файлы:

ИОС Gradle:

sourceSets.main.java.srcDirs = ["src/"] 
sourceCompatibility = '1.7' 
[compileJava, compileTestJava]*.options*.encoding = 'UTF-8' 
ext { 
    mainClassName = "com.blurpixel.arcpop.IOSLauncher" 
} 
launchIPhoneSimulator.dependsOn build 
launchIPadSimulator.dependsOn build 
launchIOSDevice.dependsOn build 
createIPA.dependsOn build 
eclipse.project { 
    name = appName + "-ios" 
    natures 'org.robovm.eclipse.RoboVMNature' 
} 
dependencies { 

    compile "org.robovm:robopods-google-mobile-ads-ios:1.13.1-SNAPSHOT" 
    compile "org.robovm:robopods-google-apis-ios:1.13.1-SNAPSHOT" 
} 

сборки. gradle:

buildscript { 
    repositories { 
     mavenCentral() 
     maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
     jcenter() 
    } 


    dependencies { 
     classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6' 
     classpath 'com.android.tools.build:gradle:2.1.2' 
     classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.2.0-SNAPSHOT' 
    } 
} 
allprojects { 
    apply plugin: "eclipse" 
    apply plugin: "idea" 

    version = '1.2' 
    ext { 
     appName = "ArcPOP" 
     gdxVersion = '1.9.2' 
     roboVMVersion = '1.14.0' 
     robopodsVersion = '1.13.1' 
     box2DLightsVersion = '1.4' 
     ashleyVersion = '1.7.0' 
     aiVersion = '1.8.0' 
     admobVersion = '9.0.1' 
    } 

    repositories { 
     mavenCentral() 
     maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } 
     maven { url "https://oss.sonatype.org/content/repositories/releases/" } 
    } 
} 
project(":desktop") { 
    apply plugin: "java" 


    dependencies { 
     compile project(":core") 
     compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" 
     compile "com.badlogicgames.gdx:gdx-tools:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop" 
     compile "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-desktop" 
    } 
} 
project(":android") { 
    apply plugin: "android" 

    configurations { natives } 

    dependencies { 
     compile project(":core") 

     compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86" 
     natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64" 
     compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion" 
     natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi" 
     natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a" 
     natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-arm64-v8a" 
     natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86" 
     natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86_64" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi-v7a" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-arm64-v8a" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-x86" 
     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-x86_64" 

     compile 'com.google.android.gms:play-services-ads:9.0.1' 
     compile 'com.facebook.android:facebook-android-sdk:4.1.0' 

    } 
} 
project(":ios") { 
    apply plugin: "java" 
    apply plugin: "robovm" 


    dependencies { 
     compile project(":core") 
     compile "org.robovm:robovm-rt:$roboVMVersion" 
     compile "org.robovm:robovm-cocoatouch:$roboVMVersion" 
     compile "org.robovm:robopods-google-mobile-ads-ios:$robopodsVersion-SNAPSHOT" 
     compile "org.robovm:robopods-google-apis-ios:$robopodsVersion-SNAPSHOT" 
     compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios" 
     compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios" 
     compile "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-ios" 
    } 
} 
project(":html") { 
    apply plugin: "gwt" 
    apply plugin: "war" 
    dependencies { 
     compile project(":core") 
     compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion:sources" 
     compile "com.badlogicgames.gdx:gdx-box2d-gwt:$gdxVersion:sources" 
    } 
} 
project(":core") { 
    apply plugin: "java" 


    dependencies { 
     compile "com.badlogicgames.gdx:gdx:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion" 
     compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" 
    } 
} 
tasks.eclipse.doLast { 
    delete ".project" 
} 
dependencies { 
} 

Пожалуйста, помогите и спасибо заранее.

+0

Кажется, вы неправильно связываете robovm. Но вам нужна дополнительная информация, чтобы помочь вам решить эту проблему. Возможно, с помощью robovm logs мы можем найти решение. –

+0

Спасибо за ответ .... не знаю, где я делаю ошибку Я использую этот пример: https://github.com/robovm/robovm-robopods/issues/55 – Ashwani

+0

Существует большая разница между noClassDef для NSObject и NSObject $ Handle Если ответ на этот вопрос не решит вашу проблему. Опубликуйте свои фактические журналы ошибок. не просто то, что вы можете подумать, опишите вашу проблему. –

ответ

1

Проблема в ваших файлах градиента. Прежде всего, вы используете плагин mobidevelop с официальным robovm. Это может вызвать проблемы.

, то вы добавляете зависимости в 2 местах. Это не должно делать ничего плохого, но это не нужно и может вызвать проблемы, если вы измените один из них.

Применить следующие изменения, перестроить gradle (не забудьте --refresh-dependencies) и перестроить проект. Если он все еще не очистит кеш-память снова.

изменение:

classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.2.0-SNAPSHOT'  

в

classpath 'org.robovm:robovm-gradle-plugin:1.14.0' 

и

robopodsVersion = '1.13.1' 

в

robopodsVersion = '1.14.0' 

также может потребоваться изменить:

gdxVersion = '1.9.2' 

в

gdxVersion = '1.9.0' 

Вы также, возможно, потребуется удалить "-snapshot" от версии robopod. не 100% уверен, что они существуют (и если вы хотите, чтобы эти)

удалить:

dependencies { 

    compile "org.robovm:robopods-google-mobile-ads-ios:1.13.1-SNAPSHOT" 
    compile "org.robovm:robopods-google-apis-ios:1.13.1-SNAPSHOT" 
} 

из ИОС строить.gradle (эта область уже определена в вашем основном build.gradle)

+0

Все еще я получаю ту же проблему – Ashwani

+0

как вы очистили свой кеш? –

+0

Я открыл терминал и набрал эти команды 'cd $ HOME/.robovm/cache', затем' rm -R ios' , затем перекрестно проверил его, набрав 'ls', ничего там не было ... затем очистите и создайте мой проект. – Ashwani

Смежные вопросы