当前位置: 首页 > news >正文

营销型网站有哪些特点中国建设银行官网站周波

营销型网站有哪些特点,中国建设银行官网站周波,深圳宝安区网站建设公司,建设企业功能网站Android 百度离线地图(由apk文件转入手机内部存储) 最近做了一个小项目,需要使用百度地图,但是使用了VPN专线,不能连接外网,也就是说我不能使用百度地图自带的离线地图下载方式,因为从软件安装…

Android 百度离线地图(由apk文件转入手机内部存储)

最近做了一个小项目,需要使用百度地图,但是使用了VPN专线,不能连接外网,也就是说我不能使用百度地图自带的离线地图下载方式,因为从软件安装开始就是在无网状态下执行的,因此需要另外使用一种方法实现百度地图的展示。

首先换一种思路,我们现将手机连接网络下载百度地图离线包,将下载下来的百度地图离线文件找到,将这些离线包放进APP的目录下,在app里面写一段代码,在某一时刻将APP里的这些离线包写入手机内存,这样百度地图就可以使用手机内存中的离线地图包了。手机用的离线包是以 .dat 结尾的,有些方式下载下来不是 dat 结尾可能用不了,注意一下!!!

下载的百度离线地图包在文件管理下,Android/data/应用项目包/files/BaiduMapSDKNew/vmp 下,比如下载了几个是这个样子,把这几个问价放到APP项目assets文件夹下:
在这里插入图片描述
APP项目assets文件夹:
在这里插入图片描述
然后写一个类,作用主要是把assets文件夹下的文件全部写到手机内部存储,然后使用百度地图的时候他检测到没有网就会去查看手机内部有没有离线地图,如果有的话,就可以显示出来。但是百度地图会检测appkey的有效性,如果联网可以检测出来并且使用,但是没有网络这个appkey就没法检测,如果调试的话会报appkey无效的错误,因为没法验证,但是不影响百度地图离线包的使用。

package com.wjw.ceshi.util;import android.content.Context;import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;public class MapOffLine {public static void copy(Context context) {try {// 这个数组用来存放离线地图文件的名称String fileName[] = {"binzhou_235.dat","dezhou_372.dat",// 如果有其他的就加进来,因为是确定的所以说这样写尽管不合适,但是也行...};// 这个是百度地图在没有网络的时候读取离线文件的目录,也就是说我们要把APP assets文件夹下的百度离线地图包放到这个文件夹下。String path = context.getExternalFilesDir("/BaiduMapSDKNew/vmp").getPath();// 每个文件的路径,也是个数组String filepath[] = {path + "/" + fileName[0],path + "/" + fileName[1],// 也是,fileName数组有几个就写几个。。。};File file = new File(path);if (!file.exists()) { // 判断一下这个路径有没有,没有的话就创建一下file.mkdir();}// 循环我们的地图文件for (int i = 0; i < fileName.length; i++) {// 如果这个地图文件没有if (!(new File(filepath[i])).exists()) {// 如果手机内存没有这个文件就去创建一个文件new File(filepath[i]).createNewFile();// 一个流操作,把APP assets文件下对应的文件放进去,循环完成就OK了。InputStream is = context.getAssets().open(fileName[i]);FileOutputStream fos = new FileOutputStream(filepath[i]);byte[] buffer = new byte[8192];int count = 0;while ((count = is.read(buffer)) > 0) {fos.write(buffer, 0, count);}fos.close();is.close();}}} catch (Exception e) {e.printStackTrace();}}}

最好添加两个读写权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

这两个权限是操作SD卡读写的,不知道这里需不需要,写上把先。

OK。到这里基本上就完成了,只要在某个时刻把这个方法执行一下就可以了!

http://www.yayakq.cn/news/777012/

相关文章:

  • 保定网站建设公司排名小程序免费网站
  • 机关网站建设的请示手机端详情页
  • 网站建设汇报会html5 门户网站模版
  • 有什么网站帮做邀请函设计的河北省住房和城身建设厅网站
  • 宁波市网站排名优化杭州企业网站
  • 电商网店东莞关键词优化推广
  • 鄠邑区建设和住房保障局网站深圳贷款网站建设
  • 寺庙网站建设好玩的网页游戏排行榜2021
  • 雅虎网站提交入口网站建设设计视频
  • 大渡口区网站建设企业网站建设及运营现状分析
  • 建立网站所需的硬件和软件取消wordpress 注册邮箱验证
  • 北京南站是丰台站吗网站怎样免费推广
  • 怎样免费建立个人网站wordpress中文主题排行榜
  • 网站代运营做哪些建设一个视频网站己18
  • 网站的开发与维护有一个外国聊天网站 动画做的
  • 网站标题关键词描述深圳宝安区松岗
  • 网站建设方向论文提纲阿里云的网站建设花钱么
  • ppt的网站导航栏怎么做广州市建设企业网站报价
  • 网站防封链接怎么做写文章免费的软件
  • 深圳市做网站有哪些公司贵阳网站页面设计
  • 沧县官厅网站建设项目管理师pmp报考条件
  • 资产管理公司网站建设方案群晖nas 做网站
  • 云主机可以放多少网站wordpress挂载机制
  • 正规百度推广资阳优化团队平台
  • 微信商城和网站建设专业团队宣传语
  • 企业网站空间域名wordpress 劣势
  • 株洲网站seo优化价格13315全国征信系统
  • 景安服务器管理助手如何备份网站wordpress mysql5.5
  • 建站之星怎么弄相册百度账号怎么改名字
  • 做五金的有哪些外贸网站新手入门网站建设