androidaugmented-realityarcoresceneform

Google Sceneform Tools (BETA) doesn't create .sfa


I'm following this codelab and when i right click the .obj files and select "import sceneform asset" it doesn't create the sfa file, and this error is displayed

java.lang.NoSuchMethodError: com.android.tools.idea.gradle.util.GradleUtil.getGradleBuildFilePath(Ljava/io/File;)Ljava/io/File;
    at com.google.ar.sceneform.plugin.actions.ui.GenerateSfbModel.handleFinished(GenerateSfbModel.java:444)
    at com.android.tools.idea.wizard.model.ModelWizard.handleFinished(ModelWizard.java:402)
    at com.android.tools.idea.wizard.model.ModelWizard.goForward(ModelWizard.java:330)
    at com.android.tools.idea.wizard.model.ModelWizardDialog$FinishAction.doAction(ModelWizardDialog.java:313)
    at com.intellij.openapi.ui.DialogWrapper$DialogWrapperAction.actionPerformed(DialogWrapper.java:1834)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
    at java.awt.Component.processMouseEvent(Component.java:6550)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3325)
    at java.awt.Component.processEvent(Component.java:6315)
    at java.awt.Container.processEvent(Container.java:2239)
    at java.awt.Component.dispatchEventImpl(Component.java:4899)
    at java.awt.Container.dispatchEventImpl(Container.java:2297)
    at java.awt.Component.dispatchEvent(Component.java:4721)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
    at java.awt.Container.dispatchEventImpl(Container.java:2283)
    at java.awt.Window.dispatchEventImpl(Window.java:2746)
    at java.awt.Component.dispatchEvent(Component.java:4721)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
    at java.awt.EventQueue.access$500(EventQueue.java:98)
    at java.awt.EventQueue$3.run(EventQueue.java:715)
    at java.awt.EventQueue$3.run(EventQueue.java:709)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
    at java.awt.EventQueue$4.run(EventQueue.java:739)
    at java.awt.EventQueue$4.run(EventQueue.java:737)
    at java.security.AccessController.doPrivileged(Native Method)

    .....

I'm installing the plugin directly from AndroidStudio (v4.0.1), Google Sceneform is 1.15.0 I tried to update AndroidStudio to 4.1, but this shows up

"Plugin Error: Plugin "Google Sceneform Tools (Beta)" is incompatible (supported only in IntelliJ IDEA)."

How can I solve this?


Solution

  • ARCore Scenefrom has been 'open sourced and archived' - see the note here (https://developers.google.com/sceneform/develop):

    Sceneform SDK for Android was open sourced and archived (github.com/google-ar/sceneform-android-sdk) with version 1.16.0.

    This site (developers.google.com/sceneform) serves as the documentation archive for the previous version, Sceneform SDK for Android 1.15.0.

    Do not use version 1.17.0 of the Sceneform Maven artifacts.

    The 1.17.1 Maven artifacts can be used. Other than the version, however, the 1.17.1 artifacts are identical to the 1.15.0 artifacts.

    So, you may want to consider how and if you want to use Scenefrom now.

    For the specific problem you are seeing, this is an known issue with that version of Android Studio and Sceneform - see here for a workaround: https://stackoverflow.com/a/60515952/334402