2016-11-03 59 views
0

我不想讓我的用戶在模擬器上運行我的應用程序。Android - 如何檢測在Nox模擬器上運行的應用程序?

我成功地檢測到任何其他仿真器,除了Nox應用播放器

檢查我的解決方案在這裏:How can I detect when an Android application is running in the emulator?

氮氧化物仿真器具有相同的設備數據作爲實際的電話,他們甚至模仿的DeviceID(IMEI號,它不是000000000000和堅果無效),以及網絡運營商的名字。看起來每次我推出Nox應用播放器時,它都會隨機分配所有的Build.PRODUCT和類似的字段。

雖然有規律可循的,某些字段有不兼容的名稱,如製造商是索尼,但是設備型號是HTC ...

+0

你是如何解決你的問題的? – Daryn

+0

@Daryn,我沒有,到目前爲止我還沒有找到解決方案。 – lxknvlk

+0

@lxknvlk你找到解決方案嗎? –

回答

0

檢查BASEBAND版本操作系統的設備。在Nox播放器的情況下,基帶版本爲空。在Android設備中,您將獲得BASEBAND版本值。

由於SDK Lvl 14您應該使用Build.getRadioVersion()以檢索基帶版本。

+0

這樣可靠嗎? – lxknvlk

+0

對於大多數的Android設備是可靠的。但檢查按您的要求..我已經在多個設備和模擬器上進行測試。這似乎足以滿足我的要求。讓我知道這是否適合你 –

相關問題