您现在的位置:

离线地图

为了节约流量,可以将某省市的离线地图下载到手机SD卡中,在没有网络连接的情况下也能自由使用地图服务。

目录为应用初始化设置的位置例如:

                    // mAppPath:存放离线地图的位置
                    String mAppPath = Environment.getExternalStorageDirectory().getPath()+"/navinfo/app";
                    NativeEnvParams params = new NativeEnvParams(mAppPath, appName, mDensityDpi, key, this);
                    NativeEnv.init(getApplicationContext(), params);
                

【Navinfo Navigation SDK for Android】地图的离线数据是在无网络下的数据应用,为用户带来流量的节省,降低使用成本。对离线数据商店进行了封装,实现了自动加载离线列表,数据下载,断点下载,升级更新,删除等功能。

示例如下:

                    // 初始化数据,添加数据加载回调
                    OfflineDataStoreManager.getInstance().initData(this);
                    // 数据加载回调
                    
                    @Override
                    public void onDataSuccess(DatastoreItem[] datastoreItems) {
                        // 数据加载成功
                        progressBar.setVisibility(View.GONE);
                        this.datastoreItems = datastoreItems;
                        if (datastoreItems != null) {
                            // 设置listView数据源
                            DownloadAdapter downloadAdapter = new DownloadAdapter(this, datastoreItems);
                            mListView.setAdapter(downloadAdapter);
                        }
                    }
                    
                    @Override
                    public void onDataFailure() {
                        // 数据加载失败
                        progressBar.setVisibility(View.GONE);
                        Toast.makeText(this, "refresh faile", Toast.LENGTH_SHORT).show();
                    }
                    
                    @Override
                    public void onDataCancle() {
                        // 数据加载取消
                        progressBar.setVisibility(View.GONE);
                        Toast.makeText(this, "refresh cancel", Toast.LENGTH_SHORT).show();
                    }
                

注:离线数据功能实现代码参考SDK Demo。

返回顶部