我使用graphhopper进行离线地图和路由,它起作用了。几个月后,我启动了该应用程序,它崩溃并显示错误:编码器车在版本 1 中使用,但当前版本是 2。我不知道我是否做了什么导致这种情况,或者有什么东西被更新了,无论哪种方式我都不知道解决方案。
在graphhopper github页面上,提交了相同的问题,但没有答案。
错误导致我在编码管理器中出现这一行.class:
PMap configuration = new PMap(entryVal);
FlagEncoder fe = factory.createFlagEncoder(entry, configuration);
if (configuration.has("version") && fe.getVersion() !=
configuration.getInt("version", -1)) {
throw new IllegalArgumentException("Encoder " + entry + " was used in
version " + configuration.getLong("version", -1L) + ", but current
version is " + fe.getVersion());
}
问题是我们在没有更新图形数据的情况下发布了新的APK 0.12。这是必要的,因为存在不兼容的更改。我们将在接下来的几个小时内这样做。作为解决方法,您可以尝试 0.11。
https://github.com/graphhopper/graphhopper/#get-started
更新:数据现已更新为 0.12。如果您之前安装过 0.12 apk,也请重新安装它,因为我们在发布它时犯了一个错误。