Pregunta

Estoy tratando de aprender SFHero Android SDK y seguir el Tutorial oficial . Primero agregué Robotlibrary.jar a mi proyecto con éxito, sin errores de compilación.A continuación, puse SferoconnectorView a mi archivo de diseño como este:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ff888888" >

    <orbotix.view.connection.SpheroConnectionView
        android:id="@+id/sphero_connection_view"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#FFF" />

</LinearLayout>

Luego agregué el siguiente código a Mainactivity.Java

public class MainActivity extends Activity {

    private SpheroConnectionView mSpheroConn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        mSpheroConn=(SpheroConnectionView)findViewById(R.id.sphero_connection_view);

    }

}

Espero ver la visión habitual de la conexión de Spero, (es un código bastante simple) pero arroja una excepción como esta:

02-25 15: 15: 53.161: E / AndroidRuntime (1241): java.lang.runtimeexception: no se puede iniciar la actividad componentinfo {com.ecem.spherobank / com.ecem.spherobank.mainactivity}: Android.view.InflateException: Línea de archivo XML binaria # 7: Error infinando la clase ORBOTIX.View.Connection.spheroconnectorView

Aquí está el stacktrace completo:

02-25 15:15:53.161: E/AndroidRuntime(1241): FATAL EXCEPTION: main
02-25 15:15:53.161: E/AndroidRuntime(1241): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ecem.spheroblank/com.ecem.spheroblank.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class orbotix.view.connection.SpheroConnectionView
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread.access$600(ActivityThread.java:130)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.os.Handler.dispatchMessage(Handler.java:99)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.os.Looper.loop(Looper.java:137)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread.main(ActivityThread.java:4745)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at java.lang.reflect.Method.invokeNative(Native Method)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at java.lang.reflect.Method.invoke(Method.java:511)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at dalvik.system.NativeStart.main(Native Method)
02-25 15:15:53.161: E/AndroidRuntime(1241): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class orbotix.view.connection.SpheroConnectionView
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.createView(LayoutInflater.java:613)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:256)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.Activity.setContentView(Activity.java:1867)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at com.ecem.spheroblank.MainActivity.onCreate(MainActivity.java:20)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.Activity.performCreate(Activity.java:5008)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
02-25 15:15:53.161: E/AndroidRuntime(1241):     ... 11 more
02-25 15:15:53.161: E/AndroidRuntime(1241): Caused by: java.lang.reflect.InvocationTargetException
02-25 15:15:53.161: E/AndroidRuntime(1241):     at java.lang.reflect.Constructor.constructNative(Native Method)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at android.view.LayoutInflater.createView(LayoutInflater.java:587)
02-25 15:15:53.161: E/AndroidRuntime(1241):     ... 22 more
02-25 15:15:53.161: E/AndroidRuntime(1241): Caused by: java.lang.ExceptionInInitializerError
02-25 15:15:53.161: E/AndroidRuntime(1241):     at orbotix.view.connection.SpheroConnectionView.startDiscovery(SpheroConnectionView.java:236)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at orbotix.view.connection.SpheroConnectionView.<init>(SpheroConnectionView.java:215)
02-25 15:15:53.161: E/AndroidRuntime(1241):     ... 25 more
02-25 15:15:53.161: E/AndroidRuntime(1241): Caused by: java.lang.NullPointerException
02-25 15:15:53.161: E/AndroidRuntime(1241):     at orbotix.robot.base.RobotProvider.<init>(RobotProvider.java:161)
02-25 15:15:53.161: E/AndroidRuntime(1241):     at orbotix.robot.base.RobotProvider.<clinit>(RobotProvider.java:78)
02-25 15:15:53.161: E/AndroidRuntime(1241):     ... 27 more

Entonces, ¿cómo puedo arreglarlo?

¿Fue útil?

Solución

Finalmente, descubrí la respuesta.Estoy escribiendo esto, por lo que puede ser útil para otros desarrolladores que interesan en Spero Android SDK.

Haga clic derecho en el proyecto> Seleccione Propiedades >> Sección abierta "Java Compiler". ¡Asegúrese de verificar "Habilitar configuración específica del proyecto" y configurar "Nivel de cumplimiento del compilador" a 1.6!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top