Domanda

Sto cercando di imparare SDK Android Sphero e seguendo il tutorial ufficiale . Per prima cosa ho aggiunto robotlibrary.jar al mio progetto con successo, senza errori di compilazione.Successivo Ho messo SpheroconnectionVisualizza il mio file Layout come questo:

<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>
.

Allora ho aggiunto il seguente codice a Maineactivity.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);

    }

}
.

Mi aspetto di vedere la solita vista di connessione Sphero, (è un codice abbastanza semplice) ma getta un'eccezione come questa:

02-25 15: 15: 53.161: E / AndroidRuntime (1241): java.lang.runtimesexception: impossibile avviare attività componentinfo {com.ecem.sperooblank / com.ecem.spheroblank.maattività}: Android.View.Inflessoexception: linea file XML Binary # 7: errore di gonfiaggio di classe orbotix.view.View.Connection.spheroconnectionVisualizza

Ecco lo 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
.

Quindi come posso aggiustarlo?

È stato utile?

Soluzione

Infine, ho scoperto la risposta.Lo sto scrivendo, quindi potrebbe essere utile per gli altri sviluppatori che interessano in Sphero Android SDK.

Fare clic con il tasto destro del mouse sul progetto> Selezionare Proprietà >> Apri la sezione "Java Compiler". Assicurati di aver controllato "Abilita impostazioni specifiche del progetto" e impostare "Livello di conformità del compilatore" a 1.6!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top