Android仿微信地图定位和位置选择(上)

安卓应用开发学习:通过腾讯地图SDK实现定位功能 我是参照《 Android App 开发进阶与项目实战》书中9.3.2 显示地图面板 的内容,创建的Activity可以在腾讯地图上显示手机所在的位置,并能在普通地图和卫星地图之间切换,还可以显示交通情况。我添加的权限是参考了 《 Android App 开发进阶与项目实战》中的内容,官网给的添加权限(见下方)和我添加的有些不同,但我这边能正常定位,说明有些权限应该是可由可无的。”功能后,这两天,我又参照这书中的内容,实现了通过腾讯地图的Android定位SDK实现定位的功能,并有所扩展。 阅读详情

一、地图集成

        集成腾讯地图SDK,https://lbs.qq.com/,申请AppKey。

1、dependencies

implementation 'com.tencent.map.geolocation:TencentLocationSdk-openplatform:7.2.6'
implementation 'com.tencent.map:tencent-map-vector-sdk:4.3.4'

2、AndroidManifest.xml

<application
	<meta-data
        android:name="TencentMapSDK"
        android:value="*****-*****-*****-*****-*****-*****"/>
</application>

3、权限

<!--腾讯地图 SDK 要求的权限(开始)-->
<!--访问网络获取地图服务-->
<uses-permission android:name="android.permission.INTERNET"/>
<!--检查网络可用性-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<!-- 访问WiFi状态 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--需要外部存储写权限用于保存地图缓存-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!--获取 device id 辨别设备-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<!--腾讯地图 SDK 要求的权限(结束)-->

注意:这块除了AndroidManifest.xml权限之外还需要动态定义以下权限:

Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_BACKGROUND_LOCATION,
Manifest.permission.READ_PHONE_STATE

另外还需要打开手机定位功能:

public static void showSystemGPS(Activity activity) {
    if (!isOpenGPS()) {
        Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
        WeDaActivity a = (WeDaActivity) activity;
        a.startActivityForResult(intent, ConstantUtils.REQUEST_SYSTEM_OPEN_GPS, (requestCode, resultCode, data) -> {
            if (isOpenGPS()) {
                UIUtils.showToast(activity, "GPS打开成功");
            } else {
                UIUtils.showToast(activity, "GPS打开失败");
            }
        });
    } else {
        UIUtils.showToast(activity, "GPS已经打开了");
    }
}

public static boolean isOpenGPS() {
    LocationManager locationManager
            = (LocationManager) ApplicationUtils.getContext().getSystemService(Context.LOCATION_SERVICE);
    return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
}

4、混淆

-keep class com.tencent.tencentmap.**{*;}
-keep class com.tencent.map.**{*;}
-keep class com.tencent.beacontmap.**{*;}
-keep class navsns.**{*;}
-dontwarn com.qq.**
-dontwarn com.tencent.**

二、定义视图布局

1、地图控制布局

<com.tencent.tencentmap.mapsdk.maps.MapView
    android:id="@+id/mapview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />

2、搜索框控件布局

<EditText
    android:id="@+id/et_search"
    android:layout_width="match_parent"
    android:layout_height="33dp"
    android:layout_marginLeft="15dp"
    android:layout_marginTop="10dp"
    android:layout_marginRight="15dp"
    android:layout_marginBottom="10dp"
    android:layout_toLeftOf="@+id/tv_cancel_search"
    android:background="@drawable/shape_search_map"
    android:focusable="false"
    android:focusableInTouchMode="true"
    android:gravity="center"
    android:hint="@string/map_search_hint"
    android:imeOptions="actionSearch"
    android:inputType="text"
    android:paddingLeft="10dp"
    android:singleLine="true"
    android:textColor="@color/c_181818"
    android:textSize="15sp" />

3、进度条控件布局

<ProgressBar
    android:id="@+id/pb_progress"
    style="@android:style/Widget.Holo.ProgressBar"
    android:layout_width="70dp"
    android:layout_height="70dp"
    android:layout_gravity="center"
    android:visibility="visible" />

 三、绑定地图生命周期

    @Override
    public void onDestroy() {
        mapView.onDestroy();
        super.onDestroy();
        tencentMap.removeTencentMapGestureListener(mapGestureListener);
    }

    @Override
    public void onPause() {
        mapView.onPause();
        super.onPause();
    }

    @Override
    public void onResume() {
        mapView.onResume();
        super.onResume();
    }

    @Override
    public void onStop() {
        mapView.onStop();
        super.onStop();
    }

    @Override
    public void onStart() {
        mapView.onStart();
        super.onStart();
    }

四、请求定位

1、创建定位请求对象

mapView = view.findViewById(R.id.mapview);
tencentMap = mapView.getMap();

//创建地图请求对象
locationManager = TencentLocationManager.getInstance(context);
locationRequest = TencentLocationRequest.create();
locationRequest.setInterval(3000);

        setInterval:用于设置连续定位的请求的间隔时间,这里设置3000毫秒回调一次。如果只需要定位一次,则调用locationManager.removeUpdates(this);取消连续定位回调。

2、请求定位信息

private void requestLocationUpdates() {
    int error = locationManager.requestLocationUpdates(
            locationRequest, LocationMapFragment.this);
    String des = "";
    switch (error) {
        case 0:
            des = "成功注册监听器";
            break;
        case 1:
            des = "设备缺少使用腾讯定位服务需要的基本条件";
            break;
        case 2:
            des = "manifest 中配置的 key 不正确";
            break;
        case 3:
            des = "自动加载libtencentloc.so失败";
            break;

        default:
            break;
    }
    LogUtils.d(des);
}

五、注册回调

1、实现地图相关接口

  • LocationSource:页面显示和关闭的回调
  • TencentLocationListener:连续定位获取位置信息的回调

(1)LocationSource

@Override
public void activate(OnLocationChangedListener arg0) {
    mChangedListener = arg0;
    //页面打开,请求定位信息
    requestLocationUpdates();
}

@Override
public void deactivate() {
    //页面移出,清除位置回调
    locationManager.removeUpdates(this);
    locationManager = null;
    locationRequest = null;
    mChangedListener = null;
}

(2)TencentLocationListener

@Override
public void onLocationChanged(TencentLocation tencentLocation, int arg1, String arg2) {
    if (arg1 == TencentLocation.ERROR_OK && mChangedListener != null) { 
        Location location = new Location(tencentLocation.getProvider());
        //设置经纬度
        location.setLatitude(tencentLocation.getLatitude());
        location.setLongitude(tencentLocation.getLongitude());
        //设置精度,这个值会被设置为定位点上表示精度的圆形半径
        location.setAccuracy(tencentLocation.getAccuracy());
        //设置定位标的旋转角度,注意 tencentLocation.getBearing() 只有在 gps 时才有可能获取
        location.setBearing((float) tencentLocation.getBearing());
        //将位置信息返回给地图
        mChangedListener.onLocationChanged(location);
        //移出回调,只请求一次,如果需要连续定位,删除这行代码
        locationManager.removeUpdates(this);
    } else {
        LogUtils.d("onLocationChanged error");
    }
}

@Override
public void onStatusUpdate(String s, int i, String s1) {
    String desc = "";
    switch (i) {
        case TencentLocationListener.STATUS_DENIED:
            desc = "权限被禁止";
            break;
        case TencentLocationListener.STATUS_DISABLED:
            desc = "模块关闭";
            break;
        case TencentLocationListener.STATUS_ENABLED:
            desc = "模块开启";
            break;
        case TencentLocationListener.STATUS_GPS_AVAILABLE:
            desc = "GPS可用,代表GPS开关打开,且搜星定位成功";
            break;
        case TencentLocationListener.STATUS_GPS_UNAVAILABLE:
            desc = "GPS不可用,可能 gps 权限被禁止或无法成功搜星";
            break;
        case TencentLocationListener.STATUS_LOCATION_SWITCH_OFF:
            desc = "位置信息开关关闭,在android M系统中,此时禁止进行wifi扫描";
            break;

        default:
            break;
    }
    LogUtils.d("location status:" + s + ", " + s1 + " " + desc);
}

4、注册相关监听

//注册手势事件
tencentMap.addTencentMapGestureListener(mapGestureListener);
tencentMap.setLocationSource(this);
tencentMap.setMyLocationEnabled(true);
tencentMap.getUiSettings().setRotateGesturesEnabled(false);
//定位结果回调
tencentMap.setOnMyLocationChangeListener(onMyLocationChangeListener);

private TencentMap.OnMyLocationChangeListener onMyLocationChangeListener = new TencentMap.OnMyLocationChangeListener() {
    @Override
    public void onMyLocationChange(Location location) {
        LogUtils.d("内置定位标点击回调");
        if (!TextUtils.isEmpty(longitude) && !TextUtils.isEmpty(latitude)) {
            //传递的定位数据源
            Double lo = StringUtils.getDouble(longitude);
            Double la = StringUtils.getDouble(latitude);
            position = new LatLng(la, lo);
            longitude = null;
            latitude = null;
        } else {
            //GPS定位源
            position = new LatLng(location.getLatitude(), location.getLongitude());
            page = 1;
        }
        moveMap(position);
        presenter.setOriginLaLng(position);
        presenter.getNearAddress(position, page, fromMarker);
    }
};

        setOnMyLocationChangeListener用户获取定位回调的结果,在注册TencentLocationListener接口后,调用requestLocationUpdates请求位置信息,触发onLocationChanged回调,在onLocationChanged中将事件通过mChangedListener.onLocationChanged传递给setOnMyLocationChangeListener回调。

        这块有两个参数longitude、latitude是用户设置的坐标信息,如果用户传递了位置,则显示地图的中心点在该位置,否则设置当前位置的信息。

六、移动地图到中心点

private void moveMap(LatLng latLng) {
    //latLng中心点的坐标信息,15表示显示地图的缩放比例
    CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, 15);
    tencentMap.animateCamera(cameraUpdate, new TencentMap.CancelableCallback() {
        @Override
        public void onFinish() {
            
        }

        @Override
        public void onCancel() {

        }
    });
}

七、设置Marker

        marker的设置可以自定义,也可采用系统的。

private void setMarker(LatLng latLng) {
    //设置自定义marker样式
//        MarkerOptions markerOptions = new MarkerOptions(latLng);
//        markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_location_pin));
//        markerOptions.visible(true);
//        marker = tencentMap.addMarker(markerOptions);
//        marker.setFixingPointEnable(true);

    //配置marker样式
    //HUE_BLUE:设置marker颜色为蓝色 
    MarkerOptions options = new MarkerOptions()
            .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE))
            .position(latLng);
    marker = tencentMap.addMarker(options);
    //设置marker固定到中心点
    LatLng target = tencentMap.getCameraPosition().target;
    //坐标系转换,坐标信息转换为屏幕的中心点信息
    markerPoint = tencentMap.getProjection().toScreenLocation(target);
    marker.setFixingPointEnable(true);
    marker.setFixingPoint(markerPoint.x, markerPoint.y);
}

        注意:marker的设置需要在位置移动之后设置,因为moveMap是带有动画的异步操作,如果moveMap没执行完毕设置marker,则设置的marker无效,不显示;如果定位后手势缩放地图,则在地图上会出现多个marker。

        由于内容比较长,地图的常用基本设置就到这里结束,下篇文章介绍剩余的内容。

Android基于高德地图实现多人实时共享位置 自开发上一款智慧旅游产品后,发现一个很有意义而且很实用的功能,就是模仿微信的位置共享,可以看到对方的位置,一直想模仿做出这样的效果.最近闲下来之后终于实现了.下面就把我的实现过程和心得分享给大家. 阅读详情

相关推荐

Android高德地图poi检索仿微信发送位置

最近项目需求把发送定位模块改成类似微信发送位置给好友的效果,我使用了高德地图实现了一个demo,效果图如下:从主界面中我们可以看到中心标记上面显示的就是我们定位的地址,下面是一个listview列表,第一条item的数据就是我们定位得到的地址,下面其余的都是我们根据定位得到的经纬度通过poi周边搜索得到的地址。我们进行了如下操作: 我们点击列表的item,中心标记会移动到该item对象的地址上面去。

tijjyire的博客 5364

Android仿微信地图定位和位置选择(下)

图 上篇文章介绍了基本的常用功能,这边文件介绍剩余的位置信息更新、搜索、手势绑定和显示等内容。 一、获取坐标系附近的信息 二、设置附近的信息到列表 三、手势滑动绑定到列表数据 四、搜索功能实现 五、搜索指定的地址 六、地址信息更新到列表 ...

一杯清泉 1923

Android最新版高德地图poi检索仿微信发送位置

好久一段时间没有写博客了,陆续会补上最近项目中用到的。由于项目需要一个定位的功能,参考下市面上现有的地图SDK,觉得高德地图不错,本项目中用的是高德地图定位。首先演示下效果: 需求分析: 从gif当中,我们看到,大概可以分为这么几个行为: 1. 进入页面,产生两个标记点,周围地点列表。 两个标记点:一个是 固定不变 的 当前位置的定位圆形标记;一个是 可移动 的 红色标记,并且,会根据

老子灬仗贱走天涯的博客 2786

Android 腾讯地图 选点定位,仿微信发送位置

效果图: 不需要集成定位、地图,然后标记 回调等繁琐的操作,你只需要一个webview,使用腾讯地图的地图选点组件即可。 申请key 接入指引 使用地图选点组件 调用方式一: 通过iframe内嵌调用,地图选点组件的页面会根据开发者设置的iframe宽高自适应。 调用方式二: 通过页面跳转的方式调用该组件的时候,开发者需要设置backurl参数,用户点击选中的位置点后,页面跳转至开发者...

yechaoa 8093

uniapp [全端兼容] - 实现仿微信聊天发送位置信息功能,uni-app项目实现发送位置的地图交互效果示例,用户通过选择位置或搜索地点确定后,对方点击也可以查看位置及导航等(高德地图+百度地图)

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,uniapp模仿微信实现发送位置消息,解决滚动页面地图层级冲突,uniapp有没有内置的类似于微信发送位置的组件,uniApp中实现微信式发送位置消息,uniApp高德地图,uniapp百度地图,uniapp如何实现位置信息的发送和展示,map地图组件,uni-app移动端仿微信发送位置的地图交互,UNI-APP仿微信发送位置功能,发送位置后对方可以查看和导航到该位置,获取当前定位,选择位置,搜索位置

🏆 前端领域优质创作者 7563

实现仿百度外卖地图拖动定位功能的Android实践指南

百度地图API是一套为开发者提供的接口集合,通过这些接口,可以在移动应用或网页中嵌入地图、获取位置信息、路径规划等功能。API遵循RESTful设计原则,易于理解和使用。除了选择百度地图预设的地图类型和风格外,开发者还可以通过修改地图图层的样式来创建个性化的地图主题。这可以通过修改地图的CSS样式或使用百度地图提供的对象来实现。// 自定义地图样式enableMapClick: false, // 禁用地图点击事件。

weixin_29155599的博客 1344

Android百度地图仿微信发送位置

先上图 前提:有百度地图账号并配置了相关环境,可以参考百度地图开发者文档并下载so和jar 代码有相对应的注释,关键的就是百度地图移动版开发密钥、正确填写SHA1 和 程序包名,这将影响百度地图的功能使用 主要功能(参照微信发送定位): 1.定位所在位置并且展示周边POI(建筑物等信息); 2.拖拽地图完成,返回中心覆盖物所处位置周边的POI信息; 3.支持关键词等搜索,每次搜索完成,中央覆盖物移动到第一条POI信息的相应位置; 4.点击定位的图标,中央覆盖物回到所定位的位置; 5.点击下边列表的某条数

lywfmt的博客 2069

Android-Android仿微信发送位置

Android仿微信发送位置

微信端H5使用百度地图定位获取当前位置安卓定位不准

微信端H5使用百度地图定位获取当前位置安卓定位不准的问题解决如下: 使用微信端定位,签名方法看微信接口文档: <script type="text/javascript"> $.ajax({ type : "post", url : "../user/sign.vc", data : { "url" : location.href.split('#')[0] }...

小灰灰的博客 6748

android全国地区选择

本地json文件集合,实现android全国地区三级省市区选择。

Word多级标题出现黑块的解决思路(word 数字必须介于1-1638之间)

遇到多级目录出现黑块问题,看到一篇博客完美解决,在此记录。

AI_Optimization的博客 3714

android 微信地址选择,安卓微信位置实时修改

自从微信推出了位置共享的功能以后,随时随地报告亲人自己的行踪似乎变得很容易,但是有时候由于某些原因,我们可以设置一些虚拟位置信息,让自己的行踪不再被人掌控,让其真正掌控在自己手中,具体的操作流程欢迎大家速来围观我的经验啦。工具/原料微信应用软件天下游应用软件方法/步骤首先,请大家打开安卓系统中的设置应用,然后在手机设置选项中点击进入“其他高级设置”,进入手机系统高级设置菜单项目。在手机系统高级设置...

weixin_32001191的博客 6735

5张图,搞懂三方支付机构的“备付金账户”体系

本文将详细解析第三方支付机构各类备付金账户的功能定位、所承载的支付业务处理流程以及日常管理。

银行信息系统应用架构详解 2140

Android基于高德地图poi的仿微信获取位置

Android基于高德地图poi的仿微信获取位置 理性选择,适度copy GitHub地址: AMapDemo in GitHub 1.打开页面自动定位,同时搜索周边所有poi 2.点击搜索按钮,输入关键子,获取关键字搜索结果 3。选取listview中的一项即可定位到该位置,或者获取任何消息 4.代码有点乱,这两天把代码整理完就上传上来 ...

哎!小本本上八卦羞答答,人生太复杂... 6198

使用STM输出互补SPWM波(三相各差120°)

使用STM32输出SPWM波形(三相各差120°)

hello011102的博客 7372

开源DIY龙门架:从零构建可编程运动控制平台

运动控制是自动化与机器人技术的核心基础,它通过精确指令驱动执行机构,实现物体的定位与轨迹规划。其原理通常涉及控制器、驱动器、电机与传动机构的协同工作,核心价值在于将数字指令转化为精准的物理运动,从而解放人力并提升作业一致性。在工业自动化、桌面制造(如3D打印、激光雕刻)及教育机器人等领域应用广泛。本文聚焦于一个具体的工程实践案例:使用**铝型材**、**3D打印**零件、Arduino控制器及步进电机,从机械结构设计、电路连接到代码编写,手把手教你打造一个模块化、可扩展的开源龙门架系统。该系统不仅成本可控,

weixin_33168937的博客 613

android仿微信发送位置,Android仿微信发送位置-百度地图

【实例简介】【实例截图】【核心代码】package com.chenxuxu.baiduwechatposition;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.widget.Button;impo...

weixin_30745053的博客 614

FCL碰撞检测库在Windows下的编译与配置(MinGW+CMake)

本文详细介绍了在Windows系统下使用MinGW和CMake编译配置FCL碰撞检测库的完整流程。内容涵盖MinGW-w64、CMake的安装与环境配置,关键依赖库Eigen和libccd的安装,以及FCL源码的编译、安装与实战测试。重点解析了CMake配置命令中的关键参数与常见错误解决方案,旨在帮助开发者高效完成FCL在Windows平台的部署,适用于机器人、游戏物理引擎等需要精确碰撞检测的开发场景。

sunny的博客 480

高德地图,仿微信周边位置poi搜索

高德地图,仿微信周边位置poi搜索 首先要申请一个高德地图开发者账号,建立你的项目,得到key 高德地图官方文档都有介绍,具体可去配置  http://lbs.amap.com/api/android-sdk/guide/create-project/dev-attention 在AndroidManifest中添加一些权限, 把你申请的项目的ke

fpf1993的博客 4669

vesta软件_分子动力学计算实战:利用 OVITO 软件找弗伦克尔缺陷和位错环分析

今天继续和大家分享这篇纯分子动力学(MD)的 Nat. Comm. 文章(DOI:10.1038/s41467-018-07102-3)。上期推文(从一篇 Nat. Comm. 学习经典分子动力学基本知识和相关软件基本操作 (一)),我们借用该文章的 fig.1 简单介绍了如何用文中所提到的 LAMMPS 软件来实现材料中级联碰撞过程。但是,想完整的展示类似该文章的 fig.1,单纯利用...

weixin_39524842的博客 5981

基于知识图谱的智能工作流引擎

随着大数据和人工智能技术的快速发展,企业和组织对数据的依赖程度日益增加。为了更好地管理和利用这些数据,知识图谱逐渐成为一种重要的工具。知识图谱不仅能够以结构化的方式表示复杂的知识,而且能够通过推理和查询提供深层次的信息。然而,如何将知识图谱应用于实际业务场景中,尤其是如何构建智能工作流引擎,仍然是一个具有挑战性的问题。智能工作流引擎是一种能够自动化执行复杂业务流程的系统,它可以通过对业务规则和数据的分析,自动生成和优化工作流,从而提高工作效率和准确性。

AI天才研究院 1869

Android 仿微信发送坐标,Android最新版高德地圖poi檢索仿微信發送位置

好久一段時間沒有寫博客了,陸續會補上最近項目中用到的。由於項目需要一個定位的功能,參考下市面上現有的地圖SDK,覺得高德地圖不錯,本項目中用的是高德地圖定位。首先演示下效果: 需求分析:從gif當中,我們看到,大概可以分為這么幾個行為:1. 進入頁面,產生兩個標記點,周圍地點列表。兩個標記點:一個是 固定不變 的 當前位置的定位圓形標記;一個是 可移動 的 紅色標記,並且,會根據當前經緯度改變位置...

weixin_42388716的博客 512

C# 工业视觉性能极致优化:多线程推理池 + 对象复用 + 批量检测,速度提升 10 倍实战

set;} // 输入图像set;} // 异步返回结果set;} // 用于监控延迟性能优化不是魔法,而是对资源生命周期的精细管理和对硬件特性的充分利用。多线程池解决了 CPU/GPU 闲置问题。对象池解决了 GC 停顿问题。零拷贝解决了总线带宽瓶颈。严格的 Dispose解决了内存泄漏问题。这套架构已在多个高速锂电、3C 电子检测产线落地,轻松应对 200ms 甚至 50ms 的严苛节拍。记住,在工业领域,稳定性与速度同等重要。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 300

android 微信地图定位失败,微信端H5使用百度地图定位获取当前位置安卓定位不准...

微信端H5使用百度地图定位获取当前位置安卓定位不准的问题解决如下:使用微信端定位,签名方法看微信接口文档:`传入坐标实现公交导航function getMap(pointLng,pointLat,site) {wx.getLocation({type: 'wgs84',success: function (res) {var latitude = res.latitude; // 纬度,浮点数,范...

weixin_35457966的博客 1203

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

uniapp开发APP和微信小程序——使用高德实现定位

在uniapp官网中明确说了可以使用高德地图来实现APP和微信小程序的定位。 在dcloud社区里大佬已经给出了实现方法(链接:https://ask.dcloud.net.cn/article/35070), 百度的其他博客也是照搬的这里面的内容,可是,如果对于一个新手来说,具体的步骤还是不会操作,所以我来一步步的操作一下。 首先在高德开放平台,注册账号并且申请相关的 key 等信息; 首先在高德开放平台注册账号,如图创建应用。 然后分别申请安卓和微信小程序的key 安卓key:key名称

奋斗的新丁 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【uniapp】uniapp使用高德地图定位打包成安卓app的一些记录,比如打包后定位失效、

uniapp打包成安卓app中的高德地图踩坑实践 uniapp使用高德地图打包成安卓app

qq_51055690的博客 9476

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

上一篇: x264和fdk-aac的编译和FFmpeg的链接
下一篇: Android仿微信地图定位和位置选择(下)
一杯清泉
博客等级 码龄11年 314粉丝 210原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值