Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 28 reacties

Google heeft zijn ontwikkeltools voor Android een update gegeven. Revisie 17 heeft als grootste verbetering native ondersteuning voor x86-architectuur in de emulator, waardoor de emulator veel sneller moet werken dan voorheen.

De code voor native ondersteuning van de emulator op x86 komt van Intel, zegt Google. Daardoor zou hij op vrijwel gewone snelheid moeten lopen, claimt de zoekgigant. Tot nu toe was de emulator veel trager, omdat er geen native drivers voor x86-architectuur waren. Android-apparaten draaien vrijwel zonder uitzondering op ARM-processors, terwijl Windows pc's en Macs op x86 draaien.

Daarnaast heeft de emulator ondersteuning gekregen voor input van webcams en multitouch. De multitouch werkt door een Android-apparaat aan de computer te hangen en het scherm daarvan met meer dan één vinger aan te raken. Multitouch-gebaren waren tot nu toe niet te testen in de emulator. Bovendien kunnen ontwikkelaars met revisie 17 van de sdk het netwerkverkeer van hun app testen.

De updates voor de sdk vallen lang niet altijd samen met nieuwe versies van het Android-besturingssysteem. De sdk kreeg bijvoorbeeld vorig jaar acht keer een update, terwijl Android zelf 'slechts' vijf updates kreeg: van 3.0 tot 4.0.1.

Moderatie-faq Wijzig weergave

Reacties (28)

Net alles geinstalleerd en geupdate, wat een tegenvaller zeg:

* Geen andere optie dan Android 2.3.3
* Geen google api ondersteuning (dus geen maps)
* Grafisch nog steeds erg traag
En dit is echt nodig, het verschil met de iOS SDK is gewoon te groot. op gebied van snelheid.

@ Hieronder;

De iOS emaulator werkt met een X86 OS van iOS, Bij de Android emulator heb je 2 versies. Namelijk de ARM versie waarbij de instructies dus geemuleerd worden door een X86 CPU..

Een andere optie is de X86 versie van de Android emulator, maar we hebben al gemerkt dat deze niet 100% hetzelfde resultaat geeft dan de ARM versie.

Naast de snelheid van de code zelf, is ook de opstarttijd verschrikkelijk bij de Android emulator. Bij de iOS emulator moet je nog geen seconde wachten, de Android emulator moet helemaal opstarten waardoor je al 15 seconden kwijt bent. Bij elke compilatie dus 15-20 seconden wachten om het resultaat te zien.

[Reactie gewijzigd door drib83 op 22 maart 2012 12:19]

Naast de snelheid van de code zelf, is ook de opstarttijd verschrikkelijk bij de Android emulator. Bij de iOS emulator moet je nog geen seconde wachten, de Android emulator moet helemaal opstarten waardoor je al 15 seconden kwijt bent. Bij elke compilatie dus 15-20 seconden wachten om het resultaat te zien.
Na de rest van je post schat ik je niet in als iemand die dit nog niet zou weten, maar voor de zekerheid zeg ik het toch: je kan de emulator ook gewoon open laten staan. Dan hoef je niet iedere keer opnieuw op te starten.

De rest is puur het "uploaden" van de app die tijd in beslag neemt, maar dat heb je ook als je een echt apparaat gebruikt.

---

Anyway, iedere snelheidsverbetering is er een. En hoewel die extra snelheid tegenvalt is het toch een stukje beter dan met de ARM-variant. Nu nog ondersteuning voor draadloos apps installeren en debuggen vanuit Eclipse op een echt apparaat en dan begint Android eindelijk wat leuker te worden qua devtools :P

Oh, en een wat minder vaak crashende of hikkende ADB die soms opeens zonder reden van poort wisselt zou ook wel fijn zijn.
ADB = Android Debugging Bridge, een achtergrondproces dat met emulator of fysiek apparaat communiceert.
Je weet dat als je device geroot is dat je wireless kan ADB'en?
https://play.google.com/s...ls?id=siir.es.adbWireless
;)
[...]
Na de rest van je post schat ik je niet in als iemand die dit nog niet zou weten, maar voor de zekerheid zeg ik het toch: je kan de emulator ook gewoon open laten staan. Dan hoef je niet iedere keer opnieuw op te starten.
Kan niet met alle SDK's die wij gebruiken. Met de standaard lukt het wel, maar met bvb appcelerator op OSX lukt dat niet.. Tenzij iemand me uitlegt hoe het wel kan
Ik heb me laten vertellen dat de iPhone emulator een niet een echte emulator is, terwijl die van Android dat wel is. Hoe het precies zit weet ik niet, maar volgens mij is die vergelijking niet helemaal eerlijk.

Weet iemand hoe dat precies zit?

Wel fijn dat ie nu sneller is, want af en toe is het echt onwerkbaar :|
De iOS emulator had dit truukje al, iOS op de emulator is gewoon x86 (familie van OSX dus draait ook op x86). De android emulator moest nog calls van ARM naar x86 omzetten. Dat hoeft nu niet meer.

Een emulator alleen is niet genoeg voor het testen, een computer is veel sneller dan een mobiel ARM apparaat. Het kan goed lopen in de emulator en niet op het apparaat waar je uiteindelijk op wilt draaien. Iets om rekening mee te houden.
"De android emulator moest nog calls van ARM naar x86 omzetten. Dat hoeft nu niet meer."

Huh?
Hoe moet ARM code dan draaien op x86 zonder ergens omgezet te worden?

Wat intel heeft gedaan is een deel van die emulator optimizen voor x68.
Maar daarbij moeten nog steeds ARM instructies op een intel cpu worden gedraait.
Nee, door deze update wordt er een versie van android gedraaid die native x86 is, en omdat android gebruikmaakt van Java betekent dat dus dat de code in een virtuele machine draait en er geen omzetting/opnieuw compilen nodig is
Gaan we dat maar eens even proberen, op x86 computers draaide de emulator inderdaad niet echt lekker.

Ook de netwerkverbinding kunnen testen is erg handig. Nu nog een webcam koppeling zodat je met de camera uit de emulator foto's kan maken via de webcam. :P (just kidding)

[Reactie gewijzigd door ThePope90 op 22 maart 2012 11:43]

Hij draait nu echt super. Ontwikkelen word nu een stuk makkelijker.

Het verhaal hierboven is niet geheel correct. Als je de emulator draaide op Linux, dan had je al goede performance. Alleen ondersteuning voor Windows en Mac OS is in deze versie van de SDK toegevoegd.

Btw: De koppeling met je webcam zit er al in. Dus je kunt in de emulator gewoon foto's maken. En nu de emulator een stuk sneller geworden is word de framerate in de camera app ook een stuk beter.
Ben het niet met je eens. Grafisch is het nog steeds afschuwelijk (Ja, emulator-x86).
Bovendien is er alleen een Intel Atom image van versie 2.3.3 beschikbaar, dus het is nog zeer beperkt.
Het is een stap in de goede richting, maar het is voor mijn gevoel nog steeds een emulator, en geen simulator. Ik merk nog nauwelijks verschil.

Edit: ik werk overigens op OS X

[Reactie gewijzigd door topaj op 22 maart 2012 23:12]

Hij is inderdaad veel sneller, zojuist geprobeerd.
Wat bedoel je trouwens met "op x86 computers draaide de emulator inderdaad niet echt lekker", op welke computer wel?
De emulator was zo traag dat het onbruikbaar was, nu is hij tenminste bruikbaar.
Fijn dat dit eindelijk verbeterd is, de emulator performance weerhield me eigenlijk van apps developen voor Android.

Vreemd genoeg alleen dat juist Intel dit verbeterd heeft gezien ze zelf bezig zijn met MeeGo/Tizen.
Intel loopt ook te leuren met hun nieuwe chip als nieuw platform voor Android. Ze wedden gewoon op meerdere paarden. nieuws: LG gaat eerste smartphone met Intel-chip in maart uitbrengen
Intel doet veel aan Android voor x86 omdat ze met hun SoCs in de Android tablet markt willen en dat van intel natuurlijk x86 chips zijn. Als ze de code teruggeven (wat redelijk waarschijnlijk is) dan zal die ongetwijfeld makkelijk de emulator performance op x86 systemen kunnen verbeteren.
Kan ik die emulator ook gebruiken om Android Apps te draaien op mijn pc? De Rabo-bankieren app is nml ont-zet-tend handig. Veel handiger dan de website en die zou ik ook wel op mijn pc willen gebruiken.
Ik raad je aan om dan naar een combinatie te kijken van virtualbox en android x86.
Op deze manier heb ik al verschillende apps kunnen draaien.
Dit zal het leven voor ontwikkelaars ook makkelijker maken. Zo weten ze wat de snelheid is en hoeven ze niet te gokken op dat het goed zal lopen.
Tja half.
Ik hoop tenminste dat een ontwikkelaar uiteindelijk een aantal tests doet op een daadwerkelijk android device, in plaats van volledige live te gaan vanuit een emulator.
Mooi, zo gelijk eens testen of het ook echt sneller werkt dan voorheen.
Vooral met tablets was die emulator niet vooruit te branden vaak.
Nou, dat is mijn telefoon soms ook niet, dus misschien hoort het wel zo. :P
Het is in ieder geval wel handig als je ook een langzame telefoon kan emuleren om te kijken wat de grens is waarop je app kan draaien.

[Reactie gewijzigd door Soldaatje op 22 maart 2012 12:00]

Long way to go voordat het echt plezant werken wordt maar dit, inclusief een aantal elementaire bugfixes in de UI editor hadden echt niet langer op zich moeten laten wachten.
Werd tijd! Vergeleken met de emulators van de iphone en windows phone is de Android emulator bar slecht.
Ik heb ergens gelezen dat de "emulator" op bochs gebasseerd is, wat naar mijn mening vreselijk is om mee te werken (prestaties, snelheid, enz). Zou het niet handiger zijn geweest om code te baseren op bestaande opensource producten, bijvoorbeeld virtualbox?
Van dit nieuws word ik zeer blij, vooral omdat mijn nexus een barst in het scherm heeft en mijn Asus Transformer Prime in Tsjechie zit voor RMA...

Dankjewel Android, i think i love you more now!

Edit: Dit is alles behalve off topic...

[Reactie gewijzigd door Anthraxium-64 op 22 maart 2012 14:18]

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True