Die Wurzel des Übels liegt darin, dass bestimmte Handys keine kopiergeschützten Applikationen aus dem Market laden dürfen (zB. das Android Dev Phone), da Google offenbar befürchtet das man mit einem root-Zugriff, den ja das Dev Phone standardmässig hat, eventuell den Kopierschutz knackt. (Quelle: http://asia.cnet.com/crave/2009/02/27/google-blocks-access-to-paid-android-apps-on-developer-phones/).
Das Ausgrenzen von Telefonen ist nun aber leider offenbar mittels einer Whitelist implementiert, dh. in der Liste stehen alle Handytypen (inkl. Firmware), die auf kopiergeschützte Applikationen zugreifen dürfen und ich wollte jetzt einfach nicht mehr länger warten, bis Google die neue Firmware für den Market freigibt.
Bei Google gibt's dazu einen Thread auf: http://www.google.com/support/forum/p/Android+Market/thread?tid=40c93958284cafac&hl=en#all. Dort steht zwar von einem Google-Mitarbeiter der Satz "We made a change today that should fix accessibility issues for some Samsung Galaxy and HTC users." (Datum: 14.9.2009), aber bei mir funktioniert's auch heute noch immer nicht.
Irgendwie ist das ganze doch sehr schlecht zwischen Samung und Google koordiniert. Meiner Meinung nach sollte man die Firmware zuerst im Market freigeben und erst dann an die User ausrollen.
Egal, ich bin ja eh root und mit folgendem Workaround kann man dem Market eine alte Firmware vorgaukeln:
0) Es gilt wie immer:
Ich übernehme keine Garantie auf alles was da jetzt steht bzw. die verlinkten Downloads!
1) Booten im Recovery Modus (Ich habe inzwischen das Recovery Image von http://forum.hdblog.it/showthread.php?t=3995 auf meinem Gerät, das gefällt mir in Summe besser. Allerdings verwende ich die darin enthaltenen "enable/disable root" Funktionen nicht, da mir die darin verwendete su-Version vom Konzept her nicht gefällt.)
2) System-Filesystem mit adb remount im Read/Write Modus remounten
3) In die Shell mittels adb shell einsteigen
4) Eine Sicherungskopie der Original-Konfiguration mittels cp /system/build.prop /system/build.prop.orig erstellen
5) Editor mit vi /system/build.prop öffnen
6) In die Zeile 27 navigieren (vi-Kommando ESC:27 [dh. zuerst Taste ESC, dann Taste :, dann Taste 2 und dann Taste 7 drücken]), dort steht dann:
ro.build.fingerprint=Samsung/GT-I7500/GT-I7500/GT-I7500:1.5/CUPCAKE/83:user/ota-rel-keys,release-keys7) Die Zahl 83 ist nun gegen die Zahl für eine ältere Firmware-Version zu ersetzen (zB. 12). Achtung, bei mir hat das Navigieren mit den Cursor-Tasten im vi nicht richtig funktioniert, aber mit den Tasten h,j,k,l (für Links, Runter, Rauf und Rechts) hat's problemlos geklappt. Also mit der l-Taste bis zum 8'er von 83 navigieren, danach ESCxxESCi12ESCZZ und schon hat man den neuen Wert gespeichert (Bei Problemen im vi einfach mit ESC:q! aussteigen und nochmals von vorne beginnen).
8) Das ganze nochmals mit cat build.prop | grep fingerprint | grep Samsung kontrollieren und dort sollte nun folgendes stehen:
ro.build.fingerprint=Samsung/GT-I7500/GT-I7500/GT-I7500:1.5/CUPCAKE/12:user/ota-rel-keys,release-keys9) Danach muss noch der Cache für den Market gelöscht werden. Dazu muss man mit mount /dev/block/mmcblk0p1 /data das data-Filesystem mounten und mit cd /data/data/com.android.vending/cache/ in das Cache-Verzeichnis wechseln und mit rm -f * dann den Cache löschen.
10) Abschliessend dann das Handy mit sync;reboot neu starten und nach ein paar Stunden sind die kopiergeschützten Applikationen wieder im Market verfügbar. Es wird da anscheindend auch am Market-Server irgendwo etwas gecacht oder eventuell wird die Firmware-Info nicht laufend überprüft.
Weiters habe ich auch mal den Hinweis gelesen, dass man nach der Aktion erstmalig auch über GSM/3G und nicht über WLAN in den Market einsteigen muss.
Testen kann man das ganze, in dem man zB. nach den Applikationen "ColorDict" oder "Twidroid PRO" sucht.
Mal schauen, wie lange es noch dauern wird, bis Google die Firmware endlich freigibt und man wieder den originalen Wert im build.prop verwenden kann.
Fazit:
Den ganzen Whitelist-Hokuspokus könnte sich Google überhaupt schenken, weil man damit ja offensichtlich die root-Handys teilweise aussperren will, aber man das ganze eben genau auf diesen Geräten mit einem simplen Workaround umgehen kann.

1 Kommentare: