set getDeviceId to abstract