Ich wollte Funktionen in Verbindung mit CALL und SMS in meiner Anwendung deaktivieren, je nachdem ob SIM-Hardware vorhanden ist oder nicht. Ein Anfänger Ansatz wird nun den Telefon-Typ überprüfen mit:
%Vor%Wenn es wahr ist, wird es unterstützt.
Alles war gut, bis ich auf das Sony Tablet S stieß, das eine SIM-Unterstützung nur für Daten und Messaging bietet. Keine Sprachunterstützung. Für dieses Gerät muss ich nur die CALL-Funktion deaktivieren, aber mit der SMS-Unterstützung fortfahren. Sony Tablet gibt TelephonyManager.PHONE_TYPE_NONE zurück, so dass ich die oben genannten Methoden nicht verwenden kann. Auch,
%Vor%gibt 1 zurück, d. h. SIM_STATE_ABSENT, was auch im Fall von HTC FLYER derselbe ist, der keine Unterstützung für die SIM-Hardware selbst hat.
Gibt es also eine Möglichkeit, wie ich herausfinden kann, ob SIM-Hardware vorhanden ist (unabhängig davon, ob die SIM-Karte eingelegt ist oder nicht)?