No, it's not a way to replace it. Card state `unknown` is a completely new state not used/existing in the past meaning that we don't know  certainly the card state (or card state error as commented earlier) and we must not perform any action on it. Checking for null values is still valid but allowing contact import while the card state is not ready (null) is wrong. mozMobileConnection.cardState reports (will do it once bug 837755 lands) not ready (null) for example while air plane mode is on.