【发布时间】:2016-12-20 03:23:51
【问题描述】:
registerGnssStatusCallback 是在 API 24 中引入的。现在 GpsStatus 已被弃用,但我们不能将新的 GpsStatus 用于 24 之前的 API。
现在呢?我们如何在旧项目中使用新的?
【问题讨论】:
标签: android android-location android-gps
registerGnssStatusCallback 是在 API 24 中引入的。现在 GpsStatus 已被弃用,但我们不能将新的 GpsStatus 用于 24 之前的 API。
现在呢?我们如何在旧项目中使用新的?
【问题讨论】:
标签: android android-location android-gps
我建议暂时使用旧电话。这仅在 API 24 中被弃用,甚至还没有正式发布。即使它一旦发布,在不久的将来也可能只会被极少数的设备使用(即大多数人在很长一段时间内仍然是旧版本的 Android)。此外,从最小版本 8 到最小版本 24 是一个很大的飞跃。
话虽如此,可以进行特定于版本的推理。请参阅以下文档:
https://developer.android.com/reference/android/os/Build.VERSION.html
https://developer.android.com/reference/android/os/Build.VERSION_CODES.html
这可能很明显,但需要注意的是,您不想编写如下代码:
if (version == x) {
...
}
else if (version == y) {
....
}
else if (version == z) {
...
}
我只是指出这一点,因为我确实看到人们这样做。 (在这种情况下,如果可能的话,最好使用某种策略/模板模式和工厂)。
【讨论】: