对于已移除SIM卡的GSM Android设备,有没有办法检测设备先前在哪个运营商上运行,或者可能出售?我最关心的是检测具有相同Build.Device并由多个不同运营商/运营商销售的手机。
运营商/运营商检测的大多数方法似乎依赖于当前连接到网络或存在SIM的方法。
答案 0 :(得分:4)
检查Build.FINGERPRINT
字符串。它可能不是100%可靠,但大多数运营商将其名称放在字符串的第一部分:$(PRODUCT_BRAND)
。
http://developer.android.com/reference/android/os/Build.html
FINGERPRINT格式如下:
$(PRODUCT_BRAND)/$(PRODUCT_NAME)/$(PRODUCT_DEVICE)/$(TARGET_BOOTLOADER_BOARD_NAME):$(PLATFORM_VERSION)/$(BUILD_ID)/$(BUILD_NUMBER):$(TARGET_BUILD_VARIANT)/$(BUILD_VERSION_TAGS)
其中,$(BUILD_ID)
特定于运营商/构建/区域。
当然,这些都不适用于无品牌设备或具有自定义ROM的设备,因为它们不受任何没有SIM卡的运营商的约束。对于这两种情况,我认为除了检查SIM卡之外无法确定任何其他内容,只需,因为无需检查。