1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Probleme mit den Android Beispielen

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Blaukasten, 23.01.2011.

  1. Blaukasten, 23.01.2011 #1
    Blaukasten

    Blaukasten Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.01.2011
    Hallo,
    ich versuche mit der hier gegebenen Anleitung (vielen Dank dafür) die Android Beispiele zum Laufen zu kriegen. Ich habe alles installiert und eclipse gestartet, neues Projekt, Android Projekt, "Create from existing sample", Android 2.2 und ApiDemos ausgewählt. Beim Start erscheint der erstellte Emulator, auf dem Android bootet. Nach dem "unlock" auf dem Android Screen im Emulator bleibt aber nur ein leerer Bildschirm auf dem emulierten Smartphone zu sehen. Folgende Meldungen erscheinen in der Konsole von eclipse:
    Code:
    [LEFT][2011-01-23 16:03:39 - ApiDemos] ------------------------------
    [2011-01-23 16:03:39 - ApiDemos] Android Launch!
    [2011-01-23 16:03:39 - ApiDemos] adb is running normally.
    [2011-01-23 16:03:39 - ApiDemos] Performing com.example.android.apis.ApiDemos activity launch
    [2011-01-23 16:03:39 - ApiDemos] Automatic Target Mode: launching new emulator with compatible AVD 'MeinLGP500'
    [2011-01-23 16:03:39 - ApiDemos] Launching a new emulator with Virtual Device 'MeinLGP500'
    [2011-01-23 16:03:47 - ApiDemos] New emulator found: emulator-5554
    [2011-01-23 16:03:47 - ApiDemos] Waiting for HOME ('android.process.acore') to be launched...
    [COLOR=red][2011-01-23 16:04:46 - ApiDemos] WARNING: Application does not specify an API level requirement![/COLOR]
    [COLOR=red][2011-01-23 16:04:46 - ApiDemos] Device API version is 8 (Android 2.2)[/COLOR]
    [2011-01-23 16:04:46 - ApiDemos] HOME is up on device 'emulator-5554'
    [2011-01-23 16:04:46 - ApiDemos] Uploading ApiDemos.apk onto device 'emulator-5554'
    [2011-01-23 16:05:22 - ApiDemos] Installing ApiDemos.apk...
    [2011-01-23 16:05:57 - ApiDemos] Success!
    [2011-01-23 16:05:58 - ApiDemos] Starting activity com.example.android.apis.ApiDemos on device emulator-5554[/LEFT]
    
    Danach tut sich leider garnichts mehr. Ich habe in Package, Properties, Android das Target System explizit auf Android 2.2. gestellt, trotzdem kommt die obige Warnung
    Erwartet hätte ich, dass auf dem Android Screen ein Icon erscheint, mit dem ich die Demo Applikation starten kann. Mache ich einen grundlegenden Fehler, oder habe ich da eine falsche Erwartung? Danke für jeden Tipp!
    Gerhard​
     
    Zuletzt bearbeitet: 23.01.2011
  2. Peter123, 23.01.2011 #2
    Peter123

    Peter123 Android-Hilfe.de Mitglied

    Beiträge:
    103
    Erhaltene Danke:
    7
    Registriert seit:
    13.11.2010
    Hast du denn deinen Emulator auch auf 2.2 laufen?

    Probier das Target System einfach mal runterzusetzen.
     
    Blaukasten bedankt sich.
  3. Blaukasten, 23.01.2011 #3
    Blaukasten

    Blaukasten Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.01.2011
    Hallo Peter,
    danke für die schnelle Antwort,
    habe das "Project Build Target" auf 2.1 gesetzt, mit fast dem gleichen Erfolg. Der Output des "Hello World" Beispiels (von Hello, World | Android Developers), welches ich auch getestet habe sieht nun so aus:

    [2011-01-23 18:03:31 - HelloAndroid] ------------------------------
    [2011-01-23 18:03:31 - HelloAndroid] Android Launch!
    [2011-01-23 18:03:31 - HelloAndroid] adb is running normally.
    [2011-01-23 18:03:31 - HelloAndroid] Performing com.examples.helloandroid.HelloAndroid activity launch
    [2011-01-23 18:03:31 - HelloAndroid] Automatic Target Mode: launching new emulator with compatible AVD 'MeinLGP500'
    [2011-01-23 18:03:31 - HelloAndroid] Launching a new emulator with Virtual Device 'MeinLGP500'
    [2011-01-23 18:03:35 - HelloAndroid] New emulator found: emulator-5554
    [2011-01-23 18:03:35 - HelloAndroid] Waiting for HOME ('android.process.acore') to be launched...
    [2011-01-23 18:04:08 - HelloAndroid] HOME is up on device 'emulator-5554'
    [2011-01-23 18:04:08 - HelloAndroid] Uploading HelloAndroid.apk onto device 'emulator-5554'
    [2011-01-23 18:04:08 - HelloAndroid] Installing HelloAndroid.apk...
    [2011-01-23 18:04:42 - HelloAndroid] Success!
    [2011-01-23 18:04:43 - HelloAndroid] Starting activity com.examples.helloandroid.HelloAndroid on device emulator-5554
    [2011-01-23 18:04:44 - HelloAndroid] ActivityManager: [1] Killed am start -n com....​

    vor allem die letzte Zeile gibt mir Rätsel auf. Die Warnung kommt so allerdings nicht mehr.
    Ist es normal, dass die Android Emulation mit einem gesperrten Bildschirm startet, man also zuerst entsperren muss? Das geht nämlich nur manchmal (das Sperrschloss nach rechts zu ziehen), manchmal lässt es sich einfach nicht ziehen...​

    Danke nochmal und Gruß
    Gerhard​
     
    Zuletzt bearbeitet: 23.01.2011
  4. muck, 24.01.2011 #4
    muck

    muck Android-Hilfe.de Mitglied

    Beiträge:
    62
    Erhaltene Danke:
    7
    Registriert seit:
    07.11.2010
    Hallo,
    er sagt ja das Deine App kein API level angibt. Dass das Device mit der API 8 läuft hat er erkannt.

    Hast Du in AndroidManifest.xml die minSdkVersion angegeben die für die "installation" der App notwendig ist?
    Code:
    [SIZE=2][COLOR=#008080][SIZE=2][COLOR=#008080]<[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#3f7f7f][SIZE=2][COLOR=#3f7f7f]uses-sdk[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#7f007f][SIZE=2][COLOR=#7f007f]android:minSdkVersion[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]=[/SIZE][I][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]"8"[/COLOR][/SIZE][/COLOR][/SIZE][/I][SIZE=2][COLOR=#008080][SIZE=2][COLOR=#008080]/>[/COLOR][/SIZE]
    [/COLOR][/SIZE]
     
    Blaukasten bedankt sich.
  5. Blaukasten, 24.01.2011 #5
    Blaukasten

    Blaukasten Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.01.2011
    Hallo Muck,

    danke für den Tipp zur minSDKVersion, die hatte ich anfangs nicht spezifiziert.
    Aber mit dem HelloAndroid Test habe ich es dann explizit spezifiziert. Jedoch scheint das auch nicht das Problem zu sein, denn diese Warnung gibt es in meinem HelloAndroid Test nicht mehr. Der Effekt aber, dass der Android Screen leer bleibt, bleibt bestehen. Auch ein Breakpoint in "OnCreate" der Activity wird nicht erreicht, was also m.E. bedeutet, dass die Activity nicht geladen wird. Muss man außer "Run" in Eclipse noch etwas tun um die App (bzw deren Activity) auf der Emulator Seite zu laden?
    Mir scheint, dass der Emulator nicht richtig läuft, aber es gibt dort kaum Einstellmöglichkeiten...


    Danke und Gruß
    Gerhard
     
  6. muck, 24.01.2011 #6
    muck

    muck Android-Hilfe.de Mitglied

    Beiträge:
    62
    Erhaltene Danke:
    7
    Registriert seit:
    07.11.2010
    Poste mal den Code Deiner Manifest-Datei und Dein Aktivity.
     
  7. Blaukasten, 24.01.2011 #7
    Blaukasten

    Blaukasten Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.01.2011
    Hallo Muck,

    Manifest:

    HTML:
    [LEFT]<?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.examples.helloandroid"
    android:versionCode="1"
    android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".HelloAndroid"
    android:label="@string/app_name">
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    </application>
    <uses-sdk android:minSdkVersion="8" />
    </manifest>
    [/LEFT]
    und der Code:
    package com.examples.helloandroid;
    Code:
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.TextView;
    public class HelloAndroid extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            TextView tv = new TextView(this);       
            tv.setText("Hello, Android");       
            setContentView(tv);    
        }
    }
    
    Habe mittlerweile den USB Treiber installiert, um den Code direkt auf dem Smartphone laufen zu lassen: dort läuft er. :thumbsup:
    Mit dem Emulator habe ich schon einiges probiert: im Administratormodus laufen lassen, vorher schon starten und was noch alles. Immer dasselbe: schwarzer screen mit Statuszeile, nach ca. 5 Minuten kommt dann wieder das animierte android logo, wie beim booten, aber der Emulator bootet nicht neu, man muss ihn dann killen.:thumbdn:

    Alles, Emulator, Software und Smartphone sind auf Version 2.2, und das Versionsproblem besteht auch nicht mehr.

    Noch irgendwelche Ideen? Naja, jetzt kann ich wenigstens mal anfangen und die ersten Zeilen eigenen Code schreiben, geht eh viel schneller auf dem Smartphone direkt...aber man kann auf dem Smartphone nicht debuggen, oder? Wenn debuggen nicht geht, dann ist es wertlos:sad:

    Danke und Gruß
    Gerhard
     
    Zuletzt bearbeitet: 24.01.2011
  8. muck, 24.01.2011 #8
    muck

    muck Android-Hilfe.de Mitglied

    Beiträge:
    62
    Erhaltene Danke:
    7
    Registriert seit:
    07.11.2010
    Na klar kannst Du auf dem Phone debuggen:
    Code:
    [SIZE=2][LEFT][/SIZE][SIZE=2][COLOR=#008080][SIZE=2][COLOR=#008080]<[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#3f7f7f][SIZE=2][COLOR=#3f7f7f]application[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] 
    [/SIZE][SIZE=2][COLOR=#7f007f][SIZE=2][COLOR=#7f007f]android:icon[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]=[/SIZE][I][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]"@drawable/icon"[/I][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] 
    [/SIZE][SIZE=2][COLOR=#7f007f][SIZE=2][COLOR=#7f007f]android:label[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]=[/SIZE][I][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]"@string/app_name"[/LEFT]
    [/I][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][/SIZE][SIZE=2][COLOR=#7f007f][SIZE=2][COLOR=#7f007f]android:debuggable[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]=[/SIZE][I][SIZE=2][COLOR=#2a00ff][SIZE=2][COLOR=#2a00ff]"true"[/I][/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#008080][SIZE=2][COLOR=#008080]>
    [/COLOR][/SIZE][/COLOR][/SIZE]
    debugable=true unter application im Manifest eintragen und schon funktiniert auch das :biggrin:.

    Ich habe mal "run" aus meinem Eclipse ausprobiert, von alleine startet die App bei mir nicht. Ich muß auf "menu" klicken, dann kommt die StartActivity.
     
    Blaukasten bedankt sich.
  9. Blaukasten, 26.01.2011 #9
    Blaukasten

    Blaukasten Threadstarter Neuer Benutzer

    Beiträge:
    5
    Erhaltene Danke:
    0
    Registriert seit:
    23.01.2011
    Nochmals danke, Muck,

    das Problem hat sich gelöst, ohne dass ich richtig weiß warum:
    ich habe das Android SDK deinstalliert und wieder installiert, zunächst ohne Erfolg. Allerdings bin ich auf Problemen gestoßen, die mit den Benutzerrechten zu tun hatten: Eclipse habe ich einfach aus dem zip-File in den Programme (program files) Ordner ausgepackt. In diesem Ordner hat man aber keine Schreibrechte, auch als Administrator nicht, wenn man die Eclipese.exe nicht ausdrücklich als "als Administrator ausführen" kennzeichnet. Andererseits waren einige Ordner des Android SDKs "verklemmt", d.h. ich konnte sie nicht löschen (zum deinstallieren) bevor ich den Rechner nicht neu gestartet habe (Windows Vista). Dann habe ich ein neues virtual device erzeugt mit nur einem statt 8 GByte sd-Karte.
    Zum Dritten starte ich den Emulator jetzt immer bevor ich das Programm teste, und somit geht's. Ich habe viele Stunden gebraucht das zum Laufen zu bringen, aber jetzt geht's, und ich kann mal loslegen.:biggrin:
    Danke nochmals und Gruß
    Gerhard
     

Diese Seite empfehlen