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

北京做电商网站设计网站数据怎么备份

北京做电商网站设计,网站数据怎么备份,网站谷歌seo做哪些,做设计用哪个素材网站好引言 项目需求需要在谷歌地图#xff1a; 地图展示#xff0c;设备点聚合#xff0c;设备站点#xff0c;绘制点和区域等功能。 我只针对我涉及到的技术做一下总结#xff0c;希望能帮到开始接触谷歌地图的伙伴们。 集成步骤 1、在项目的modle的build.gradle中添加依赖如…引言 项目需求需要在谷歌地图 地图展示设备点聚合设备站点绘制点和区域等功能。 我只针对我涉及到的技术做一下总结希望能帮到开始接触谷歌地图的伙伴们。 集成步骤 1、在项目的modle的build.gradle中添加依赖如下 implementation com.google.android.gms:play-services-maps:12.0.1// 地图操作工具类添加标记等implementation com.google.maps.android:android-maps-utils:0.5 2、集成完了后需要展示地图这里由于谷歌地图是已经被屏蔽需要翻墙操作才能展示。 ①首先我们要注册一个谷歌账号 ②使用谷歌账号登录谷歌地图开发者平台登录网站https://cloud.google.com/maps-platform/?hlzh-CN点击控制台如图 点击控制进入控制台进行如下操作生成谷歌地图的appkey 点击API秘钥生成秘钥在生成的秘钥界面上我们点击秘钥限制设置成android 点击确定就生成了我们所需的appkey。 将生成的API密钥复制并粘贴到您的Android应用程序的相应位置通常在AndroidManifest.xml中的application标签内如下所示 application!-- 其他配置 --meta-dataandroid:namecom.google.android.geo.API_KEYandroid:valueYOUR_GOOGLE_MAPS_API_KEY/!-- 其他配置 -- /application 替换YOUR_GOOGLE_MAPS_API_KEY为您从Google Developers Console获得的API密钥。 请注意您需要为调试和发布版本获取不同的密钥并为每种版本使用正确的SHA-1证书指纹。 项目开发 地图展示 向应用中添加Google Map组件有两种基本的方式: 1、一种是利用MapFragmentFragment的子类内部集成GoogleMap 2、另一种是用MapViewView的子类内部集成GoogleMap。 一、MapFragment 1.地图展示分为两加载地图 一种是在activity中动态或者是静态加载我们的谷歌地图的fragment进行显示。 静态加载 首先说一下在activity中静态加载地图的fragment。核心代码如下 activity_main.xml ?xml version1.0 encodingutf-8? fragment xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:idid/mapandroid:namecom.google.android.gms.maps.SupportMapFragmentandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:contextcom.example.googlemapdemo.MapsMarkerActivity / class MapsMarkerActivity : AppCompatActivity() , OnMapReadyCallback {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)val mapFragment supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment?mapFragment!!.getMapAsync(this)}override fun onMapReady(map : GoogleMap?) {} } 这样一张谷歌地图就展示出来显示的原因是通过mapFragment.getMapAsync()方法映射注册回调地图监听因为谷歌地图被屏蔽了所以需要翻墙才能看到地图如果没有翻墙是空白一片并且android手机里面必须安装谷歌三件套否则也不能显示。 动态加载 布局 ?xml version1.0 encodingutf-8? fragment xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:toolshttp://schemas.android.com/toolsandroid:idid/my_containerandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:contextcom.example.googlemapdemo.MapsMarkerActivity / activity 代码 创建一个MapFragment对象并利用FragmentTransaction动态添加到指定的容器中 class MapsMarkerActivity : AppCompatActivity() , OnMapReadyCallback {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)// val mapFragment supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment? // mapFragment!!.getMapAsync(this)val fragmentManager supportFragmentManagerval mapFragment SupportMapFragment.newInstance()fragmentManager.beginTransaction().replace(R.id.map_container, mapFragment as Fragment ).commit()mapFragment.getMapAsync(this)}override fun onMapReady(map : GoogleMap?) {} } 二、MapView MapView是View的子类只需要在布局文件中引用com.google.android.gms.maps.MapView定义一个MapView然后在Activity初始化MapView与普通的TextView等组件用法类似。 xml: //layout文件中的定义com.google.android.gms.maps.MapViewandroid:idid/mymapandroid:layout_widthmatch_parentandroid:layout_heightmatch_parent/ activity : //Activity中的初始化myMap (MapView)findViewById(R.id.mymap);myMap.getMapAsync(this);//getMapAsync这个与MapFragment相同 需要特别注意的是MapView中生命周期的方法必须与Activity生命周期的方法同步即必须在Activity中的生命周期中调用MapView的生命周期函数。 Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//其他的一些初始化myMap.onCreate(savedInstanceState);}Overrideprotected void onResume() {super.onResume();myMap.onResume();}Overrideprotected void onPause() {super.onPause();myMap.onPause();}Overrideprotected void onDestroy() {super.onDestroy();myMap.onDestroy();}Overridepublic void onLowMemory() {super.onLowMemory();myMap.onLowMemory();}Overrideprotected void onSaveInstanceState(Bundle outState) {super.onSaveInstanceState(outState);myMap.onSaveInstanceState(outState);} onMapReady onMapReady()是一个回调方法用于在地图准备就绪后获取初始坐标。 当地图准备就绪时系统会调用该方法并传入一个GoogleMap对象作为参数开发者可以通过该对象进行地图相关的操作。 Overridepublic void onMapReady(GoogleMap googleMap) {mMap googleMap;// 获取当前位置的经纬度if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) ! PackageManager.PERMISSION_GRANTED) {// 请求权限ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, 1);} else {// 获取到位置权限后获取当前位置经纬度mMap.setMyLocationEnabled(true);LatLng latLng new LatLng(mMap.getMyLocation().getLatitude(), mMap.getMyLocation().getLongitude());mMap.addMarker(new MarkerOptions().position(latLng).title(当前位置));mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));}} 在onMapReady回调中我们首先检查定位权限如果已经授予我们就启用地图上的位置指示通过调用setMyLocationEnabled(true)然后可以获取当前的位置通过调用getMyLocation()并在地图上设置一个标记通过调用addMarker()以及移动相机到当前位置通过调用moveCamera()。如果没有定位权限我们请求权限并在权限被授予后执行上述操作。 三、组件的初始化 当需要初始化Map的一些状态时可以在xml属性中设置也可以在java代码中设置。    1.xml属性初始化      在fragment或者MapView的xml布局中都可以添加一些属性来初始化Map的状态。 fragment xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:maphttp://schemas.android.com/apk/res-autoandroid:namecom.google.android.gms.maps.SupportMapFragmentandroid:idid/mapandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentmap:cameraBearing112.5map:cameraTargetLat-33.796923map:cameraTargetLng150.922433map:cameraTilt30map:cameraZoom13map:mapTypenormalmap:uiCompassfalsemap:uiRotateGesturestruemap:uiScrollGesturesfalsemap:uiTiltGesturestruemap:uiZoomControlsfalsemap:uiZoomGesturestrue/ GoogleMapOptions options new GoogleMapOptions(); options.mapType(GoogleMap.MAP_TYPE_SATELLITE).compassEnabled(false).rotateGesturesEnabled(false).tiltGesturesEnabled(false); //在实例化一个MapFragment对象时 MapFragment.newInstance(GoogleMapOptions options); //或者MapView的构造函数中 MapView(Context, GoogleMapOptions)
http://www.dnsts.com.cn/news/119248.html

相关文章:

  • 广州网站制作公司 番禺淘宝网电脑版登录入口官网网页
  • 惠州网站建设一般多少钱网站动态logo怎么做
  • 网站怎么做商家定位房地产公司的网站建设方案
  • 重庆网站有哪些html做网站心得
  • 泉州网站设计哪家公司好佛山高明
  • 网站分为哪几种怎么做繁体字网站
  • 知名建设网站怎么有自己的网站
  • dedecms 网站名称标签大连网站制作网页
  • 建设上线网站公司网站建设哪个最好
  • 顺的网站建设要多少钱信誉好的天津网站建设
  • 免费隐私网站推广wordpress ajax 流量统计
  • 培训学校地址网站建设wordpress宠物模板
  • 汽车网站模板自架服务器建设网站
  • 郑州众诚建设监理有限公司网站网站开发 旅游
  • 网站建设制作教程生鲜电商网站建设
  • wordpress 广告 统计长春关键词优化平台
  • 档案信息网站建设工作经验百度咨询
  • 微网站制作公司微网站开发建设
  • 科学城做网站公司大学帮学校做网站
  • 柳州网站建设找哪家企业门户网站案例
  • 网站开发工程师专业好不好绿植网站怎么做
  • 网站开发空间小wordpress导航分类插件
  • 网站建设怎么找客源关于域名和主机论坛的网站
  • 苏州正规网站建设概况在线购物网站设计
  • 营销型网站特征自做网站教程
  • 潍坊米搜网站建设淘宝客网站开发上架
  • 免费网站代理怀来建设银行网站
  • jsp做的网站源码专业单位网站开发
  • 伊春市住房和城乡建设局网站在站点上新建网页
  • 众筹网站建设费用百度网站收录提交