代码之家  ›  专栏  ›  技术社区  ›  AhMaD AbUIeSa

codenameone本机映射脱机?

  •  1
  • AhMaD AbUIeSa  · 技术社区  · 7 年前

    我注意到,当我在codenameone中使用本机地图,并尝试更改相机位置时,地图变为空白,是否仍然可以在没有Internet连接的情况下使用本机地图功能?

    final String HTML_API_KEY = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
     final MapContainer cnt = new MapContainer(HTML_API_KEY);
    cnt.addMarker(EncodedImage.createFromImage(MarkerImg, false), new Coord(latitude, langitude), "", "", e3->{
    });
    Container root = LayeredLayout.encloseIn(
    BorderLayout.center(cnt)
    );
    mapForm.add(BorderLayout.CENTER, root);
    mapForm.revalidate();
    

    更新:

    使用离线方法时,我在iOS上遇到的异常:

    MBTilesProvider provider = null;
            try{
                if ( MBTilesProvider.isLoaded("xxxxx.cn1tiles") ){
                    provider = new MBTilesProvider("xxxxx.cn1tiles");
                } else {
                    provider = MBTilesProvider.create("xxxxx.cn1tiles",fetchResourceFile().getData("xxxxx.cn1tiles"));
                }
            }catch(Exception e){
                e.printStackTrace();
                new GlobalOperations().ShowDialog(null, "OffLine Map", "there was a problem with loading the map file "+e.getMessage());
                return;
            }
    
    java.lang.NullPointerException
        at ca_weblite_codename1_mapbox_MBTilesProvider.create:221
        at userclasses_StateMachine.beforeMap:5850
        at generated_StateMachineBase.beforeShow:5850
        at com_codename1_ui_util_UIBuilder.showForm:2518
        at com_codename1_ui_util_UIBuilder.showForm:2565
    

    感谢帮助使地图在没有互联网连接的情况下工作

    当做,

    1 回复  |  直到 7 年前
        1
  •  1
  •   Shai Almog    7 年前

    据我所知,谷歌本地地图不支持离线功能,尽管他们的应用程序对此有一些支持。您可以使用它,它不提供与本地地图相同级别的UX,但可以脱机工作: https://github.com/shannah/CN1OfflineMaps