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 , , 36 reacties

Big In Japan, de ontwikkelaar van een van de populairste Android-applicaties tot nu toe, vindt dat de nieuwe versie van het mobiele besturingssysteem te snel wordt uitgerold. Veel applicaties zijn nog niet compatibel met Android 1.5.

Android 1.5, ook bekend onder de codenaam Cupcake, heeft de ondersteuning voor onscreen toetsenborden als belangrijkste toevoeging. Die ondersteuning is nodig omdat een nieuw Android-toestel, de HTC Magic, geen fysiek toetsenbord heeft. T-Mobile is al bezig om de update uit te rollen voor de T-Mobile G1, het eerste Android-toestel dat op de Nederlandse markt verkrijgbaar is.

De update zorgt er echter voor dat veel applicaties in downloadwinkel Android Market in één klap onbruikbaar worden. Dat zegt Big In Japan, de ontwikkelaar van ShopSavvy, een van de populairste Android-applicaties. Veel programmatuur kan nog niet overweg met de tekstinvoer van een onscreen toetsenbord en moet daarop worden aangepast, maar de ontwikkelaars hebben daar onvoldoende tijd voor gekregen. Bovendien accepteert Google van elke applicatie maar één versie, zodat een nieuwe versie backwards compatibel moet zijn. Dat kost extra ontwikkeltijd.

Verder maakt de Android Market geen onderscheid tussen applicaties die wel of niet compatibel met Android 1.5 zijn, waardoor gebruikers niet van tevoren kunnen zien of een applicatie al aangepast is. Veel gebruikers zouden zo met niet-werkende applicaties blijven zitten, en volgens Big In Japan is dat een serieuze bedreiging voor de reputatie van Android.

De HTC Magic is het tweede Android-toestel dat commercieel verkrijgbaar wordt. Het toestel komt binnenkort in Spanje, Duitsland en het Verenigd Koninkrijk op de markt. Er is nog altijd geen releasedatum voor Nederland, maar Vodafone zei eerder dat Nederland in elk geval niet in 'de eerste golf' releases zit, zodat de Magic in Nederland in elk geval niet begin mei op de markt komt.

HTC Magic
Moderatie-faq Wijzig weergave

Reacties (36)

Wat beweerd wordt blijkt uiteindelijk niet helemaal waar, de Android Developers hebben gisteren een uitgebreide blog geplaatst over backward compatibility: http://android-developers...tibility-for-android.html

Een aantal punten blijven wel overeind, zoals het niet kunnen aanbieden van parallelle versies van een app.
En de belangrijkste (in mijn ogen) het toetsenbord!
. Veel programmatuur kan nog niet overweg met de tekstinvoer van een onscreen toetsenbord en moet daarop worden aangepast
Ik snap niet waarom het onscreen toetsenbord niet transparant is ingevoerd en dat programma's uberhaupt hoeven te weten van wat voor een toetsenbord hun invoer komt. Kijk naar het driver system van Windows en veel andere os-en. Het programma weet niet wat voor toetsenbord gebruikt wordt, het os wel.

Of kijk naar veel van de programma's die automatisch toetsen voor je indrukken of toetsaanslagen afvangen, dit kan allemaal transparant, waarom is daar niet voor gekozen in android? (Ik neem aan dat dit een bewuste keuze is die ik nog niet snap).
Lijkt me dat het eerder met de schermgrootte te maken heeft
met een virtueel toetsenbord is niet het hele scherm beschikbaar
Raar dat het OS verschil maakt tussen een virtueel keyboard en een hardware keyboard. Dit zou toch niet uit moeten maken? Ik weet niet hoe dat bij de iPhone zit maar bij Windows Mobile zit hier iig geen verschil tussen.
Android 1.5 zorgt ervoor dat settings van andere applicaties niet meer kunnen worden veranderd en dat ongedocumenteerde API- calls niet meer kunnen worden benut. Veel applicaties gebruikte ongedocumenteerde code en die werkt nu dus niet meer.

Verder is het zo dat de enige applicatie die ik ben tegengekomen die niet werkt... u raad het al.. shopsavvy is. Kortom, alleen een bericht omdat hun eigen product schade oploopt.

Overigens al had men geen ongedocumenteerde code gebruikt, blijft de software wel gewoon compatible, maar sommige applicaties (en software makers) hebben hiervoor gekozen, dus zijn eigenlijk zelf fout bezig.
De vraag is waar een programmeur mee bezig is als ie "ongedocumenteerde" API-aanroepen gebruikt. Ze zijn tenslotte voor een bepaalde reden niet gedocumenteerd.
Android kan overweg met beide toetsenborden. Echter de applicaties hoefden tot nu toe geen rekening te houden met een onscreen toetsenbord en dus ook niet met de onscreen real-estate die daarbij dan verloren gaat, wat betekent dat je vaak informatie op een andere manier moet weergeven om dingen duidelijk te houden.

Zo had ik op mijn Samsung i780 (Windows Mobile) een beta versie van Opera 9.x draaien. Deze detecteerde echter niet het toetsenbord en liet dan ook telkens als er tekst ingeklopt moest worden het onscreen toetsenbord zien.
Ik denk dat het verschil zit dat de al gemaakte software nog niet onverweg kan met een onscreen toetsenbord als weergave op het scherm als ook de app open staat. De software moet dar wel mee overweg kunnen.
Het probleem zit hem vooral in verkeerd gebruik van de api's. Niet zozeer verboden gebruik maar gebruik van functionaliteit in Android die niet future-proof is.

Een mooie opsomming hoe je applicaties maakt die werken op 1.1 maar ook op 1.5:

http://android-developers.blogspot.com/2009/04/future-proofing-your-apps.html
Maar dat behoort Android al te hebben ondervangen. Android behoort gewoon een abstract keyboard device (Hardware Abstractie Layer) aan de applicatie aan te bieden. Dan maakt het voor de applicatie welke in android draait helemaal niet uit of je een fysiek of virtual (touch screen) toetsenbord gebruikt.

Een en ander kan een gevolg van van de eerdere drang om snel met een officiele release te komen, waardoor bepaalde abstracties nog niet voldoende zijn uitgewerkt en/of doorgevoerd.

Anderzijds is het wel raar dat Google van ontwikkelaars verwacht dat zij hun applicatie backwards compatible schrijven en dat zij Android zelf blijkbaar niet backwards compatible weten te houden.
Maar zo'n on-screen keyboard moet ook getoont worden op het scherm, en daar zijn de apps niet voor gemaakt.
Het typische is dat heel Windows Mobile applicaties hier ook niet mee overweg kunnen, altijd zit dat virtuele keyboard in de weg, als ik iets moet bevestigen, heel irritant!
gelukkig hebben veel windows mobile apparaten wel n OK knopje.. wel zo makkelijk, want idd de ok knop rechtsonderin de page zetten, waardoor het onscreen keyboard dr overheen zit is gewoon klote :P
Je kan hem zelf omhoog en omlaag doen door op dat middelste dingetje te klikken onderin de balk. Het werkt hier altijd perfect.
Er is geen iPhone met hardware keyboard, dus hoeven ze er ook geen rekening mee te houden lijkt mij.
Je kan misschien even nadenken en kijken waarop hij reageert? Zo'n opmerking is dan niet echt gepast als je de context bekijkt.
Mogelijk is er deze 'rush' omdat er nu 1.5 toestellen (Magic is in Spanje verkrijgbaar) op de markt zijn. Daarop werkt veel market software niet naar behoren.

Het keyboard is een van de problemen, maar er zijn grotere problemen in de vorm van api wijzigingen. Een voorbeeld is dat in 1.5 een aantal operaties strenger beveiligd is. Operaties als het switchen tussen 2g/3g zijn nu niet direct meer aan te roepen, in plaats daarvan moet je nu via Android's eigen system settings scherm navigeren.
Op mijn Dream dev phone draai ik nu 1.5 en een handige applicatie als Useful Switches is momenteel niet bruikbaar door deze wijzigingen. Een spelletje als Red Stone draait nog naar behoren ook al heeft deze nog geen rekening gehouden met het software keyboard.
Ai, dat is toch wel vrij lastig dat een OS update je apps om zeep helpt.
Is dit ook zo bij de iPhone apps? Volgens mij niet want ik zie altijd alleen maar een minimum versie eis...
Nee, iPhone apps behoren (mits netjes geprogrammeerd) compatible te blijven. Er kunnen natuurlijk altijd zaken veranderen in een update waardoor mensen hun apps moeten updaten, maar dan dient dan wel heel ver vantevoren aangekondigt en vooral ook duidelijk gemaakt te worden.
Volgens mij niet. Ik denk dat Android een beetje te snel op de markt is gebracht, basisfuncties als deze zouden eigenlijk allemaal al vast moeten staan, zodat er alleen nog nieuwe dingen worden toegevoegd die oudere apps niet meer breken. Dat is wat Apple heeft gedaan, maar Apple had natuurlijk ook volledige controle over de hardware.
Toen Apple van iPhoneOS 1.0 naar 2.0 overstapte waren alle apps ineens niet meer compatible. Dus ja, Apple had hier ook last van. Maar... Apple heeft pas in iPhoneOS 2.0 de app-store geintroduceert, dus het ging toen alleen om de apps die je via een jailbreak op je iPhone gezet had.

De huidige apps in de app store worden door Apple allemaal gecontroleerd, dus mogen geen undocumented features aanroepen. Apple kan dus het framework aanpassen wat ze willen. Er kunnen hoogstens calls depricated worden, die moet je dan vanaf dat moment niet meer gebruiken.

[Reactie gewijzigd door zonoskar op 29 april 2009 20:21]

Ja, dat is dus geen argument. Apple had nergens problemen mee aangezien jailbreaking totaal geen ondersteuning heeft vanuit Apple natuurlijk.
Hij / ze hebben wel een goed punt, vooral met het punt dat er in de Android Market geen onderscheid tussen versies gemaakt worden.

óf Google moet dat toevoegen, óf alle applicaties die voor de 1.x versies gemaakt zijn moeten altijd gegarandeerd op de 1.x versies van Android werken.
Het zijn kinderziektes. Maar misschien hebben ze wel gelijk. ze zijn zo enthousiast dat ze vele details vergeten. De ontwikkeling gaat goed, maar de ondersteuning moet inderdaad mee volgen. De addons van firefox zijn wel voorzien met een versie ondersteuning. Ik weet dat ze niet hetzelfde zijn, maar een gelijk lopende oplossing is zeer wenselijk en voorkomt frustraties bij de aankoop van een applicatie.
Kinderziekte? Hoe veel PDA's/Smartphone's hebben een on-screen toetsenbord. Was toch iets wat Android kon gaan verwachten, of hebben ze daar gewoon niet bij nagedacht.
Het mag natuurlijk niet zo zijn dat Google het ontwikkelingsproces van Android moet vertragen om te zorgen dat de applicatie makers hun bij kunnen houden, dat zou vorderingen in het systeem in de weg staan. Dat Google tot nog toe maar een versie per applicatie toestaat in de Android application store is natuurlijk geen goed iets.

Wat als op een gegeven moment T-Mobile niet meer de patches uitbrengt voor de G1, kan je dan alleen nog maar oude applicaties gebruiken welke in nog geen jaren geupdate zijn?
Hu? Android is toch linux?

Alle invoer gaat gewoon naar events, of dat nou een on screen keyboard, externe joystick of een wiimote via bluetooth is.

Dan moet het toch niks uitmaken of de app gemaakt is voor er on screen keyboard support in zat?
Misschien het krimpen van het programma zelf als het onscreen toetsenbord in gebruik is? Knap irritant dat je de helft van je programma niet ziet omdat er een toetsenbord over zit.. En je moet natuurlijk net daar tikken, zonder scrollmogelijkheid.

Een van de problemen die zo in me opkomt :)
"Knap irritant dat je de helft van je programma niet ziet omdat er een toetsenbord over zit.. "

Precies zoals bij HTC dus die heb eigelijk custom keyboard hebben, waarop programma's dus niet reageren zoals die van WIndows zelf.
android is linux + rest
linux is geen android
Haastige spoed is nooit goed laten we maar zeggen. Weet niet of dit ook voor Android geldt maar de ontwikkelaar kan zeker een goed punt hierover zeggen. Maar aan de andere kant is technologische ontwikkelingen om zo op de concurrentie te blijven ook goed.

Ieder zijn eigen mening natuurlijk.

[Reactie gewijzigd door The_Source op 29 april 2009 16:39]

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